]> sigrok.org Git - libsigrokdecode.git/blobdiff - decoders/ds1307/pd.py
Do some more I2C to I²C changes.
[libsigrokdecode.git] / decoders / ds1307 / pd.py
index 273226c356cedb4c85d6a51abbe7a7ae5f07c58f..01aaf6bc46a371e601d11f059978e6dd2e6f673f 100644 (file)
@@ -1,5 +1,5 @@
 ##
-## This file is part of the sigrok project.
+## This file is part of the libsigrokdecode project.
 ## 
 ## Copyright (C) 2012 Uwe Hermann <uwe@hermann-uwe.de>
 ## Copyright (C) 2013 Matt Ranostay <mranostay@gmail.com>
@@ -63,11 +63,8 @@ class Decoder(srd.Decoder):
         self.months = -1
         self.years = -1
 
-    def start(self, metadata):
-        self.out_ann = self.add(srd.OUTPUT_ANN, 'ds1307')
-
-    def report(self):
-        pass
+    def start(self):
+        self.out_ann = self.register(srd.OUTPUT_ANN)
 
     def putx(self, data):
         self.put(self.ss, self.es, self.out_ann, data)
@@ -106,12 +103,12 @@ class Decoder(srd.Decoder):
     def decode(self, ss, es, data):
         cmd, databyte = data
 
-        # Store the start/end samples of this I2C packet.
+        # Store the start/end samples of this I²C packet.
         self.ss, self.es = ss, es
 
         # State machine.
         if self.state == 'IDLE':
-            # Wait for an I2C START condition.
+            # Wait for an I²C START condition.
             if cmd != 'START':
                 return
             self.state = 'GET SLAVE ADDR'
@@ -141,9 +138,9 @@ class Decoder(srd.Decoder):
                 # TODO: Check for NACK!
             elif cmd == 'STOP':
                 # TODO: Handle read/write of only parts of these items.
-                d = '%02d.%02d.%02d %02d:%02d:%02d' % (self.days, self.date,
-                    self.months, self.years, self.hours, self.minutes,
-                    self.seconds)
+                d = '%s, %02d.%02d.%02d %02d:%02d:%02d' % (
+                    days_of_week[self.days - 1], self.date, self.months,
+                    self.years, self.hours, self.minutes, self.seconds)
                 self.put(self.block_start_sample, es, self.out_ann,
                          [0, ['Written date/time: %s' % d]])
                 self.state = 'IDLE'
@@ -164,9 +161,9 @@ class Decoder(srd.Decoder):
                 self.reg += 1
                 # TODO: Check for NACK!
             elif cmd == 'STOP':
-                d = '%02d.%02d.%02d.%02d %02d:%02d:%02d' % (self.days,
-                    self.date, self.months, self.years, self.hours,
-                    self.minutes, self.seconds)
+                d = '%s, %02d.%02d.%02d %02d:%02d:%02d' % (
+                    days_of_week[self.days - 1], self.date, self.months,
+                    self.years, self.hours, self.minutes, self.seconds)
                 self.put(self.block_start_sample, es, self.out_ann,
                          [0, ['Read date/time: %s' % d]])
                 self.state = 'IDLE'