Atmel ATmega328P Xplained Mini MEGA328P-XMINI MEGA328P-XMINI Data Sheet

Product codes
MEGA328P-XMINI
Page of 657
171
ATmega48A/PA/88A/PA/168A/PA/328/P [DATASHEET]
Atmel-8271H-AVR- ATmega-Datasheet_08/2014
20.
USART0
20.1
Features
Full Duplex Operation (Independent Serial Receive and Transmit Registers)
Asynchronous or Synchronous Operation
Master or Slave Clocked Synchronous Operation
High Resolution Baud Rate Generator
Supports Serial Frames with 5, 6, 7, 8, or 9 Data Bits and 1 or 2 Stop Bits
Odd or Even Parity Generation and Parity Check Supported by Hardware
Data OverRun Detection
Framing Error Detection
Noise Filtering Includes False Start Bit Detection and Digital Low Pass Filter
Three Separate Interrupts on TX Complete, TX Data Register Empty and RX Complete
Multi-processor Communication Mode
Double Speed Asynchronous Communication Mode
20.2
Overview
The Universal Synchronous and Asynchronous serial Receiver and Transmitter (USART) is a highly flexible 
serial communication device.
The USART0 can also be used in Master SPI mode, see “USART in SPI Mode” on page 197. The Power 
Reduction USART bit, PRUSART0, in 
 must be disabled by writing 
a logical zero to it.
A simplified block diagram of the USART Transmitter is shown in 
. CPU accessible I/O 
Registers and I/O pins are shown in bold.
The dashed boxes in the block diagram separate the three main parts of the USART (listed from the top): Clock 
Generator, Transmitter and Receiver. Control Registers are shared by all units. The Clock Generation logic 
consists of synchronization logic for external clock input used by synchronous slave operation, and the baud 
rate generator. The XCKn (Transfer Clock) pin is only used by synchronous transfer mode. The Transmitter 
consists of a single write buffer, a serial Shift Register, Parity Generator and Control logic for handling different 
serial frame formats. The write buffer allows a continuous transfer of data without any delay between frames. 
The Receiver is the most complex part of the USART module due to its clock and data recovery units. The 
recovery units are used for asynchronous data reception. In addition to the recovery units, the Receiver includes 
a Parity Checker, Control logic, a Shift Register and a two level receive buffer (UDRn). The Receiver supports 
the same frame formats as the Transmitter, and can detect Frame Error, Data OverRun and Parity Errors.