418
8331B–AVR–03/12
Atmel AVR XMEGA AU
Three different characters are used, DATA, BREAK, and IDLE. The BREAK character is equal
to a 12-bit length of low level. The IDLE character is equal to a 12- bit length of high level. The
BREAK and IDLE characters can be extended beyond the 12-bit length.
Figure 32-5.
Characters and timing for the PDI physical layer.
32.3.4
Serial Transmission and Reception
The PDI physical layer is either in transmit (TX) or receive (RX) mode. By default, it is in RX
mode, waiting for a start bit.
The programmer and the PDI operate synchronously on the PDI_CLK provided by the program-
mer. The dependency between the clock edges and data sampling or data change is fixed. As
illustrated in
, output data (either from the programmer or the PDI) is
always set up (changed) on the falling edge of PDI_CLK and sampled on the rising edge of
PDI_CLK.
Figure 32-6.
Changing and sampling of data.
32.3.5
Serial Transmission
When a data transmission is initiated, by the PDI controller, the transmitter simply shifts out the
start bit, data bits, parity bit, and the two stop bits on the PDI_DATA line. The transmission
speed is dictated by the PDI_CLK signal. While in transmission mode, IDLE bits (high bits) are
automatically transmitted to fill possible gaps between successive DATA characters. If a colli-
sion is detected during transmission, the output driver is disabled, and the interface is put into
RX mode waiting for a BREAK character.
START
0
1
2
3
4
5
6
7
P
STOP
1 IDLE character
BREAK
IDLE
1 DATA character
1 BREAK character
PDI_CLK
PDI_DATA
Sample
Sample
Sample