forked from Ivasoft/DSView
Merge pull request #647 from yunyaobaihong/demo
mipi rffe multilanguage and can&canfd falling edge
This commit is contained in:
@@ -550,7 +550,7 @@ class Decoder(srd.Decoder):
|
|||||||
# State machine.
|
# State machine.
|
||||||
if self.state == 'IDLE':
|
if self.state == 'IDLE':
|
||||||
# Wait for a dominant state (logic 0) on the bus.
|
# Wait for a dominant state (logic 0) on the bus.
|
||||||
(can_rx,) = self.wait({0: 'l'})
|
(can_rx,) = self.wait({0: 'f'})
|
||||||
self.sof = self.samplenum
|
self.sof = self.samplenum
|
||||||
self.dom_edge_seen(force = True)
|
self.dom_edge_seen(force = True)
|
||||||
self.state = 'GET BITS'
|
self.state = 'GET BITS'
|
||||||
|
|||||||
@@ -42,8 +42,8 @@ class Decoder(srd.Decoder):
|
|||||||
{'id': 'can_rx', 'name': 'CAN', 'desc': 'CAN bus line', 'idn':'dec_can_chan_can_rx'},
|
{'id': 'can_rx', 'name': 'CAN', 'desc': 'CAN bus line', 'idn':'dec_can_chan_can_rx'},
|
||||||
)
|
)
|
||||||
options = (
|
options = (
|
||||||
{'id': 'bitrate', 'desc': 'bitrate (bits/s)', 'default': 1000000,'idn':'dec_can_opt_bitrate'},
|
{'id': 'bitrate', 'desc': 'bitrate (bits/s)', 'default': 1000000, 'idn':'dec_can_opt_bitrate'},
|
||||||
{'id': 'sample_point', 'desc': 'Sample point (%)', 'default': 70.0,'idn':'dec_can_opt_sample_point'},
|
{'id': 'sample_point', 'desc': 'Sample point (%)', 'default': 70.0, 'idn':'dec_can_opt_sample_point'},
|
||||||
)
|
)
|
||||||
annotations = (
|
annotations = (
|
||||||
('data', 'CAN payload data'),
|
('data', 'CAN payload data'),
|
||||||
@@ -85,7 +85,7 @@ class Decoder(srd.Decoder):
|
|||||||
def metadata(self, key, value):
|
def metadata(self, key, value):
|
||||||
if key == srd.SRD_CONF_SAMPLERATE:
|
if key == srd.SRD_CONF_SAMPLERATE:
|
||||||
self.samplerate = value
|
self.samplerate = value
|
||||||
self.bit_width = float(self.samplerate) / float(self.options['nominal_bitrate'])
|
self.bit_width = float(self.samplerate) / float(self.options['bitrate'])
|
||||||
self.sample_point = (self.bit_width / 100.0) * self.options['sample_point']
|
self.sample_point = (self.bit_width / 100.0) * self.options['sample_point']
|
||||||
|
|
||||||
# Generic helper for CAN bit annotations.
|
# Generic helper for CAN bit annotations.
|
||||||
@@ -448,7 +448,7 @@ class Decoder(srd.Decoder):
|
|||||||
# State machine.
|
# State machine.
|
||||||
if self.state == 'IDLE':
|
if self.state == 'IDLE':
|
||||||
# Wait for a dominant state (logic 0) on the bus.
|
# Wait for a dominant state (logic 0) on the bus.
|
||||||
(can_rx,) = self.wait({0: 'l'})
|
(can_rx,) = self.wait({0: 'f'})
|
||||||
self.sof = self.samplenum
|
self.sof = self.samplenum
|
||||||
self.dom_edge_seen(force = True)
|
self.dom_edge_seen(force = True)
|
||||||
self.state = 'GET BITS'
|
self.state = 'GET BITS'
|
||||||
|
|||||||
@@ -84,12 +84,12 @@ class Decoder(srd.Decoder):
|
|||||||
outputs = ['mipi_rffe']
|
outputs = ['mipi_rffe']
|
||||||
tags = ['Embedded/industrial']
|
tags = ['Embedded/industrial']
|
||||||
channels = (
|
channels = (
|
||||||
{'id': 'sclk', 'type': 8, 'name': 'SCLK', 'desc': 'Serial clock line'},
|
{'id': 'sclk', 'type': 8, 'name': 'SCLK', 'desc': 'Serial clock line', 'idn':'dec_mipi_rffe_chan_sclk'},
|
||||||
{'id': 'sdata', 'type': 108, 'name': 'SDATA', 'desc': 'Serial data line'},
|
{'id': 'sdata', 'type': 108, 'name': 'SDATA', 'desc': 'Serial data line', 'idn':'dec_mipi_rffe_chan_sdata'},
|
||||||
)
|
)
|
||||||
options = (
|
options = (
|
||||||
{'id': 'error_display', 'desc': 'Error display options',
|
{'id': 'error_display', 'desc': 'Error display options',
|
||||||
'default': 'display', 'values': ('display', 'not_display')},
|
'default': 'display', 'values': ('display', 'not_display'), 'idn':'dec_mipi_rffe_opt_error_display'},
|
||||||
)
|
)
|
||||||
annotations = (
|
annotations = (
|
||||||
('7', 'ssc', 'Sequence Start Condition'),
|
('7', 'ssc', 'Sequence Start Condition'),
|
||||||
|
|||||||
Reference in New Issue
Block a user