Skip to content
Snippets Groups Projects
Commit a8c3a697 authored by Paulus Kruger's avatar Paulus Kruger
Browse files

I2C using python periphery

parent 70a6ff23
No related branches found
No related tags found
1 merge request!10Pypcc2
#import pylibi2c;
#import
from periphery import I2C;
import time
import logging
#bus = pylibi2c.I2CDevice('/dev/i2c-1'
#read=0: write to register
#read=1: read from register
#read=2: write to register (common in group)
#read=3: wait ms second
I2Ccounter=0;
i2c1=I2C("/dev/i2c-1")
def I2C1server(addr,data,reg=None,read=0):
# print("I2C",addr,reg,data,read)
try:
if read==3:
time.sleep(data[0]/1000.)
return True
logging.debug(str(("I2C",addr,reg,data,read)))
if read==1:
if not(reg is None): i2c1.transfer(addr,[I2C.Message(reg)])
msgs=[I2C.Message(data,read=True)]
i2c1.transfer(addr,msgs)
data[:]=msgs[0].data
else:
if reg is None:
msgs=[I2C.Message(data)]
else:
msgs=[I2C.Message(reg),I2C.Message(data)]
i2c1.transfer(addr,msgs)
return True;
except:
return False;
i2c4=I2C("/dev/i2c-1")
def I2C1server(addr,data,reg=None,read=0):
# print("I2C",addr,reg,data,read)
try:
if read==3:
time.sleep(data[0]/1000.)
return True
logging.debug(str(("I2C",addr,reg,data,read)))
if read==1:
if not(reg is None): i2c4.transfer(addr,[I2C.Message(reg)])
msgs=[I2C.Message(data,read=True)]
i2c4.transfer(addr,msgs)
data[:]=msgs[0].data
else:
if reg is None:
msgs=[I2C.Message(data)]
else:
msgs=[I2C.Message(reg),I2C.Message(data)]
i2c4.transfer(addr,msgs)
return True;
except:
return False;
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment