English
Language : 

MEGA128CAN Datasheet, PDF (176/413 Pages) ATMEL Corporation – Microcontroller WITH 128K BYTES OF ISP FLASH AND CAN CONTROLLER
Parity Bit Calculation
USART Initialization
P
Parity bit. Can be odd or even.
Sp Stop bit, always high.
IDLE No transfers on the communication line (RxDn or TxDn). An IDLE line must be
high.
The frame format used by the USARTn is set by the UCSZn2:0, UPMn1:0 and USBSn
bits in UCSRnB and UCSRnC. The Receiver and Transmitter use the same setting.
Note that changing the setting of any of these bits will corrupt all ongoing communica-
tion for both the Receiver and Transmitter.
The USARTn Character SiZe (UCSZn2:0) bits select the number of data bits in the
frame. The USARTn Parity mode (UPMn1:0) bits enable and set the type of parity bit.
The selection between one or two stop bits is done by the USARTn Stop Bit Select
(USBSn) bit. The Receiver ignores the second stop bit. An FEn (Frame Error) will there-
fore only be detected in the cases where the first stop bit is zero.
The parity bit is calculated by doing an exclusive-or of all the data bits. If odd parity is
used, the result of the exclusive or is inverted. The relation between the parity bit and
data bits is as follows:
Peven = dn – 1 ⊕ … ⊕ d3 ⊕ d2 ⊕ d1 ⊕ d0 ⊕ 0
Podd = dn – 1 ⊕ … ⊕ d3 ⊕ d2 ⊕ d1 ⊕ d0 ⊕ 1
Peven Parity bit using even parity
Podd Parity bit using odd parity
dn
Data bit n of the character
If used, the parity bit is located between the last data bit and first stop bit of a serial
frame.
The USARTn has to be initialized before any communication can take place. The initial-
ization process normally consists of setting the baud rate, setting frame format and
enabling the Transmitter or the Receiver depending on the usage. For interrupt driven
USARTn operation, the Global Interrupt Flag should be cleared (and interrupts globally
disabled) when doing the initialization.
Before doing a re-initialization with changed baud rate or frame format, be sure that
there are 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 writ-
ten) if it is used for this purpose.
176 AT90CAN128
4250E–CAN–12/04