257
ATmega16M1/32M1/64M1 [DATASHEET]
8209E–AVR–11/2012
Capacitors connected to the RESET pin must be disconnected when using debugWire
All external reset sources must be disconnected
25.4
Software break points
debugWIRE supports program memory break points by the AVR Break instruction. Setting a Break Point in Atmel
AVR Studio will insert a BREAK instruction in the Program memory. The instruction replaced by the BREAK
instruction will be stored. When program execution is continued, the stored instruction will be executed before con-
tinuing from the Program memory. A break can be inserted manually by putting the BREAK instruction in the
program.
The flash must be re-programmed each time a Break Point is changed. This is automatically handled by AVR Stu-
dio through the debugWIRE interface. The use of Break Points will therefore reduce the Flash Data retention.
Devices used for debugging purposes should not be shipped to end customers.
25.5
Limitations of debugWIRE
The debugWIRE communication pin (dW) is physically located on the same pin as External Reset (RESET). An
External Reset source is therefore not supported when the debugWIRE is enabled.
The debugWIRE system accurately emulates all I/O functions when running at full speed, that is, when the pro-
gram in the CPU is running. When the CPU is stopped, care must be taken while accessing some of the I/O
Registers via the debugger (AVR Studio).
A programmed DWEN Fuse enables some parts of the clock system to be running in all sleep modes. This will
increase the power consumption while in sleep. Thus, the DWEN Fuse should be disabled when debugWire is not
used.
25.6
Register description
25.6.1
DWDR – debugWire Data Register
The DWDR Register provides a communication channel from the running program in the MCU to the debugger.
This register is only accessible by the debugWIRE and can therefore not be used as a general purpose register in
the normal operations.
Bit
76543210
DWDR[7:0]
DWDR
Read/write
R/W
Initial value
00000000