Datasheet

Table Of Contents
29.10.7. Data Registers
The data registers are selected by the JTAG instruction registers described in section Programming
Specific JTAG Instructions. The data registers relevant for programming operations are:
Reset Register
Programming Enable Register
Programming Command Register
Virtual Flash Page Load Register
Virtual Flash Page Read Register
29.10.8. Reset Register
The Reset Register is a Test Data Register used to reset the part during programming. It is required to
reset the part before entering programming mode.
A high value in the Reset Register corresponds to pulling the external Reset low. The part is reset as long
as there is a high value present in the Reset Register. Depending on the Fuse settings for the clock
options, the part will remain reset for a Reset Time-Out Period (refer to Clock Sources) after releasing the
Reset Register. The output from this Data Register is not latched, so the reset will take place immediately,
as shown in figure Reset Register.
Related Links
Clock Sources on page 40
Reset Register on page 289
29.10.9. Programming Enable Register
The Programming Enable Register is a 16-bit register. The contents of this register is compared to the
programming enable signature, binary code 1010_0011_0111_0000. When the contents of the register is
equal to the programming enable signature, programming via the JTAG port is enabled. The Register is
reset to 0 on Power-on Reset, and should always be reset when leaving Programming mode.
Figure 29-13. Programming Enable Register
TDI
TDO
D
A
T
A
=
D Q
ClockDR & P ROG_ENABLE
Programming e nable
$A370
29.10.10. Programming Command Register
The Programming Command Register is a 15-bit register. This register is used to serially shift in
programming commands, and to serially shift out the result of the previous command, if any. The JTAG
Atmel ATmega32A [DATASHEET]
Atmel-8155I-ATmega32A_Datasheet_Complete-08/2016
348