The UART / Serial decoder I/O decodes analog data on a serial bus to serial data. It can be used to monitor and analyze UART, RS232, RS485, MIDI, DMX, LIN or other compatible serial buses. The UART / Serial decoder I/O has auto level detection and auto baud rate detection. The output of the UART / Serial decoder I/O can be shown in a Table sink.
The following fields are extracted from the UART / serial communication and shown as a column in the table:
Field name | Purpose | Default shown |
---|---|---|
Break | Flag indicating if a Break is found | |
Mark after break | Flag indicating if a Mark-After-Break is found | |
Address (Hex) | The address in hexadecimal notation | |
Address (Dec) | The address in decimal notation | |
Value (Hex) | The value in hexadecimal notation | |
Value (Dec) | The value in decimal notation | |
Value (ASCII) | The value in ASCII notation | |
Parity valid | Flag indicating if the parity is valid | |
Stop bit valid | Flag indicating if the stop bit is valid | |
Valid | Flag indicating if the message is valid |
To show or hide specific columns from the table, use the Select columns () button in the Table sink.
Double clicking a row in the table will zoom the active graph in to the time frame corresponding to the table row.
UART / Serial decoder properties
To control the behavior of the UART / Serial decoder I/O, several properties and actions are available. These can be accessed through a popup menu which is shown when the I/O is right clicked in the Object Tree. The properties can also be accessed through its settings window which is shown when the I/O is double clicked in the Object Tree. To open the Object tree, click the Show object tree button.
By default, the settings window only shows the most used settings. When Advanced is ticked, the extended window with all settings is shown. See also the program settings.
Preset
In order to decode the analog signal into a digital signal, the UART / Serial decoder I/O uses a level and a hysteresis to compare the analog signal to. The Preset setting offers several presets for level and hysteresis, for common serial buses that can be decoded. Setting the Preset to one of the available values will set Level and hysteresis accordingly and will disable the auto level and hysteresis detection.
Level
In order to decode the analog signal into a digital signal, the UART / Serial decoder I/O compares the analog input signal with a mid level: anything above that level is considered "high" and anything below that level is considered "low".
Hysteresis
To minimize the effect of noise on the signal when comparing the signal to the level, a Hysteresis can be used around that level. Anything above "level + hysteresis/2" is considered "high" and anything below "level - hysteresis/2" is considered "low".
Auto detect level and hysteresis
Enabling Auto detect level and hysteresis will let the software determine a suitable mid level and hysteresis, based on the measured signal. Each time new data is available, the suitable level and hysteresis will be determined again. In streaming mode, level and hysteresis are determined once based on the first chunk of data and remain at these values though out the whole measurement.
Auto detect level and hysteresis is default enabled.
Invert
For correct detection, the Invert property must be set to the correct value, corresponding to the bus that is under measurement.
- When Invert is disabled levels above signal mid level are logic 0, levels below signal mid level are logic 1
- When Invert is enabled levels above signal mid level are logic 1, levels below signal mid level are logic 0
Invert is default off.
Baud rate
For correct detection, the Baud rate property must be set to the correct value corresponding to the bus that is under measurement. It can be set to several common standard values, but it is also possible to enter an arbitrary value in the Baud rate edit field.
Auto detect baud rate
Enabling Auto detect baud rate will let the software determine the correct baud rate, based on the measured signal. Each time new data is available, the baud rate will be determined again. Auto detect baud rate is default enabled.
Snap to standard baud rate
When Auto detect baud rate is enabled, the setting Snap to standard baud rate will set the baud rate to the closest standard baud rate (from the baud rate list) if the determined value is within 1 % of this standard value. Snap to standard baud rate is default enabled.
Data bits
For correct detection, the Databits property must be set to the correct number of data bits, corresponding to the bus that is under measurement. Data bits can be set to several common values: 5, 6, 7 or 8 bits. Data bits is default set to 8 bits.
Parity
For correct detection, the Parity property must be set to the correct value, corresponding to the bus that is under measurement. It can be set to several common values: None, Odd, Even, Mark or Space. Parity is default set to None.
Stop bits
For correct detection, the Stop bits property must be set to the correct value, corresponding to the bus that is under measurement. It can be set to two values: 1 or 2. Stop bits is default set to 1.
Minimum break width
The setting Minimum break width determines the length in bits that a break must be to be considered valid. Invalid breaks are marked as invalid.
Minimum Mark-After-Break width
The setting Minimum Mark-After-Break width determines the length in bits that a mark after break must be to be considered valid. Invalid marks after break are marked as invalid.
Bit order
The bit order of transferred data on the UART / Serial bus is not defined in a standard, it depends on the implementation. The Bit order setting determines how the UART / Serial decoder will interpret the decoded bits: MSB first or LSB first. The default Bit order is LSB first.
Multi drop