Universal Asynchronous Receiver/Transmitter (UART)
Updated: Dec 29, 2020
The Universal Asynchronous Receiver Transmitter (UART) module is one of the serial I/O
modules available in the microcontroller. The UART is a full-duplex, asynchronous
communication channel that communicates with peripheral devices and personal computers,
using protocols such as RS-232, RS-485, LIN, and IrDA®. There are three ways of using the UART in the practical world.
Use only Rx and Tx pins.
Use Rx and Tx along with CTS and RTS pins for hardware flow control.
Use Rx and Tx along with the standard modem interface signals included (CTS, DCD, DTS, DTR, RI, RTS).
Source: PIC Microcontroller
The primary features of the UART module are:
Full-Duplex, 8 or 9-Bit Data Transmission through the TX and RX pins
Even, Odd or No Parity options (for 8-bit data)
One or two Stop bits
Hardware Auto-Baud feature
Hardware Flow Control option with CTS and RTS pins
Software Flow control
Baud rate setting. Varies on the different microcontrollers.
Transmit and Receive Data Buffer. Size varies on the different microcontrollers.
Transmit and Receive Interrupts
Loopback mode for Diagnostic Support
Microcontrollers have more than one UART port which can be configured during the power ON cycle for different uses like RS485, RS422, or RS232. Make sure, during the initialisation specific UART port defined for the purpose it was set in the hardware.