}
class Decoder(srd.Decoder):
- api_version = 1
+ api_version = 2
id = 'lm75'
name = 'LM75'
longname = 'National LM75'
inputs = ['i2c']
outputs = ['lm75']
options = (
- {'id': 'sensor', 'desc': 'Sensor type', 'default': 'lm75'},
- {'id': 'resolution', 'desc': 'Resolution', 'default': 9,
+ {'id': 'sensor', 'desc': 'Sensor type', 'default': 'lm75',
+ 'values': ('lm75',)},
+ {'id': 'resolution', 'desc': 'Resolution (bits)', 'default': 9,
'values': (9, 10, 11, 12)},
)
annotations = (
self.databytes = []
def start(self):
- # self.out_python = self.register(srd.OUTPUT_PYTHON)
self.out_ann = self.register(srd.OUTPUT_ANN)
def putx(self, data):
def putb(self, data):
# Helper for annotations which span a block of I²C packets.
- self.put(self.block_start, self.block_end, self.out_ann, data)
+ self.put(self.ss_block, self.es_block, self.out_ann, data)
def warn_upon_invalid_slave(self, addr):
# LM75 and compatible devices have a 7-bit I²C slave address where
def handle_temperature_reg(self, b, s, rw):
# Common helper for the temperature/T_HYST/T_OS registers.
if len(self.databytes) == 0:
- self.block_start = self.ss
+ self.ss_block = self.ss
self.databytes.append(b)
return
self.databytes.append(b)
- self.block_end = self.es
+ self.es_block = self.es
self.output_temperature(s, rw)
self.databytes = []
else:
# self.putx([0, ['Ignoring: %s (data=%s)' % (cmd, databyte)]])
pass
- else:
- raise Exception('Invalid state: %s' % self.state)
-