The Universal Asynchronous Receiver Transmitter (UART) module is the basic serial I/O module available in the dsPIC30F device family. The UART is a full-duplex asynchronous system that can communicate with peripheral devices, such as personal computers, RS-232, and RS-485 interfaces.
The primary features of the UART module are:
- Full-duplex 8- or 9-bit data transmission through the UxTX and UxRX pins,
- For 8-bit data even, odd, or no parity options,
- One or two STOP bits,
- Fully integrated Baud-rate generator with 16-bit prescaler,
- 4-deep First-In-First-Out (FIFO) transmit data buffer,
- 4-deep FIFO receive data buffer,
- Parity, framing and buffer overrun error detection,
- Support for 9-bit mode with address detect (9th bit=1),
- Transmit and receive interrupts,
- Loop-back mode for diagnostic support.
Each dsPIC30F device variant may have one or more UART modules (e.g. dsPIC30F4013 has 2 UART modules).
Fig. 10-1 shows a simplified block diagram of the UART module. The UART module consists of the three key hardware elements: Baud-rate generator, asynchronous transmitter, and asynchronous receiver.
Fig. 10-1 UART simplified block diagram