def __init__(self, name, sda=None, scl=None,
addr=8, ignore_case=False, report_change=True):
not_found = "i2c device not found"
self.addr = addr
self.ownaddr = addr
self.count = None
self.current_value = ""
self.suspend_start = None
self.suspend_time = 0
self.msgq = None
if type(sda) is I2C:
i2c = sda
else:
i2c = I2C(sda=sda, scl=scl)
try:
l = i2c.scan() # see, if you can find the dive with respective addr
except OSError:
print(not_found)
else:
if addr in l:
self.present = True
Device.__init__(self, name, i2c, setters={"set":self.evaluate},
ignore_case=ignore_case,report_change=report_change)
self.getters[""]=self.value
else:
print(not_found)
评论列表
文章目录