summaryrefslogtreecommitdiff
path: root/decoders/uart
diff options
context:
space:
mode:
authorBert Vermeulen <bert@biot.com>2014-03-09 23:48:27 +0100
committerBert Vermeulen <bert@biot.com>2014-03-10 00:47:30 +0100
commit84c1c0b52820af2418186ac3ecf93a5c6373a22e (patch)
treeae26f32b7c77646179369fcbe089b91e2c236665 /decoders/uart
parentcfe46204d1c91f02d0e2c6679a2d15ff92bb90c8 (diff)
downloadlibsigrokdecode-84c1c0b52820af2418186ac3ecf93a5c6373a22e.tar.gz
libsigrokdecode-84c1c0b52820af2418186ac3ecf93a5c6373a22e.zip
Change PD options to be a tuple of dictionaries.
Each option consists of a dictionary with the following keys: id The option id, which is passed in when setting a value. desc A description of the option, suitable for display. def The default value for this option. values (optional) If present, a tuple containing values the option may take. They must be of the same type as the default. Valid types for the options are UTF-8-encoded strings, integers, and floating point values.
Diffstat (limited to 'decoders/uart')
-rw-r--r--decoders/uart/pd.py24
1 files changed, 15 insertions, 9 deletions
diff --git a/decoders/uart/pd.py b/decoders/uart/pd.py
index 8de84a4..f01cace 100644
--- a/decoders/uart/pd.py
+++ b/decoders/uart/pd.py
@@ -85,16 +85,22 @@ class Decoder(srd.Decoder):
{'id': 'rx', 'name': 'RX', 'desc': 'UART receive line'},
{'id': 'tx', 'name': 'TX', 'desc': 'UART transmit line'},
]
- options = {
- 'baudrate': ['Baud rate', 115200],
- 'num_data_bits': ['Data bits', 8], # Valid: 5-9.
- 'parity_type': ['Parity type', 'none'],
- 'parity_check': ['Check parity?', 'yes'], # TODO: Bool supported?
- 'num_stop_bits': ['Stop bit(s)', '1'], # String! 0, 0.5, 1, 1.5.
- 'bit_order': ['Bit order', 'lsb-first'],
- 'format': ['Data format', 'ascii'], # ascii/dec/hex/oct/bin
+ options = (
+ {'id': 'baudrate', 'desc': 'Baud rate', 'default': 115200},
+ {'id': 'num_data_bits', 'desc': 'Data bits', 'default': 8,
+ 'values': (5, 6, 7, 8, 9)},
+ {'id': 'parity_type', 'desc': 'Parity type', 'default': 'none',
+ 'values': ('none', 'odd', 'even', 'zero', 'one')},
+ {'id': 'parity_check', 'desc': 'Check parity?', 'default': 'yes',
+ 'values': ('yes', 'no')},
+ {'id': 'num_stop_bits', 'desc': 'Stop bits', 'default': 1.0,
+ 'values': (0.0, 0.5, 1.0, 1.5)},
+ {'id': 'bit_order', 'desc': 'Bit order', 'default': 'lsb-first',
+ 'values': ('lsb-first', 'msb-first')},
+ {'id': 'format', 'desc': 'Data format', 'default': 'ascii',
+ 'values': ('ascii', 'dec', 'hex', 'oct', 'bin')},
# TODO: Options to invert the signal(s).
- }
+ )
annotations = [
['rx-data', 'RX data'],
['tx-data', 'TX data'],