X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=decoders%2Fi2c.py;h=11ee9b5fb83ed191406293299590a88e986faaac;hb=56202222ed83ff030239bb23be8296574674c4f7;hp=08d005301301371760ae816024f2a13d4c8024f6;hpb=7ce7775cb5a4e97264df62f43315d32504602072;p=libsigrokdecode.git diff --git a/decoders/i2c.py b/decoders/i2c.py index 08d0053..11ee9b5 100644 --- a/decoders/i2c.py +++ b/decoders/i2c.py @@ -93,7 +93,7 @@ # # -import sigrokdecode +import sigrokdecode as srd # annotation feed formats ANN_SHIFTED = 0 @@ -119,7 +119,7 @@ FIND_ADDRESS = 1 FIND_DATA = 2 -class Decoder(sigrokdecode.Decoder): +class Decoder(srd.Decoder): id = 'i2c' name = 'I2C' longname = 'Inter-Integrated Circuit (I2C) bus' @@ -137,7 +137,7 @@ class Decoder(sigrokdecode.Decoder): options = { 'address-space': ['Address space (in bits)', 7], } - annotation = [ + annotations = [ # ANN_SHIFTED ["7-bit shifted hex", "Read/Write bit shifted out from the 8-bit i2c slave address"], @@ -149,8 +149,6 @@ class Decoder(sigrokdecode.Decoder): ] def __init__(self, **kwargs): - self.output_protocol = None - self.output_annotation = None self.samplecnt = 0 self.bitcount = 0 self.databyte = 0 @@ -162,8 +160,8 @@ class Decoder(sigrokdecode.Decoder): self.oldsda = None def start(self, metadata): - self.output_protocol = self.add(sigrokdecode.SRD_OUTPUT_PROTOCOL, 'i2c') - self.output_annotation = self.add(sigrokdecode.SRD_OUTPUT_ANNOTATION, 'i2c') + self.out_proto = self.add(srd.OUTPUT_PROTO, 'i2c') + self.out_ann = self.add(srd.OUTPUT_ANN, 'i2c') def report(self): pass @@ -191,9 +189,9 @@ class Decoder(sigrokdecode.Decoder): cmd = 'START_REPEAT' else: cmd = 'START' - self.put(self.output_protocol, [ cmd, None, None ]) - self.put(self.output_annotation, [ ANN_SHIFTED, [protocol[cmd][0]] ]) - self.put(self.output_annotation, [ ANN_SHIFTED_SHORT, [protocol[cmd][1]] ]) + self.put(self.out_proto, [ cmd, None, None ]) + self.put(self.out_ann, [ ANN_SHIFTED, [protocol[cmd][0]] ]) + self.put(self.out_ann, [ ANN_SHIFTED_SHORT, [protocol[cmd][1]] ]) self.state = FIND_ADDRESS self.bitcount = self.databyte = 0 @@ -218,7 +216,7 @@ class Decoder(sigrokdecode.Decoder): # send raw output annotation before we start shifting out # read/write and ack/nack bits - self.put(self.output_annotation, [ANN_RAW, ["0x%.2x" % self.databyte]]) + self.put(self.out_ann, [ANN_RAW, ["0x%.2x" % self.databyte]]) # We received 8 address/data bits and the ACK/NACK bit. self.databyte >>= 1 # Shift out unwanted ACK/NACK bit here. @@ -251,13 +249,13 @@ class Decoder(sigrokdecode.Decoder): cmd = 'DATA_WRITE' elif self.state == FIND_DATA and self.wr == 0: cmd = 'DATA_READ' - self.put(self.output_protocol, [ cmd, d, ack_bit ] ) - self.put(self.output_annotation, [ANN_SHIFTED, [ + self.put(self.out_proto, [ cmd, d, ack_bit ] ) + self.put(self.out_ann, [ANN_SHIFTED, [ "%s" % protocol[cmd][0], "0x%02x" % d, "%s" % protocol[ack_bit][0]] ] ) - self.put(self.output_annotation, [ANN_SHIFTED_SHORT, [ + self.put(self.out_ann, [ANN_SHIFTED_SHORT, [ "%s" % protocol[cmd][1], "0x%02x" % d, "%s" % protocol[ack_bit][1]] @@ -274,9 +272,9 @@ class Decoder(sigrokdecode.Decoder): pass def found_stop(self, scl, sda): - self.put(self.output_protocol, [ 'STOP', None, None ]) - self.put(self.output_annotation, [ ANN_SHIFTED, [protocol['STOP'][0]] ]) - self.put(self.output_annotation, [ ANN_SHIFTED_SHORT, [protocol['STOP'][1]] ]) + self.put(self.out_proto, [ 'STOP', None, None ]) + self.put(self.out_ann, [ ANN_SHIFTED, [protocol['STOP'][0]] ]) + self.put(self.out_ann, [ ANN_SHIFTED_SHORT, [protocol['STOP'][1]] ]) self.state = FIND_START self.is_repeat_start = 0