能显示数值
This commit is contained in:
+18
-14
@@ -50,10 +50,10 @@ For 'START', 'START REPEAT', 'STOP', 'ACK', and 'NACK' <pdata> is None.
|
|||||||
# CMD: [annotation-type-index, long annotation, short annotation]
|
# CMD: [annotation-type-index, long annotation, short annotation]
|
||||||
proto = {
|
proto = {
|
||||||
'BIT': [0, 'Bit', 'B'],
|
'BIT': [0, 'Bit', 'B'],
|
||||||
'START': [1, 'Start', 'Ss'],
|
'START': [1, 'Start', 'S'],
|
||||||
'DATA READ': [2, 'Start repeat', 'Sr'],
|
'ASC': [2, 'arc start cds', 'ARC'],
|
||||||
'DATA READ1': [3, 'ACK', 'A'],
|
'P': [3, 'P', 'P'],
|
||||||
'DATA READ2': [4, 'NACK', 'N'],
|
'S': [4, 'S', 'S'],
|
||||||
'ERR': [5, 'Address read', 'AR'],
|
'ERR': [5, 'Address read', 'AR'],
|
||||||
'CRC': [6, 'Address write', 'AW'],
|
'CRC': [6, 'Address write', 'AW'],
|
||||||
'STOP': [7, 'Stop', 'P'],
|
'STOP': [7, 'Stop', 'P'],
|
||||||
@@ -76,17 +76,21 @@ class Decoder(srd.Decoder):
|
|||||||
annotations = (
|
annotations = (
|
||||||
('208', 'bit', 'Data/address bit'),
|
('208', 'bit', 'Data/address bit'),
|
||||||
('207', 'start', 'Start condition'),
|
('207', 'start', 'Start condition'),
|
||||||
('6', 'data', 'Repeat start condition'),
|
('6', 'asc', 'arc start cds'),
|
||||||
('5', 'data1', 'ACK'),
|
('5', 'data1', 'p'),
|
||||||
('0', 'data2', 'NACK'),
|
('0', 'data2', 's'),
|
||||||
('112', 'error', 'Address read'),
|
('112', 'error', 'Address read'),
|
||||||
('111', 'crc', 'Address write'),
|
('111', 'crc', 'Address write'),
|
||||||
('201', 'stop', 'Stop condition'),
|
('201', 'stop', 'Stop condition'),
|
||||||
|
('202', 'value', 'value'),
|
||||||
|
('203', 'value1', 'value2'),
|
||||||
|
|
||||||
)
|
)
|
||||||
annotation_rows = (
|
annotation_rows = (
|
||||||
('bits', 'Bits', (0,)),
|
('bits', 'Bits', (0,)),
|
||||||
('addr-data', 'Address/Data', ( 2, 3, 4,)),
|
('p', 'p', ( 8,)),
|
||||||
('flag', 'Flag', ( 1, 5, 6, 7)),
|
('s', 's', ( 9,)),
|
||||||
|
('flag', 'Flag', ( 1, 2,3,4,5, 6, 7)),
|
||||||
)
|
)
|
||||||
binary = (
|
binary = (
|
||||||
('address-read', 'Address read'),
|
('address-read', 'Address read'),
|
||||||
@@ -181,8 +185,8 @@ class Decoder(srd.Decoder):
|
|||||||
self.put(bit[1], bit[2], self.out_ann, [0, ['%d' % bit[0]]])
|
self.put(bit[1], bit[2], self.out_ann, [0, ['%d' % bit[0]]])
|
||||||
|
|
||||||
|
|
||||||
self.putx([proto[cmd][0], ['%s: {$}' % proto[cmd][1], '%s: {$}' % proto[cmd][2], '{$}', d]])
|
self.put(self.ss, self.es, self.out_ann, [8, ['%d' % d]])
|
||||||
|
self.putx([proto[cmd][0], proto[cmd][1:]])
|
||||||
# Done with this packet.
|
# Done with this packet.
|
||||||
self.bitcount = self.databyte = 0
|
self.bitcount = self.databyte = 0
|
||||||
self.bits = []
|
self.bits = []
|
||||||
@@ -199,13 +203,13 @@ class Decoder(srd.Decoder):
|
|||||||
self.handle_start()
|
self.handle_start()
|
||||||
elif self.state == 'FIND DATA':
|
elif self.state == 'FIND DATA':
|
||||||
(scl, sda) = self.wait([{0: 'f'}])
|
(scl, sda) = self.wait([{0: 'f'}])
|
||||||
self.handle_data(scl, sda,'DATA READ',2,'FIND DATA1')
|
self.handle_data(scl, sda,'ASC',3,'FIND DATA1')
|
||||||
elif self.state == 'FIND DATA1':
|
elif self.state == 'FIND DATA1':
|
||||||
(scl, sda) = self.wait([{0: 'f'}])
|
(scl, sda) = self.wait([{0: 'f'}])
|
||||||
self.handle_data(scl, sda,'DATA READ1',12,'FIND DATA2')
|
self.handle_data(scl, sda,'P',13,'FIND DATA2')
|
||||||
elif self.state == 'FIND DATA2':
|
elif self.state == 'FIND DATA2':
|
||||||
(scl, sda) = self.wait([{0: 'f'}])
|
(scl, sda) = self.wait([{0: 'f'}])
|
||||||
self.handle_data(scl, sda,'DATA READ2',13,'FIND ERR')
|
self.handle_data(scl, sda,'S',13,'FIND ERR')
|
||||||
elif self.state == 'FIND ERR':
|
elif self.state == 'FIND ERR':
|
||||||
(scl, sda) = self.wait([{0: 'f'}])
|
(scl, sda) = self.wait([{0: 'f'}])
|
||||||
self.handle_data(scl, sda,'ERR',2,'FIND CRC')
|
self.handle_data(scl, sda,'ERR',2,'FIND CRC')
|
||||||
|
|||||||
Reference in New Issue
Block a user