beautypg.com

Using the on-chip debug system, Atmega162/v – Rainbow Electronics ATmega162V User Manual

Page 200

background image

200

ATmega162/V

2513E–AVR–09/03

Using the On-chip Debug
system

As shown in Figure 83, the hardware support for On-chip Debugging consists mainly of

A scan chain on the interface between the internal AVR CPU and the internal
peripheral units

Break Point unit

Communication interface between the CPU and JTAG system

All read or modify/write operations needed for implementing the Debugger are done by
applying AVR instructions via the internal AVR CPU Scan Chain. The CPU sends the
result to an I/O memory mapped location which is part of the communication interface
between the CPU and the JTAG system.

The Break Point unit implements Break on Change of program flow, Single Step Break,
two Program memory Break Points, and two Combined Break Points. Together, the four
Break Points can be configured as either:

4 single Program Memory Break Points

3 Single Program Memory Break Point + 1 single Data Memory Break Point

2 single Program Memory Break Points + 2 single Data Memory Break Points

2 single Program Memory Break Points + 1 Program Memory Break Point with mask
(“range Break Point”)

2 single Program Memory Break Points + 1 Data Memory Break Point with mask
(“range Break Point”)

A debugger, like the AVR Studio

®

, may however use one or more of these resources for

its internal purpose, leaving less flexibility to the end-user.

A list of the On-chip Debug specific JTAG instructions is given in “On-chip debug spe-
cific JTAG instructions” on page 201.

The JTAGEN Fuse must be programmed to enable the JTAG Test Access Port. In addi-
tion, the OCDEN Fuse must be programmed and no Lock bits must be set for the On-
chip debug system to work. As a security feature, the On-chip debug system is disabled
when either of the LB1 or LB2 Lock bits are set. Otherwise, the On-chip debug system
would have provided a backdoor into a secured device.

The AVR Studio enables the user to fully control execution of programs on an AVR
device with On-chip Debug capability, AVR In-Circuit Emulator, or the built-in AVR
Instruction Set Simulator. AVR Studio supports source level execution of Assembly pro-
grams assembled with Atmel Corporation’s AVR Assembler and C programs compiled
with third party vendors’ compilers.

AVR Studio runs under Microsoft

®

Windows

®

95/98/2000, Windows NT

®

, and

Windows XP

®

.

For a full description of the AVR Studio, please refer to the AVR Studio User Guide.
Only highlights are presented in this document.

All necessary execution commands are available in AVR Studio, both on source level
and on disassembly level. The user can execute the program, single step through the
code either by tracing into or stepping over functions, step out of functions, place the
cursor on a statement and execute until the statement is reached, stop the execution,
and reset the execution target. In addition, the user can have an unlimited number of
code Break Points (using the BREAK instruction) and up to two data memory Break
Points, alternatively combined as a mask (range) Break Point.