summaryrefslogtreecommitdiff
path: root/decoders/sle44xx
diff options
context:
space:
mode:
Diffstat (limited to 'decoders/sle44xx')
-rw-r--r--decoders/sle44xx/pd.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/decoders/sle44xx/pd.py b/decoders/sle44xx/pd.py
index 559bbc8..56d2d04 100644
--- a/decoders/sle44xx/pd.py
+++ b/decoders/sle44xx/pd.py
@@ -78,6 +78,7 @@ class Decoder(srd.Decoder):
self.reset()
def reset(self):
+ self.samplerate = None
self.bits = []
self.atr_bytes = []
self.cmd_bytes = []
@@ -101,6 +102,13 @@ class Decoder(srd.Decoder):
def putb(self, ss, es, cls , data):
self.put(ss, es, self.out_binary, [cls, data,])
+ def snums_to_usecs(self, snum_count):
+ if not self.samplerate:
+ return None
+ snums_per_usec = self.samplerate / 1e6
+ usecs = snum_count / snums_per_usec
+ return usecs
+
def lookup_proto_ann_txt(self, key, variables):
ann = {
'RESET_SYM': [Ann.RESET_SYM, 'Reset', 'R',],
@@ -200,6 +208,10 @@ class Decoder(srd.Decoder):
clk = self.proc_state['clk']
high = self.proc_state['io1']
text = '{clk} clocks, I/O {high}'.format(clk = clk, high = int(high))
+ usecs = self.snums_to_usecs(es - ss)
+ if usecs:
+ msecs = usecs / 1000
+ text = '{msecs:.2f} ms, {text}'.format(msecs = msecs, text = text)
cls, texts = self.lookup_proto_ann_txt(key, {'data': text})
self.putx(ss, es, cls, texts)