import sigrokdecode as srd
class Decoder(srd.Decoder):
- api_version = 2
+ api_version = 3
id = 'tca6408a'
name = 'TI TCA6408A'
longname = 'Texas Instruments TCA6408A'
desc = 'Texas Instruments TCA6408A 8-bit I²C I/O expander.'
license = 'gplv2+'
inputs = ['i2c']
- outputs = ['tca6408a']
+ outputs = []
+ tags = ['Embedded/industrial', 'IC']
annotations = (
('register', 'Register type'),
('value', 'Register value'),
- ('warnings', 'Warning messages'),
+ ('warning', 'Warning'),
)
annotation_rows = (
('regs', 'Registers', (0, 1)),
)
def __init__(self):
+ self.reset()
+
+ def reset(self):
self.state = 'IDLE'
self.chip = -1
return
self.state = 'GET SLAVE ADDR'
elif self.state == 'GET SLAVE ADDR':
- self.chip = databyte
+ self.chip = databyte
self.state = 'GET REG ADDR'
elif self.state == 'GET REG ADDR':
# Wait for a data write (master selects the slave register).