UART / RS232 / RS485


Serial Communication
Baud Rate
TTL (Transistor-Transistor Logic)
RS-232 (Recommended Standard 232)
RS-485 (Recommended Standard 485)
Reference

Serial communication sends data one bit at a time in sequence, as opposed to parallel communication which sends multiple bits simultaneously on multiple wires.

FeatureSCIUARTUSART
NameSerial Communication InterfaceUniversal Asynchronous Receiver/
Transmitter
Universal Synchronous/
Asynchronous Receiver/
Transmitter
ModeAsynchronous onlyAsynchronous onlyAsynchronous and Synchronous
ClockNo shared clockNo shared clockOptional shared clock (sync mode)
FrameStart bit, data bits, optional parity, stop bit(s)Start bit, data bits, optional parity, stop bit(s)Same as UART (async); clocked data in sync mode
Data Bits8 bits (commonly)5–9 bits5–9 bits
ParityOptionalOptionalOptional
Stop Bits1 or 21, 1.5, or 21 or 2
DuplexFull duplexFull duplexFull duplex
VendorTI C2000, TI MSP430ARM MCUs, ESP32,
Raspberry Pi
STM32, NXP, Atmel
Simplex: One-way communication only — data flows in one direction (TX → RX).
Half-Duplex: Two-way communication, but only one side can transmit at a time.
Full-Duplex: Two-way communication simultaneously — both sides transmit at once.


Example of UART Device Connections
Baud rate: is a measure of how fast data is transmitted over a communication link. It refers to the number of signal changes (symbols) per second on the communication line. Each change in signal state is one baud.

Baud Rate (bps)Typical Usage
9600Most common default for MCU debug & modules
19200Industrial control, PLCs
38400Embedded systems, bootloaders
57600High-speed MCU debug
115200Very common for firmware flashing & logging
921600Near practical UART limit on many systems
2,000,000High-performance MCUs / SoCs
TTL (Transistor-Transistor Logic) is a digital logic family and signal level standard used in electronic circuits to represent binary values (0 and 1) using voltage levels on wires.
  • Logic LOW output: up to ~0.4 V
  • Logic HIGH output: ~2.4 V to 5 V

Single UART Data Frame
RS-232 (Recommended Standard 232) is a long-established electrical interface standard used for serial communication between two devices such as computers, modems, industrial controllers, and peripherals. It defines how binary data are transmitted one bit at a time over a cable, the physical voltage levels, connector types, and pin assignments.
  • Logic LOW output: -3 V to -15 V
  • Logic HIGH output: 3 V to 15 V

TTL Level from MCU to RS232 Level
TTL to RS232 Level Converter
RS-485 (Recommended Standard 485) is a widely used serial communication electrical standard that defines how devices transmit and receive binary data over a shared bus using differential signaling — especially in industrial and automation systems. RS-485 uses two signal wires (often called A and B) that carry complementary voltages. Data is not read relative to ground, but by the voltage difference between these two wires. This method provides strong noise immunity, because interference that affects both wires equally tends to cancel out.

RS485 Communication between MCUs
A Master device is the controller or initiator of communication on the RS-485 bus:
  • It starts every transaction by sending a request or command.
  • It may address a specific Slave using that device’s unique address.
  • After sending a request, the Master waits for a response from the targeted Slave.
  • There is only one Master on the RS-485 loop in typical master-slave protocols.

Connections in an RS-485 Master-Slave Network
Comparison of Digital Serial Signaling Schemes



Back to top of the page

This entry was posted in Embedded System. Bookmark the permalink.