Datasheet

50
ATmega16U4/32U4 [DATASHEET]
Atmel-7766J-USB-ATmega16U4/32U4-Datasheet_04/2016
8. System Control and Reset
8.1 Resetting the AVR
During reset, all I/O Registers are set to their initial values, and the program starts execution from the Reset
Vector. The instruction placed at the Reset Vector must be a JMP – Absolute Jump – instruction to the reset
handling routine. If the program never enables an interrupt source, the Interrupt Vectors are not used, and
regular program code can be placed at these locations. This is also the case if the Reset Vector is in the
Application section while the Interrupt Vectors are in the Boot section or vice versa. The circuit diagram in Figure
8-1 on page 51 shows the reset logic. Table 29-3 on page 386 defines the electrical parameters of the reset
circuitry.
The I/O ports of the AVR are immediately reset to their initial state when a reset source goes active. This does
not require any clock source to be running.
After all reset sources have gone inactive, a delay counter is invoked, stretching the internal reset. This allows
the power to reach a stable level before normal operation starts. The time-out period of the delay counter is
defined by the user through the SUT and CKSEL Fuses. The different selections for the delay period are
presented in “Clock Sources” on page 28.
8.2 Reset Sources
The ATmega16U4/ATmega32U4 has five sources of reset:
Power-on Reset. The MCU is reset when the supply voltage is below the Power-on Reset threshold
(V
POT
).
External Reset. The MCU is reset when a low level is present on the RESET pin for longer than the
minimum pulse length.
Watchdog Reset. The MCU is reset when the Watchdog Timer period expires and the Watchdog is
enabled.
Brown-out Reset. The MCU is reset when the supply voltage V
CC
is below the Brown-out Reset threshold
(V
BOT
) and the Brown-out Detector is enabled.
JTAG AVR Reset. The MCU is reset as long as there is a logic one in the Reset Register, one of the scan
chains of the JTAG system. Refer to the section “IEEE 1149.1 (JTAG) Boundary-scan” on page 325 for
details.
USB End of Reset. The MCU is reset (excluding the USB controller that remains enabled and attached)
on the detection of a USB End of Reset condition on the bus, if this feature is enabled by the user.