summaryrefslogtreecommitdiff
path: root/decoders/ds1307
diff options
context:
space:
mode:
Diffstat (limited to 'decoders/ds1307')
-rw-r--r--decoders/ds1307/pd.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/decoders/ds1307/pd.py b/decoders/ds1307/pd.py
index d9aa3d5..ca6faf6 100644
--- a/decoders/ds1307/pd.py
+++ b/decoders/ds1307/pd.py
@@ -187,7 +187,11 @@ class Decoder(srd.Decoder):
r = self.reg if self.reg < 8 else 0x3f
fn = getattr(self, 'handle_reg_0x%02x' % r)
fn(b)
+ # Honor address auto-increment feature of the DS1307. When the
+ # address reaches 0x3f, it will wrap around to address 0.
self.reg += 1
+ if self.reg > 0x3f:
+ self.reg = 0
def decode(self, ss, es, data):
cmd, databyte = data