diff options
Diffstat (limited to 'decoders')
-rw-r--r-- | decoders/uart/pd.py | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/decoders/uart/pd.py b/decoders/uart/pd.py index af773b4..093f3fc 100644 --- a/decoders/uart/pd.py +++ b/decoders/uart/pd.py @@ -223,11 +223,13 @@ class Decoder(srd.Decoder): self.startbit[rxtx] = signal - # The startbit must be 0. If not, we report an error. + # The startbit must be 0. If not, we report an error and wait + # for the next start bit (assuming this one was spurious). if self.startbit[rxtx] != 0: self.putp(['INVALID STARTBIT', rxtx, self.startbit[rxtx]]) self.putg([rxtx + 10, ['Frame error', 'Frame err', 'FE']]) - # TODO: Abort? Ignore rest of the frame? + self.state[rxtx] = 'WAIT FOR START BIT' + return self.cur_data_bit[rxtx] = 0 self.datavalue[rxtx] = 0 |