Serial communication buses are used extensively in modern electronic designs. Serial buses offer significant cost advantages and some performance improvements over parallel bus communications. First off, there are fewer signals to route on the board, so PCB costs are lower. Less I/O pins on each device are needed, which simplifies component packaging and so reduces component cost. Some serial buses use differential signalling which improves noise immunity.
There is a wide range of serial communication standards, each optimised for specific operating conditions and differing design complexity, different speeds, power consumption, fault tolerance and, of course, cost.
PicoScope can decode 1-Wire, ARINC 429, BroadR-Reach (100BASE-T1), CAN & CAN FD, CAN J1939, CAN XL, DALI, DCC, DMX512, Ethernet 10Base-T and Ethernet 100Base-TX, FlexRay, I²C, I²S, I3C, LIN, Manchester, MIL-STD-1553, Modbus (ASCII/RTU), Parallel Bus, PMBus, PS/2, Quadrature, SENT Fast/Slow, SMBus, SBS Data, SPI-MISO/MOSI, SDI-SDIO, UART (RS-232 / RS-422 / RS-485), USB and Wind Sensor protocol data as standard, with more protocols in development, and available in the future with free-of-charge software upgrades.
Although serial buses offer several advantages, they also present difficulties when troubleshooting and debugging systems since the data is transmitted in packets or frames that need to be decoded, according to the standard in use, before the designer can make sense of the information flow. Manually decoding (or “bit counting”) streams of binary data is error prone and time-consuming.
PicoScope includes decoding and analysis of popular serial standards to help engineers see what is happening in their design to identify programming and timing errors and check for other signal integrity issues. Timing analysis tools help to show performance of each design element, enabling the engineer to identify those parts of the design that need to be improved to optimize overall system performance.
Serial decoding is included in PicoScope as standard. The decoded data can be displayed in the format of your choice: In Graph, In Table, or both at once.
In Graph format shows decoded data in a bus format, aligned with the analog waveform, on a common time axis, with error frames marked in red. Frames can be zoomed and correlated with acquired analog channels to investigate timing errors or other signal integrity issues that are root cause of data errors.
Packet example | Meaning |
---|---|
![]() |
Header |
![]() |
Payload / Data |
![]() |
Parity |
![]() |
CRC / Checksum |
![]() |
Bit Stuffing |
![]() |
Start Bit |
![]() |
Stop Bit |
![]() |
Sync |
![]() |
Packet Type |
![]() |
Address |
![]() |
Break |
![]() |
Ack |
![]() |
Reserved / Delimiter |
![]() |
Preamble |
![]() |
Control Pair |
In Table format shows a list of the decoded frames, including the data and all flags and identifiers. You can set up filtering conditions to display only the frames you are interested in, search for frames with specified properties, or define a start pattern to signal when the program should list the data.
Data can be displayed in Hex, Binary, ASCII or Decimal formats. To help make decoded data even easier to read PicoScope enables the use of a link file so that, for example, address hex 03DF can be displayed as “Oil Temperature”, or whatever the parameter means in human-readable form.
PicoScope deep-memory oscilloscopes can capture hundreds or even thousands of serial data packets, so it is important to be able to search and analyze the acquired packets to isolate the specific packets of interest. There are several ways to do that.
Link File helps to speed analysis by cross referencing hexadecimal field values into human readable form. So, for example, instead of displaying "Address: 7E" in the Table View, the corresponding text “Set Motor Speed” will be shown instead, or whatever is appropriate. The Link File template with all field headings can be created directly from the serial table toolbar, and edited manually as a spreadsheet to apply the cross reference values.
More videos on serial decoding can be found in our video library:
‘Serial Decoding of UART–RS232’
‘Serial Decoding of SPI Bus Signals’
‘Serial Decoding of CAN Bus Signals'