4 software break points, 5 limitations of debugwire, 6 register description – Rainbow Electronics ATmega64M1 User Manual

Page 271: 1 dwdr – debugwire data register

Advertising
background image

271

8209A–AVR–08/09

ATmega16M1/32M1/64M1

When designing a system where debugWIRE will be used, the following observations must be
made for correct operation:

• Pull-up resistors on the dW/(RESET) line must not be smaller than 10k

Ω

. The pull-up resistor

is not required for debugWIRE functionality.

• Connecting the RESET pin directly to V

CC

will not work.

• Capacitors connected to the RESET pin must be disconnected when using debugWire.

• All external reset sources must be disconnected.

26.4

Software Break Points

debugWIRE supports Program memory Break Points by the AVR Break instruction. Setting a
Break Point in AVR Studio

®

will insert a BREAK instruction in the Program memory. The instruc-

tion replaced by the BREAK instruction will be stored. When program execution is continued, the
stored instruction will be executed before continuing 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 Studio 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.

26.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, i.e.,
when the program 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.

26.6

Register Description

26.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

7

6

5

4

3

2

1

0

DWDR[7:0]

DWDR

Read/Write

R/W

R/W

R/W

R/W

R/W

R/W

R/W

R/W

Initial Value

0

0

0

0

0

0

0

0

Advertising