]>
Commit | Line | Data |
---|---|---|
575a77a6 GS |
1 | ------------------------------------------------------------------------------- |
2 | AVR PDI / Atmel ATxmega128A1 | |
3 | ------------------------------------------------------------------------------- | |
4 | ||
5 | These are example captures of the Atmel Program and Debug Interface (PDI). | |
6 | ||
7 | The programmer is Atmel's JTAG ICE III and avrdude 6.0.1. The target device | |
8 | is an ATxmega128A1 (Atmel's Xplained eval board). | |
9 | ||
10 | ||
11 | Logic analyzer setup | |
12 | -------------------- | |
13 | ||
14 | The logic analyzer used was an Asix Sigma2 (at 10MHz): | |
15 | ||
16 | Probe Signal | |
17 | ----------------------- | |
18 | 1 RESET / PDI_CLK | |
19 | 2 PDI_DATA | |
20 | ||
21 | ||
22 | Data | |
23 | ---- | |
24 | ||
25 | The following activities were captured: | |
26 | ||
27 | - Identify a target device: | |
28 | avrdude -c jtag3pdi -p x128a1 | |
29 | ||
30 | - Program (write) a blinkenlight firmware: | |
31 | avrdude -c jtag3pdi -p x128a1 -Uflash:w:blinky.hex | |
32 | ||
33 | - Verify (read back) the blinkenlight firmware: | |
34 | avrdude -c jtag3pdi -p x128a1 -Uflash:v:blinky.hex | |
35 | ||
36 | The protocol decoder can extract data when used like this: | |
37 | ||
38 | - Get the bytes which form the PDI requests and responses: | |
39 | sigrok-cli -i atxmega128a1-pdi-identify.sr -P avr_pdi -B avr_pdi=bytes | hexdump -Cv | |
40 | ||
41 | - Get the interpreted PDI instructions and their data: | |
42 | sigrok-cli -i atxmega128a1-pdi-identify.sr -P avr_pdi -A avr_pdi=cmd-data |