5.6.1 Universal Synchronous/Asynchronous Serial Receiver and Transmitter (USART)
The PIC16F, PIC18F and PIC32CM MCUs provide highly flexible and robust USART peripherals. All USART variants (EUSART, UART, USART) support buffered communication, interrupt-driven operation, and operation in low-power modes, suitable for a variety of embedded communication needs. Table 5-21 provides a comparison of features between PIC16F, PIC18F and PIC32CM.
| Feature | PIC16F EUSART | PIC18F EUSART/UART | PIC32CM SERCOM-USART |
|---|---|---|---|
| Integration |
Stand-alone peripherals: USART EUSART (Enhanced USART) |
Stand-alone peripherals: USART EUSART UART with Protocol Support | Mode in SERCOM (Serial Communications) peripheral |
| Operation Modes |
Full-duplex Half-duplex Synchronous/asynchronous |
Full-duplex Half-duplex Synchronous/asynchronous |
Full-duplex Half-duplex Synchronous/asynchronous |
| Protocol/Standard Support |
Varies per device family: RS-232, RS-485 LIN host/client |
Varies per device family: RS-232, RS-485 LIN host/client IrDA® DMX DALI |
Varies per device family: IrDA® LIN host/client ISO 7816 (smart card) RS-485 |
| Buffer/FIFO | Up to eight bytes (device-dependent) | Up to 16 bytes (device-dependent) | 16-byte transmit/receive FIFO |
| Baud Rate Generation (BRG) | 8-bit or 16-bit BRG | 16-bit BRG | 16-bit BRG, internal/external clock |
| Data Bits | 8, 9 | 7, 8, 9 | 5, 6, 7, 8, 9 |
| Stop Bits | 1 or 2 bits | 1, 1.5 or 2 bits | 1 or 2 bits |
| Parity | Through firmware using the 9th bit | Odd, even, or 9th bit Address Detection | Odd, even, none |
| Data Order | LSb first | LSb or MSb
first Selectable | LSb or MSb
first Selectable |
| Flow Control | N/A | Request-to-Send (RTS) Clear-to-Send (CTS) | RTS CTS |
| DMA Support | N/A | Supported | Supported |
| Error Detection |
Parity Overrun Frame error |
Parity Overrun Frame error Checksum Collision |
Parity Buffer overflow Frame error Noise filtering Collision detection |
| Sleep Mode Operation | Supported | — | Supported |
| Interrupts | TX/RX | TX/RX Errors | Multiple, including FIFO events |
| Pin Mapping | Flexible | – | Flexible |
| Baud Rate Range | Up to 1 Mbps (device-dependent) | Up to 2 Mbps (device-dependent) | Up to 6 Mbps or higher (device-dependent) |
| Auto-Baud Detection | Supported | Supported | Supported |
| Event System Integration | N/A | N/A | Supported |
