754
SAM4CP [DATASHEET]
43051E–ATPL–08/14
Figure 36-21. Parity Error
36.6.3.9 Multidrop Mode
If the value 0x6 or 0x07 is written to the PAR field in the US_MR, the USART runs in Multidrop Mode. This mode
differentiates the data characters and the address characters. Data is transmitted with the parity bit at 0 and addresses
are transmitted with the parity bit at 1.
If the USART is configured in multidrop mode, the receiver sets the PARE parity error bit when the parity bit is high and
the transmitter is able to send a character with the parity bit high when a one is written to the SENDA bit in the US_CR.
To handle parity error, the PARE bit is cleared when a one is written to the RSTSTA bit in the US_CR.
The transmitter sends an address byte (parity bit set) when SENDA is written to in the US_CR. In this case, the next byte
written to the US_THR is transmitted as an address. Any character written in the US_THR without having written the
command SENDA is transmitted normally with the parity at 0.
36.6.3.10 Transmitter Timeguard
The timeguard feature enables the USART interface with slow remote devices.
The timeguard function enables the transmitter to insert an idle state on the TXD line between two characters. This idle
state actually acts as a long stop bit.
The duration of the idle state is programmed in the TG field of the Transmitter Timeguard Register (US_TTGR). When
this field is written to zero no timeguard is generated. Otherwise, the transmitter holds a high level on TXD after each
transmitted byte during the number of bit periods programmed in TG in addition to the number of stop bits.
As illustrated in
Figure 36-22
, the behavior of TXRDY and TXEMPTY status bits is modified by the programming of a
timeguard. TXRDY rises only when the start bit of the next character is sent, and thus remains to 0 during the timeguard
transmission if a character has been written in US_THR. TXEMPTY remains low until the timeguard transmission is
completed as the timeguard is part of the current character being transmitted.
Figure 36-22. Timeguard Operations
D0
D1
D2
D3
D4
D5
D6
D7
RXD
Start
Bit
Bad
Parity
Bit
Stop
Bit
Baud Rate
Clock
Write
US_CR
PARE
RXRDY
RSTSTA = 1
Parity Error
Detect
Time
Flags
Report
Time
D0
D1
D2
D3
D4
D5
D6
D7
TXD
Start
Bit
Parity
Bit
Stop
Bit
Baud Rate
Clock
Start
Bit
TG = 4
Write
US_THR
D0
D1
D2
D3
D4
D5
D6
D7PBit
Stop
Bit
TXRDY
TXEMPTY
TG = 4