ATmega88PA Automotive Atmel Corporation, ATmega88PA Automotive Datasheet - Page 204

no-image

ATmega88PA Automotive

Manufacturer Part Number
ATmega88PA Automotive
Description
Manufacturer
Atmel Corporation
21.5
21.5.1
204
Frame Formats
Atmel ATmega48PA/88PA/168PA [Preliminary]
USART MSPIM Initialization
A serial frame for the MSPIM is defined to be one character of 8 data bits. The USART in
MSPIM mode has two valid frame formats:
• 8-bit data with MSB first
• 8-bit data with LSB first
A frame starts with the least or most significant data bit. Then the next data bits, up to a total of
eight, are succeeding, ending with the most or least significant bit accordingly. When a com-
plete frame is transmitted, a new frame can directly follow it, or the communication line can be
set to an idle (high) state.
The UDORDn bit in UCSRnC sets the frame format used by the USART in MSPIM mode. The
Receiver and Transmitter use the same setting. Note that changing the setting of any of these
bits will corrupt all ongoing communication for both the Receiver and Transmitter.
16-bit data transfer can be achieved by writing two data bytes to UDRn. A UART transmit com-
plete interrupt will then signal that the 16-bit value has been shifted out.
The USART in MSPIM mode has to be initialized before any communication can take place.
The initialization process normally consists of setting the baud rate, setting master mode of
operation (by setting DDR_XCKn to one), setting frame format and enabling the Transmitter
and the Receiver. Only the transmitter can operate independently. For interrupt driven USART
operation, the Global Interrupt Flag should be cleared (and thus interrupts globally disabled)
when doing the initialization.
Note:
Before doing a re-initialization with changed baud rate, data mode, or frame format, be sure
that there is no ongoing transmissions during the period the registers are changed. The TXCn
Flag can be used to check that the Transmitter has completed all transfers, and the RXCn
Flag can be used to check that there are no unread data in the receive buffer. Note that the
TXCn Flag must be cleared before each transmission (before UDRn is written) if it is used for
this purpose.
To ensure immediate initialization of the XCKn output the baud-rate register (UBRRn) must be
zero at the time the transmitter is enabled. Contrary to the normal mode USART operation the
UBRRn must then be written to the desired value after the transmitter is enabled, but before the
first transmission is started. Setting UBRRn to zero before enabling the transmitter is not neces-
sary if the initialization is done immediately after a reset since UBRRn is reset to zero.
9223B–AVR–09/11

Related parts for ATmega88PA Automotive