- •Features
- •Pin Configurations
- •Overview
- •Block Diagram
- •Disclaimer
- •Pin Descriptions
- •Port A (PA7..PA0)
- •Port B (PB7..PB0)
- •Port C (PC7..PC0)
- •Port D (PD7..PD0)
- •Port E(PE2..PE0)
- •RESET
- •XTAL1
- •XTAL2
- •AVR CPU Core
- •Introduction
- •Architectural Overview
- •Status Register
- •Stack Pointer
- •Interrupt Response Time
- •In-System Reprogrammable Flash Program memory
- •SRAM Data Memory
- •Data Memory Access Times
- •EEPROM Data Memory
- •EEPROM Read/Write Access
- •I/O Memory
- •Overview
- •Address Latch Requirements
- •Pull-up and Bus Keeper
- •Timing
- •Using all Locations of External Memory Smaller than 64 KB
- •Using all 64KB Locations of External Memory
- •Clock Systems and their Distribution
- •Clock Sources
- •Default Clock Source
- •Crystal Oscillator
- •External RC Oscillator
- •External Clock
- •Idle Mode
- •Power-down Mode
- •Standby Mode
- •Analog Comparator
- •Brown-out Detector
- •Internal Voltage Reference
- •Watchdog Timer
- •Port Pins
- •Resetting the AVR
- •Reset Sources
- •Power-on Reset
- •External Reset
- •Brown-out Detection
- •Watchdog Reset
- •Watchdog Timer
- •Timed Sequences for Changing the Configuration of the Watchdog Timer
- •Safety Level 0
- •Safety Level 1
- •Safety Level 2
- •Interrupts
- •Moving Interrupts between Application and Boot Space
- •I/O Ports
- •Introduction
- •Configuring the Pin
- •Reading the Pin Value
- •Unconnected pins
- •Alternate Port Functions
- •Alternate Functions of Port A
- •Alternate Functions Of Port B
- •Alternate Functions of Port C
- •Alternate Functions of Port D
- •Alternate Functions of Port E
- •Register Description for I/O Ports
- •External Interrupts
- •8-bit Timer/Counter0 with PWM
- •Overview
- •Registers
- •Definitions
- •Counter Unit
- •Output Compare Unit
- •Force Output Compare
- •Modes of Operation
- •Normal Mode
- •Fast PWM Mode
- •Phase Correct PWM Mode
- •Internal Clock Source
- •Prescaler Reset
- •External Clock Source
- •16-bit Timer/Counter1
- •Overview
- •Registers
- •Definitions
- •Compatibility
- •Counter Unit
- •Input Capture Unit
- •Input Capture Trigger Source
- •Noise Canceler
- •Using the Input Capture Unit
- •Output Compare Units
- •Force Output Compare
- •Modes of Operation
- •Normal Mode
- •Fast PWM Mode
- •Phase Correct PWM Mode
- •Slave Mode
- •Master Mode
- •Data Modes
- •USART
- •Single USART
- •Clock Generation
- •External Clock
- •Synchronous Clock Operation
- •Frame Formats
- •Parity Bit Calculation
- •USART Initialization
- •Sending Frames with 5 to 8 Data Bits
- •Sending Frames with 9 Data Bits
- •Parity Generator
- •Disabling the Transmitter
- •Receiving Frames with 5 to 8 Data Bits
- •Receiving Frames with 9 Data Bits
- •Receiver Error Flags
- •Parity Checker
- •Disabling the Receiver
- •Flushing the Receive Buffer
- •Asynchronous Data Recovery
- •Using MPCM
- •Write Access
- •Read Access
- •Analog Comparator
- •Features
- •Application Section
- •Boot Loader Lock bits
- •Performing a Page Write
- •Using the SPM Interrupt
- •Setting the Boot Loader Lock bits by SPM
- •Reading the Fuse and Lock bits from Software
- •Preventing Flash Corruption
- •Simple Assembly Code Example for a Boot Loader
- •Program and Data Memory Lock bits
- •Fuse bits
- •Latching of Fuses
- •Signature Bytes
- •Calibration Byte
- •Calibration Byte
- •Signal Names
- •Parallel Programming
- •Enter Programming Mode
- •Chip Erase
- •Programming the Flash
- •Programming the EEPROM
- •Reading the Flash
- •Reading the EEPROM
- •Programming the Lock bits
- •Reading the Signature Bytes
- •Reading the Calibration Byte
- •Serial Downloading
- •Data Polling Flash
- •Data Polling EEPROM
- •Electrical Characteristics
- •Absolute Maximum Ratings*
- •External Clock Drive Waveforms
- •External Clock Drive
- •External Data Memory Timing
- •Active Supply Current
- •Idle Supply Current
- •Standby Supply Current
- •Pin Pull-up
- •Pin Driver Strength
- •Internal Oscillator Speed
- •Register Summary
- •Instruction Set Summary
- •Ordering Information
- •Packaging Information
- •Errata
- •ATmega8515(L) Rev. B
- •Changes from Rev. 2512F-12/03 to Rev. 2512G-03/05
- •Changes from Rev. 2512F-12/03 to Rev. 2512E-09/03
- •Changes from Rev. 2512D-02/03 to Rev. 2512E-09/03
- •Changes from Rev. 2512C-10/02 to Rev. 2512D-02/03
- •Changes from Rev. 2512B-09/02 to Rev. 2512C-10/02
- •Changes from Rev. 2512A-04/02 to Rev. 2512B-09/02
- •Table of Contents
|
|
|
ATmega8515(L) |
|
|
|
|
|
Port Pins |
|
|
|
When entering a sleep mode, all port pins should be configured to use minimum power. |
||
|
|||
|
|
The most important thing is to ensure that no pins drive resistive loads. In sleep modes |
|
|
|
where the I/O clock (clkI/O) is stopped, the input buffers of the device will be disabled. |
|
|
|
This ensures that no power is consumed by the input logic when not needed. In some |
|
|
|
cases, the input logic is needed for detecting wake-up conditions, and it will then be |
|
|
|
enabled. Refer to the section “Digital Input Enable and Sleep Modes” on page 62 for |
|
|
|
details on which pins are enabled. If the input buffer is enabled and the input signal is |
|
|
|
left floating or have an analog signal level close to VCC/2, the input buffer will use exces- |
|
|
|
sive power. |
43
2512G–AVR–03/05
System Control and
Reset
Resetting the AVR |
During Reset, all I/O Registers are set to their initial values, and the program starts exe- |
||
|
cution from the Reset Vector. The instruction placed at the Reset Vector must be a |
||
|
RJMP 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 22 shows the reset logic. Table 18 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 |
||
|
CKSEL Fuses. The different selections for the delay period are presented in “Clock |
||
|
Sources” on page 34. |
||
Reset Sources |
The ATmega8515 has four sources of reset: |
||
|
• Power-on Reset. The MCU is reset when the supply voltage is below the Power-on |
||
|
Reset threshold (VPOT). |
||
|
• 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 VCC is below the |
||
|
Brown-out Reset threshold (VBOT) and the Brown-out Detector is enabled. |
44 ATmega8515(L)
2512G–AVR–03/05
ATmega8515(L)
Figure 22. Reset Logic
|
|
|
|
|
|
|
|
|
|
|
|
Power-on |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Reset Circuit |
|||
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
BODEN |
|
|
|
|
|
|
|
|
Brown-out |
|||||
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
Reset Circuit |
||||||
|
BODLEVEL |
|
|
|
|
|
|
|
|
||||||
|
|
|
|
Pull-up Resistor |
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Spike |
|
Reset Circuit |
|||||
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
Filter |
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Watchdog |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Timer |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Watchdog |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Oscillator |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Clock |
|||
|
|
|
|
|
|
|
|
|
|
|
|
Generator |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
CKSEL[3:0] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
SUT[1:0] |
DATA BUS
MCU Control and Status
Register (MCUCSR)
PORF |
BORF |
EXTRF |
WDRF |
CK |
Delay Counters |
TIMEOUT
Table 18. |
Reset Characteristics |
|
|
|
|
|
|||
Symbol |
Parameter |
Condition |
Min |
Typ |
Max |
Units |
|||
|
|
|
|
|
|
|
|
||
|
|
Power-on Reset Threshold |
|
|
1.4 |
2.3 |
V |
||
|
|
Voltage (rising)(1) |
|
|
|||||
VPOT |
|
|
|
|
|
|
|||
|
Power-on Reset Threshold |
|
|
1.3 |
2.3 |
V |
|||
|
|
|
|
||||||
|
|
Voltage (falling) |
|
|
|||||
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
VRST |
|
|
|
Pin Threshold Voltage |
|
0.1 |
|
0.9 |
VCC |
|
RESET |
|
|
||||||
tRST |
|
Minimum pulse width on |
|
|
|
1.5 |
µs |
||
|
RESET |
Pin |
|
|
|
||||
VBOT |
|
Brown-out Reset Threshold |
BODLEVEL = 1 |
2.5 |
2.7 |
3.2 |
V |
||
|
Voltage(2) |
|
|
|
|
||||
|
BODLEVEL = 0 |
3.7 |
4.0 |
4.2 |
|||||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
||
tBOD |
|
Minimum low voltage period for |
BODLEVEL = 1 |
|
2 |
|
µs |
||
|
Brown-out Detection |
|
|
|
|
|
|||
|
BODLEVEL = 0 |
|
2 |
|
µs |
||||
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
||
VHYST |
|
Brown-out Detector hysteresis |
|
|
130 |
|
mV |
Notes: 1. The Power-on Reset will not work unless the supply voltage has been below VPOT (falling).
2.VBOT may be below nominal minimum operating voltage for some devices. For devices where this is the case, the device is tested down to VCC = VBOT during the production test. This guarantees that a Brown-out Reset will occur before VCC drops to a voltage where correct operation of the microcontroller is no longer guaranteed. The test is performed using BODLEVEL=1 for ATmega8515L and BODLEVEL=0 for ATmega8515. BODLEVEL=1 is not applicable for ATmega8515.
45
2512G–AVR–03/05
Power-on Reset |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A Power-on Reset (POR) pulse is generated by an On-chip detection circuit. The detec- |
||||||||||||||||
|
tion level is defined in Table 18. The POR is activated whenever VCC is below the |
|||||||||||||||
|
detection level. The POR circuit can be used to trigger the Start-up Reset, as well as to |
|||||||||||||||
|
detect a failure in supply voltage. |
|||||||||||||||
|
A Power-on Reset (POR) circuit ensures that the device is reset from Power-on. Reach- |
|||||||||||||||
|
ing the Power-on Reset threshold voltage invokes the delay counter, which determines |
|||||||||||||||
|
how long the device is kept in RESET after VCC rise. The RESET signal is activated |
|||||||||||||||
|
again, without any delay, when VCC decreases below the detection level. |
|||||||||||||||
|
Figure 23. MCU Start-up, |
|
|
|
Tied to VCC |
|||||||||||
|
RESET |
|||||||||||||||
|
|
VCC |
|
VPOT |
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
VRST |
|||||||||||
|
|
RESET |
||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
TIME-OUT |
|
|
|
tTOUT |
|
|
|
|
|||||||
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
INTERNAL
RESET
Figure 24. MCU Start-up, RESET Extended Externally
VPOT
VCC
VRST
RESET
tTOUT
TIME-OUT
INTERNAL
RESET
46 ATmega8515(L)
2512G–AVR–03/05