ATMEL ATXMEGA64A4 8/16-bit xmega a4 microcontroller Datasheet

Features
• High-performance, Low-power AVR 8/16-bit AVR XMEGA Microcontroller
• Non-volatile Program and Data Memories
•
•
•
•
•
– 16K - 128K Bytes of In-System Self-Programmable Flash
– 4K Boot Code Section with Independent Lock Bits
– 1K - 2K Bytes EEPROM
– 2K - 8K Bytes Internal SRAM
Peripheral Features
– Four-channel DMA Controller with support for external requests
– Eight-channel Event System
– Five 16-bit Timer/Counters
Three Timer/Counters with 4 Output Compare or Input Capture channels
Two Timer/Counters with 2 Output Compare or Input Capture channels
High-Resolution Extensions on all Timer/Counters
Advanced Waveform Extension on one Timer/Counter
– Five USARTs
IrDA Extension on one USART
– Two Two-Wire Interfaces with dual address match (I2C and SMBus compatible)
– Two SPIs (Serial Peripheral Interfaces) peripherals
– AES and DES Crypto Engine
– 16-bit Real Time Counter with Separate Oscillator
– One Twelve-channel, 12-bit, 2 Msps Analog to Digital Converter
– One Two-channel, 12-bit, 1 Msps Digital to Analog Converter
– Two Analog Comparators with Window compare function
– External Interrupts on all General Purpose I/O pins
– Programmable Watchdog Timer with Separate On-chip Ultra Low Power Oscillator
Special Microcontroller Features
– Power-on Reset and Programmable Brown-out Detection
– Internal and External Clock Options with PLL
– Programmable Multi-level Interrupt Controller
– Sleep Modes: Idle, Power-down, Standby, Power-save, Extended Standby
– Advanced Programming, Test and Debugging Interfaces
PDI (Program and Debug Interface) for programming, test and debugging
I/O and Packages
– 36 Programmable I/O Lines
– 44-lead TQFP
– 44-pad MLF
Operating Voltage
– 1.6 – 3.6V
Speed performance
– 0 – 12 MHz @ 1.6 – 2.7V
– 0 – 32 MHz @ 2.7 – 3.6V
8/16-bit
XMEGA A4
Microcontroller
ATxmega128A4
ATxmega64A4
ATxmega32A4
ATxmega16A4
Preliminary
Typical Applications
•
•
•
•
•
Industrial control
Factory automation
Building control
Board control
White Goods
•
•
•
•
•
Climate control
ZigBee
Motor control
Networking
Optical
•
•
•
•
•
Hand-held battery applications
Power tools
HVAC
Metering
Medical Applications
8069C–AVR–06/08
XMEGA A4
1. Ordering Information
Ordering Code
Flash (B)
E2 (B)
SRAM (B)
Speed (MHz)
Power Supply
ATxmega128A4-AU
128K + 4K
2K
8K
32
1.6 - 3.6V
ATxmega64A4-AU
64K + 4K
2K
4K
32
1.6 - 3.6V
ATxmega32A4-AU
32K + 4K
2K
4K
32
1.6 - 3.6V
ATxmega16A4-AU
16K + 4K
1K
2K
32
1.6 - 3.6V
ATxmega128A4-MU
128K + 4K
2K
8K
32
1.6 - 3.6V
ATxmega64A4-MU
64K + 4K
2K
4K
32
1.6 - 3.6V
ATxmega32A4-MU
32K + 4K
2K
4K
32
1.6 - 3.6V
ATxmega16A4-MU
16K + 4K
1K
2K
32
1.6 - 3.6V
Notes:
Package(1)(2)(3)
Temp
44A
-40° - 85°
44M1
1. This device can also be supplied in wafer form. Please contact your local Atmel sales office for detailed ordering information.
2. Pb-free packaging, complies to the European Directive for Restriction of Hazardous Substances (RoHS directive). Also
Halide free and fully Green.
3. For packaging information see ”Packaging information” on page 56.
Package Type
44A
44-lead, 10 x 10 mm Body Size, 1.0 mm Body Thickness, 0.8 mm Lead Pitch, Thin Profile Plastic Quad Flat Package (TQFP)
44M1
44-pad, 7 x 7 x 1.0 mm Body, Lead Pitch 0.50 mm, 5.20 mm Exposed Pad, Micro Lead Frame Package (MLF)
2. Pinout/Block Diagram
PA6
2
PA7
3
PB0
AVCC
GND
PR1
PR0
RESET/PDI_CLK
PDI_DATA
39
38
37
36
35
34
PA1
41
PA0
PA2
42
DATA BU S
OSC/CLK
Control
ADC A
4
BOD
VREF
POR
TEMP
RTC
OCD
AC A0
Power
Control
AC A1
PB1
40
PA3
43
Port R
FLASH
5
CPU
Event System ctrl
8
T/C0:1
10
SPI
PC0
TWI
9
Port C
Note:
Port D
PE2
31
VCC
30
GND
29
PE1
28
PE0
27
PD7
26
PD6
25
PD5
24
PD4
23
PD3
Port E
12
13
14
15
16
17
18
19
20
21
22
PC3
PC4
PC5
PC6
PC7
GND
VCC
PD0
PD1
PD2
11
PC2
PC1
32
DATA BU S
EVENT ROUTING NETWORK
T/C0:1
VCC
PE3
Watchdog
USART0:1
GND
Interrupt Controller
DAC B
T/C0
7
E2PROM
SPI
PB3
33
RAM
DMA
USART0:1
6
Port B
PB2
Reset
Control
TWI
1
USART0
PA5
A Port A
INDEX CORNER
PA4
Bock Diagram and TDFP-pinout.
44
Figure 2-1.
For full details on pinout and pin functions refer to ”Pinout and Pin Functions” on page 47.
2
8069C–AVR–06/08
XMEGA A4
3. Overview
The XMEGA A4 is a family of low power, high performance and peripheral rich CMOS 8/16-bit
microcontrollers based on the AVR ® enhanced RISC architecture. By executing powerful
instructions in a single clock cycle, the XMEGA A4 achieves throughputs approaching 1 Million
Instructions Per Second (MIPS) per MHz allowing the system designer to optimize power consumption versus processing speed.
The AVR CPU combines a rich instruction set with 32 general purpose working registers. All the
32 registers are directly connected to the Arithmetic Logic Unit (ALU), allowing two independent
registers to be accessed in one single instruction, executed in one clock cycle. The resulting
architecture is more code efficient while achieving throughputs many times faster than conventional single-accumulator or CISC based microcontrollers.
The XMEGA A4 devices provides the following features: In-System Programmable Flash with
Read-While-Write capabilities, Internal EEPROM and SRAM, four-channel DMA Controller,
eight-channel Event System, Programmable Multi-level Interrupt Controller, 36 general purpose
I/O lines, 16-bit Real Time Counter (RTC), five flexible 16-bit Timer/Counters with compare
modes and PWM, five USARTs, two Two Wire Serial Interfaces (TWIs), two Serial Peripheral
Interfaces (SPIs), AES and DES crypto engine, one Twelve-channel, 12-bit ADC with optional
differential input with programmable gain, one Two-channel, 12-bit DAC, two analog comparators with window mode, programmable Watchdog Timer with separate Internal Oscillator,
accurate internal oscillators with PLL and prescaler and programmable Brown-Out Detection.
The Program and Debug Interface (PDI), a fast 2-pin interface for programming and debugging,
is available.
The XMEGA A4 devices have five software selectable power saving modes. The Idle mode
stops the CPU while allowing the SRAM, DMA Controller, Event System, Interrupt Controller and
all peripherals to continue functioning. The Power-down mode saves the SRAM and register
contents but stops the oscillators, disabling all other functions until the next TWI or pin-change
interrupt, or Reset. In Power-save mode, the asynchronous Real Time Counter continues to run,
allowing the application to maintain a timer base while the rest of the device is sleeping. In
Standby mode, the Crystal/Resonator Oscillator is kept running while the rest of the device is
sleeping. This allows very fast start-up from external crystal combined with low power consumption. In Extended Standby mode, both the main Oscillator and the Asynchronous Timer continue
to run. To further reduce power consumption, the peripheral clock to each individual peripheral
can optionally be stopped in Active mode and in Idle sleep mode.
The device is manufactured using Atmel's high-density nonvolatile memory technology. The program Flash memory can be reprogrammed in-system through the PDI. A Bootloader running in
the device can use any interface to download the application program to the Flash memory. The
Bootloader software in the Boot Flash section will continue to run while the Application Flash
section is updated, providing true Read-While-Write operation. By combining an 8/16-bit RISC
CPU with In-System Self-Programmable Flash, the Atmel XMEGA A4 is a powerful microcontroller family that provides a highly flexible and cost effective solution for many embedded
applications.
The XMEGA A4 devices is supported with a full suite of program and system development tools
including: C compilers, macro assemblers, program debugger/simulators, programmers, and
evaluation kits.
3
8069C–AVR–06/08
XMEGA A4
3.1
Block Diagram
Figure 3-1.
XMEGA A4 Block Diagram
PR[0..1]
XTAL1/
TOSC1
PORT R (2)
XTAL2/
TOSC2
Oscillator
Circuits/
Clock
Generation
Watchdog
Oscillator
Real Time
Counter
Watchdog
Timer
DATA BUS
PA[0..7]
PORT A (8)
Event System
Controller
Oscillator
Control
VCC
Power
Supervision
POR/BOD &
RESET
GND
SRAM
ACA
DMA
Controller
Sleep
Controller
RESET/
PDI_CLK
PDI
ADCA
PDI_DATA
AREFA
BUS
Controller
Prog/Debug
Controller
Internal
Reference
DES
OCD
AREFB
CPU
PORT B (4)
DACB
NVM Controller
TWIE
USARTE0
Flash
IRCOM
EEPROM
TCE0
PORT E (4)
Interrupt
Controller
AES
PB[0..3]
PE[0..3]
DATA BUS
SPID
TCD0:1
USARTD0:1
SPIC
TWIC
TCC0:1
USARTC0:1
EVENT ROUTING NETWORK
PORT C (8)
PORT D (8)
PC[0..7]
PD[0..7]
4
8069C–AVR–06/08
XMEGA A4
4. Resources
A comprehensive set of development tools, application notes and datasheets are available for
download on http://www.atmel.com/avr.
4.1
Recommended reading
• XMEGA A Manual
• XMEGA A Application Notes
This device data sheet only contains part specific information and a short description of each
peripheral and module. The XMEGA A Manual describes the modules and peripherals in depth.
The XMEGA A application notes contain example code and show applied use of the modules
and peripherals.
The XMEGA A Manual and Application Notes are available from http://www.atmel.com/avr.
5. Disclaimer
For devices that are not available yet, typical values contained in this datasheet are based on
simulations and characterization of other AVR XMEGA microcontrollers manufactured on the
same process technology. Min. and Max values will be available after the device is
characterized.
5
8069C–AVR–06/08
XMEGA A4
6. AVR CPU
6.1
Features
• 8/16-bit high performance AVR RISC Architecture
•
•
•
•
•
•
•
6.2
– 138 instructions
– Hardware multiplier
32x8-bit registers directly connected to the ALU
Stack in RAM
Stack Pointer accessible in I/O memory space
Direct addressing of up to 16M Bytes of program and data memory
True 16/24-bit access to 16/24-bit I/O registers
Support for 8-, 16- and 32-bit Arithmetic
Configuration Change Protection of system critical features
Overview
The XMEGA A4 uses the 8/16-bit AVR CPU. The main function of the CPU is program execution. The CPU must therefore be able to access memories, perform calculations and control
peripherals. Interrupt handling is described in a separate section. Figure 6-1 on page 6 shows
the CPU block diagram.
Figure 6-1.
CPU block diagram
DATA BUS
Flash
Program
Memory
Program
Counter
OCD
Instruction
Register
STATUS/
CONTROL
Instruction
Decode
32 x 8 General
Purpose
Registers
ALU
Multiplier/
DES
DATA BUS
Peripheral
Module 1
Peripheral
Module 2
SRAM
EEPROM
PMIC
The AVR uses a Harvard architecture - with separate memories and buses for program and
data. Instructions in the program memory are executed with a single level pipeline. While one
instruction is being executed, the next instruction is pre-fetched from the program memory. This
6
8069C–AVR–06/08
XMEGA A4
concept enables instructions to be executed in every clock cycle. The program memory is InSystem Re-programmable Flash memory.
6.3
Register File
The fast-access Register File contains 32 x 8-bit general purpose working registers with single
clock cycle access time. This allows single-cycle Arithmetic Logic Unit (ALU) operation. In a typical ALU cycle, the operation is performed on two Register File operands, and the result is stored
back in the Register File.
Six of the 32 registers can be used as three 16-bit address register pointers for data space
addressing - enabling efficient address calculations. One of these address pointers can also be
used as an address pointer for look up tables in Flash program memory.
6.4
ALU - Arithmetic Logic Unit
The high performance Arithmetic Logic Unit (ALU) supports arithmetic and logic operations
between registers or between a constant and a register. Single register operations can also be
executed. Within a single clock cycle, arithmetic operations between general purpose registers
or between a register and an immediate are executed. After an arithmetic or logic operation, the
Status Register is updated to reflect information about the result of the operation.
The ALU operations are divided into three main categories – arithmetic, logical, and bit-functions. Both 8- and 16-bit arithmetic is supported, and the instruction set allows for efficient
implementation of 32-bit arithmetic. The ALU also provides a powerful multiplier supporting both
signed and unsigned multiplication and fractional format.
6.5
Program Flow
When the device is powered on, the CPU starts to execute instructions from the lowest address
in the Flash Program Memory ‘0’. The Program Counter (PC) addresses the next instruction to
be fetched. After a reset, the PC is set to location ‘0’.
Program flow is provided by conditional and unconditional jump and call instructions, capable of
addressing the whole address space directly. Most AVR instructions use a 16-bit word format,
while a limited number uses a 32-bit format.
During interrupts and subroutine calls, the return address PC is stored on the Stack. The Stack
is effectively allocated in the general data SRAM, and consequently the Stack size is only limited
by the total SRAM size and the usage of the SRAM. After reset the Stack Pointer (SP) points to
the highest address in the internal SRAM. The SP is read/write accessible in the I/O memory
space, enabling easy implementation of multiple stacks or stack areas. The data SRAM can
easily be accessed through the five different addressing modes supported in the AVR CPU.
7
8069C–AVR–06/08
XMEGA A4
7. Memories
7.1
Features
• Flash Program Memory
– One linear address space
– In-System Programmable
– Self-Programming and Bootloader support
– Application Section for application code
– Application Table Section for application code or data storage
– Boot Section for application code or bootloader code
– Separate lock bits and protection for all sections
• Data Memory
– One linear address space
– Single cycle access from CPU
– SRAM
– EEPROM
Byte or page accessible
Optional memory mapping for direct load and store
– I/O Memory
Configuration and Status registers for all peripherals and modules
16-bit accessible General Purpose Register for global variables or flags
– External Memory support
– Bus arbitration
Safe and deterministic handling of CPU and DMA Controller priority
– Separate buses for SRAM, EEPROM, I/O Memory and External Memory access
Simultaneous bus access for CPU and DMA Controller
• Calibration Row Memory for factory programmed data
Oscillator calibration bytes
Serial number
Device ID for each device type
• User Signature Row
One flash page in size
Can be read and written from software
Data is kept after Chip Erase
7.2
Overview
The AVR architecture has two main memory spaces, the Program Memory and the Data Memory. In addition, the XMEGA A4 features an EEPROM Memory for non-volatile data storage. All
three memory spaces are linear and require no paging. The available memory size configurations are shown in ”Ordering Information” on page 2. In addition each device has a Flash
memory signature row for calibration data, device identification, serial number etc.
Non-volatile memory spaces can be locked for further write or read/write operations. This prevents unrestricted access to the application software.
7.3
In-System Programmable Flash Program Memory
The XMEGA A4 devices contains On-chip In-System Programmable Flash memory for program
storage, see Figure 7-1 on page 9. Since all AVR instructions are 16- or 32-bits wide, each Flash
address location is 16 bits.
8
8069C–AVR–06/08
XMEGA A4
The Program Flash memory space is divided into Application and Boot sections. Both sections
have dedicated Lock Bits for setting restrictions on write or read/write operations. The Store Program Memory (SPM) instruction must reside in the Boot Section when used to write to the Flash
memory.
A third section inside the Application section is referred to as the Application Table section which
has separate Lock bits for storage of write or read/write protection. The Application Table section can be used for storing non-volatile data or application software.
Figure 7-1.
Flash Program Memory (Hexadecimal address)
Word Address
0
Application Section
(128K/64K/32K/16K)
...
EFFF
/
77FF
/
37FF
/
17FF
F000
/
7800
/
3800
/
1800
FFFF
/
7FFF
/
3FFF
/
1FFF
10000
/
8000
/
4000
/
2000
10FFF
/
87FF
/
47FF
/
27FF
Application Table Section
(4K/4K/4K/4K)
Boot Section
(4K/4K/4K/4K)
The Application Table Section and Boot Section can also be used for general application
software.
9
8069C–AVR–06/08
XMEGA A4
7.4
Data Memory
The Data Memory consist of the I/O Memory, EEPROM and SRAM memories, all within one linear address space, see Figure 7-2 on page 10. To simplify development, the memory map for all
devices in the family is identical and with empty, reserved memory space for smaller devices.
Figure 7-2.
Data Memory Map (Hexadecimal address)
Byte Address
0
FFF
ATxmega64A4
I/O Registers
(4KB)
1000
EEPROM
(2K)
17FF
Byte Address
0
FFF
1000
17FF
RESERVED
2000
2FFF
3000
FFFFFF
Internal SRAM
(4K)
External Memory
(0 to 16 MB)
ATxmega32A4
I/O Registers
(4KB)
EEPROM
(2K)
Byte Address
0
FFF
1000
17FF
RESERVED
2000
2FFF
3000
FFFFFF
Internal SRAM
(4K)
External Memory
(0 to 16 MB)
ATxmega16A4
I/O Registers
(4KB)
EEPROM
(1K)
RESERVED
2000
27FF
2800
FFFFFF
Byte Address
0
FFF
1000
17FF
Internal SRAM
(2K)
External Memory
(0 to 16 MB)
ATxmega128A4
I/O Registers
(4KB)
EEPROM
(2K)
RESERVED
2000
3FFF
4000
FFFFFF
7.4.1
Internal SRAM
(8K)
External Memory
(0 to 16 MB)
I/O Memory
All peripherals and modules are addressable through I/O memory locations in the data memory
space. All I/O memory locations can be accessed by the Load (LD/LDS/LDD) and Store
(ST/STS/STD) instructions, transferring data between the 32 general purpose registers in the
CPU and the I/O Memory.
The IN and OUT instructions can address I/O memory locations in the range 0x00 - 0x3F
directly.
I/O registers within the address range 0x00 - 0x1F are directly bit-accessible using the SBI and
CBI instructions. The value of single bits can be checked by using the SBIS and SBIC instructions on these registers.
The I/O memory address for all peripherals and modules in XMEGA A4 is shown in the ”Peripheral Module Address Map” on page 51.
10
8069C–AVR–06/08
XMEGA A4
7.4.2
SRAM Data Memory
The XMEGA A4 devices has internal SRAM memory for data storage.
7.4.3
EEPROM Data Memory
The XMEGA A4 devices has internal EEPROM memory for non-volatile data storage. It is
addressable either in a separate data space or it can be memory mapped into the normal data
memory space. The EEPROM memory supports both byte and page access.
7.5
Calibration Row
The Calibration Row is a separate memory section for factory programmed data. It contains calibration data for functions such as oscillators, device ID, and a factory programmed serial
number that is unique for each device. The device ID for the available XMEGA A1 devices is
shown in Table 7-1 on page 11. Some of the calibration values will be automatically loaded to
the corresponding module or peripheral unit during reset. The Calibration Row can not be written
or erased. It can be read from application software and external programming.
Table 7-1.
Device ID bytes for XMEGA A4 devices.
Device
7.6
Device ID bytes
Byte 2
Byte 1
Byte 0
ATxmega16A4
41
94
1E
ATxmega32A4
41
85
1E
ATxmega64A4
46
96
1E
ATxmega128A4
46
97
1E
User Signature Row
The User Signature Row is a separate memory section that is fully accessible (read and write)
from application software and external programming. The User Signature Row is one flash page
in size, and is meant for static user parameter storage, such as calibration data, custom serial
numbers, random number seeds etc. This section is not erased by Chip Erase, and requires a
dedicated erase command. This ensures parameter storage during multiple program/erase session and On-Chip Debug sessions.
11
8069C–AVR–06/08
XMEGA A4
7.7
Flash and EEPROM Page Size
The Flash Program Memory and EEPROM data memory is organized in pages. The pages are
word accessible for the Flash and byte accessible for the EEPROM.
Table 7-2 on page 12 shows the Flash Program Memory organization. Flash write and erase
operations are performed on one page at the time, while reading the Flash is done one byte at
the time. For Flash access the Z-pointer (Z[m:n]) is used for addressing. The most significant
bits in the address (FPAGE) gives the page number and the least significant address bits
(FWORD) gives the word in the page.
Table 7-2.
Devices
Flash
Page Size
Size (Bytes)
(words)
Number of words and Pages in the Flash.
FWORD
FPAGE
Application
Size
Boot
No of Pages
Size
No of Pages
ATxmega16A4
16K + 4K
128
Z[6:0]
Z[13:7]
16K
64
4K
16
ATxmega32A4
32K + 4K
128
Z[6:0]
Z[14:7]
32K
128
4K
16
ATxmega64A4
64K + 4K
128
Z[6:0]
Z[15:7]
64K
128
4K
16
ATxmega128A4
128K + 4K
256
Z[7:0]
Z[16:8]
128K
256
4K
16
Table 7-3 on page 12 shows EEPROM memory organization for the XMEGA A4 devices.
EEPROM write and erase operations can be performed one page or one byte at the time, while
reading the EEPROM is done one byte at the time. For EEPROM access the NVM Address
Register (ADDR[m:n]) is used for addressing. The most significant bits in the address (E2PAGE)
gives the page number and the least significant address bits (E2BYTE) gives the byte in the
page.
Table 7-3.
Devices
Number of Bytes and Pages in the EEPROM.
EEPROM
Page Size
Size (Bytes)
(Bytes)
E2BYTE
E2PAGE
No of Pages
ATxmega16A4
1K
ATxmega32A4
2K
32
ADDR[4:0]
ADDR[10:5]
32
32
ADDR[4:0]
ADDR[10:5]
64
ATxmega64A4
ATxmega128A4
2K
32
ADDR[4:0]
ADDR[10:5]
64
2K
32
ADDR[4:0]
ADDR[10:5]
64
12
8069C–AVR–06/08
XMEGA A4
8. DMAC - Direct Memory Access Controller
8.1
Features
• Allows High-speed data transfer
•
•
•
•
•
8.2
– From memory to peripheral
– From memory to memory
– From peripheral to memory
– From peripheral to peripheral
4 Channels
From 1 byte and up to 16 M bytes transfers in a single transaction
Multiple addressing modes for source and destination address
– Increment
– Decrement
– Static
1, 2, 4, or 8 bytes Burst Transfers
Programmable priority between channels
Overview
The XMEGA A4 has a Direct Memory Access (DMA) Controller to move data between memories
and peripherals in the data space. The DMA controller uses the same data bus as the CPU to
transfer data.
It has 4 channels that can be configured independently. Each DMA channel can perform data
transfers in blocks of configurable size from 1 to 64K bytes. A repeat counter can be used to
repeat each block transfer for single transactions up to 16M bytes. Each DMA channel can be
configured to access the source and destination memory address with incrementing, decrementing or static addressing. The addressing is independent for source and destination address.
When the transaction is complete the original source and destination address can automatically
be reloaded to be ready for the next transaction.
The DMAC can access all the peripherals through their I/O memory registers, and the DMA may
be used for automatic transfer of data to/from communication modules, as well as automatic
data retrieval from ADC conversions, data transfer to DAC conversions, or data transfer to or
from port pins. A wide range of transfer triggers is available from the peripherals, Event System
and software. Each DMA channel has different transfer triggers.
To allow for continuous transfer, two channels can be interlinked so that the second takes over
the transfer when the first is finished and vice versa.
The DMA controller can read from memory mapped EEPROM, but it cannot write to the
EEPROM or access the Flash.
13
8069C–AVR–06/08
XMEGA A4
9. Event System
9.1
Features
•
•
•
•
•
•
•
•
9.2
Inter-peripheral communication and signalling with minimum latency
CPU and DMA independent operation
8 Event Channels allow for up to 8 signals to be routed at the same time
Events can be generated by
– TImer/Counters (TCxn)
– Real Time Counter (RTC)
– Analog to Digital Converters (ADCx)
– Analog Comparators (ACx)
– Ports (PORTx)
– System Clock (ClkSYS)
– Software (CPU)
Events can be used by
– TImer/Counters (TCxn)
– Analog to Digital Converters (ADCx)
– Digital to Analog Converters (DACx)
– Ports (PORTx)
– DMA Controller (DMAC)
– IR Communication Module (IRCOM)
The same event can be used by multiple peripherals for synchronized timing
Advanced Features
– Manual Event Generation from software (CPU)
– Quadrature Decoding
– Digital Filtering
Functions in Active and Idle mode
Overview
The Event System is a set of features for inter-peripheral communication. It enables the possibility for a change of state in one peripheral to automatically trigger actions in one or more
peripherals. What changes in a peripheral that will trigger actions in other peripherals are configurable by software. It is a simple, but powerful system as it allows for autonomous control of
peripherals without any use of interrupts, CPU or DMA resources.
The indication of a change in a peripheral is referred to as an event, and is usually the same as
the interrupt conditions for that peripheral. Events are passed between peripherals using a dedicated routing network called the Event Routing Network. Figure 9-1 on page 15 shows a basic
block diagram of the Event System with the Event Routing Network and the peripherals to which
it is connected. This highly flexible system can be used for simple routing of signals, pin functions or for sequencing of events.
The maximum latency is two CPU clock cycles from when an event is generated in one peripheral, until the actions are triggered in one or more other peripherals.
The Event System is functional in both Active and Idle modes.
14
8069C–AVR–06/08
XMEGA A4
Figure 9-1.
Event System Block Diagram
PORTx
ClkSYS
CPU
ADCx
RTC
Event Routing
Network
DACx
IRCOM
ACx
T/Cxn
DMAC
The Event Routing Network can directly connect together ADCs, DACs, Analog Comparators
(ACx), I/O ports (PORTx), the Real-time Counter (RTC), Timer/Counters (T/C) and the IR Communication Module (IRCOM). Events can also be generated from software (CPU).
All events from all peripherals are always routed into the Event Routing Network. This consist of
eight multiplexers where each can be configured in software to select which event to be routed
into that event channel. All eight event channels are connected to the peripherals that can use
events, and each of these peripherals can be configured to use events from one or more event
channels to automatically trigger a software selectable action.
15
8069C–AVR–06/08
XMEGA A4
10. System Clock and Clock options
10.1
Features
• Fast start-up time
• Safe run-time clock switching
• Internal Oscillators:
•
•
•
•
•
•
10.2
– 32 MHz run-time calibrated RC oscillator
– 2 MHz run-time calibrated RC oscillator
– 32 kHz calibrated RC oscillator
– 32 kHz Ultra Low Power (ULP) oscillator
External clock options
– 0.4 - 16 MHz Crystal Oscillator
– 32 kHz Crystal Oscillator
– External clock
PLL with internal and external clock options with 2 to 31x multiplication
Clock Prescalers with 2 to 2048x division
Fast peripheral clock running at 2 and 4 times the CPU clock speed
Automatic Run-Time Calibration of internal oscillators
Crystal Oscillator failure detection
Overview
XMEGA A4 has an advanced clock system, supporting a large number of clock sources. It incorporates both integrated oscillators, external crystal oscillators and resonators. A high frequency
Phase Locked Loop (PLL) and clock prescalers can be controlled from software to generate a
wide range of clock frequencies from the clock source input.
It is possible to switch between clock sources from software during run-time. After reset the
device will always start up running from the 2 Mhz internal oscillator.
A calibration feature is available, and can be used for automatic run-time calibration of the internal 2 MHz and 32 MHz oscillators. This reduce frequency drift over voltage and temperature.
A Crystal Oscillator Failure Monitor can be enabled to issue a Non-Maskable Interrupt and
switch to internal oscillator if the external oscillator fails. Figure 10-1 on page 17 shows the principal clock system in XMEGA A4.
16
8069C–AVR–06/08
XMEGA A4
Figure 10-1. Clock system overview
clkULP
WDT/BOD
32 kHz ULP
Internal Oscillator
clkRTC
RTC
32.768 kHz
Calibrated Internal
Oscillator
PERIPHERALS
ADC
2 MHz
Run-Time Calibrated
Internal Oscillator
32 MHz
Run-time Calibrated
Internal Oscillator
DAC
CLOCK CONTROL
clkPER
UNIT
with PLL and
Prescaler
PORTS
...
DMA
INTERRUPT
32.768 KHz
Crystal Oscillator
EVSYS
RAM
0.4 - 16 MHz
Crystal Oscillator
CPU
clkCPU NVM MEMORY
External
Clock Input
FLASH
EEPROM
Each clock source is briefly described in the following sub-sections.
10.3
10.3.1
Clock Options
32 kHz Ultra Low Power Internal Oscillator
The 32 kHz Ultra Low Power (ULP) Internal Oscillator is a very low power consumption clock
source. It is used for the Watchdog Timer, Brown-Out Detection and as an asynchronous clock
source for the Real Time Counter. This oscillator cannot be used as the system clock source,
and it cannot be directly controlled from software.
10.3.2
32.768 kHz Calibrated Internal Oscillator
The 32.768 kHz Calibrated Internal Oscillator is a high accuracy clock source that can be used
as the system clock source or as an asynchronous clock source for the Real Time Counter. It is
calibrated during protection to provide a default frequency which is close to its nominal
frequency.
17
8069C–AVR–06/08
XMEGA A4
10.3.3
32.768 kHz Crystal Oscillator
The 32.768 kHz Crystal Oscillator is a low power driver for an external watch crystal. It can be
used as system clock source or as asynchronous clock source for the Real Time Counter.
10.3.4
0.4 - 16 MHz Crystal Oscillator
The 0.4 - 16 MHz Crystal Oscillator is a driver intended for driving both external resonators and
crystals ranging from 400 kHz to 16 MHz.
10.3.5
2 MHz Run-time Calibrated Internal Oscillator
The 2 MHz Run-time Calibrated Internal Oscillator is a high frequency oscillator. It is calibrated
during protection to provide a default frequency which is close to its nominal frequency. The
oscillator can use the 32 kHz Calibrated Internal Oscillator or the 32 kHz Crystal Oscillator as a
source for calibrating the frequency run-time to compensate for temperature and voltage drift
hereby optimizing the accuracy of the oscillator.
10.3.6
32 MHz Run-time Calibrated Internal Oscillator
The 32 MHz Run-time Calibrated Internal Oscillator is a high frequency oscillator. It is calibrated
during protection to provide a default frequency which is close to its nominal frequency. The
oscillator can use the 32 kHz Calibrated Internal Oscillator or the 32 kHz Crystal Oscillator as a
source for calibrating the frequency run-time to compensate for temperature and voltage drift
hereby optimizing the accuracy of the oscillator.
10.3.7
External Clock input
The external clock input gives the possibility to connect a clock from an external source.
10.3.8
PLL with Multiplication factor 2 - 31x
The PLL provides the possibility of multiplying a frequency by any number from 2 to 31. In combination with the prescalers, this gives a wide range of output frequencies from all clock sources.
18
8069C–AVR–06/08
XMEGA A4
11. Power Management and Sleep Modes
11.1
Features
• 5 sleep modes
– Idle
– Power-down
– Power-save
– Standby
– Extended standby
• Power Reduction registers to disable clocks to unused peripherals
11.2
Overview
The XMEGA A4 provides various sleep modes tailored to reduce power consumption to a minimum. All sleep modes are available and can be entered from Active mode. In Active mode the
CPU is executing application code. The application code decides when and what sleep mode to
enter. Interrupts from enabled peripherals and all enabled reset sources can restore the microcontroller from sleep to Active mode.
In addition, Power Reduction registers provide a method to stop the clock to individual peripherals from software. When this is done, the current state of the peripheral is frozen and there is no
power consumption from that peripheral. This reduces the power consumption in Active mode
and Idle sleep mode.
11.3
Sleep Modes
11.3.1
Idle Mode
In Idle mode the CPU and Non-Volatile Memory are stopped, but all peripherals including the
Interrupt Controller, Event System and DMA Controller are kept running. Interrupt requests from
all enabled interrupts will wake the device.
11.3.2
Power-down Mode
In Power-down mode all system clock sources, and the asynchronous Real Time Counter (RTC)
clock source, are stopped. This allows operation of asynchronous modules only. The only interrupts that can wake up the MCU are the Two Wire Interface address match interrupts, and
asynchronous port interrupts, e.g pin change.
11.3.3
Power-save Mode
Power-save mode is identical to Power-down, with one exception: If the RTC is enabled, it will
keep running during sleep and the device can also wake up from RTC interrupts.
11.3.4
Standby Mode
Standby mode is identical to Power-down with the exception that all enabled system clock
sources are kept running, while the CPU, Peripheral and RTC clocks are stopped. This reduces
the wake-up time when external crystals or resonators are used.
19
8069C–AVR–06/08
XMEGA A4
11.3.5
Extended Standby Mode
Extended Standby mode is identical to Power-save mode with the exception that all enabled
system clock sources are kept running while the CPU and Peripheral clocks are stopped. This
reduces the wake-up time when external crystals or resonators are used.
20
8069C–AVR–06/08
XMEGA A4
12. System Control and Reset
12.1
Features
• Multiple reset sources for safe operation and device reset
– Power-On Reset
– External Reset
– Watchdog Reset
The Watchdog Timer runs from separate, dedicated oscillator
– Brown-Out Reset
Accurate, programmable Brown-Out levels
– PDI reset
– Software reset
• Asynchronous reset
– No running clock in the device is required for reset
• Reset status register
12.2
Resetting the AVR
During reset, all I/O registers are set to their initial values. The SRAM content is not reset. Application execution starts from the Reset Vector. The instruction placed at the Reset Vector should
be an Absolute Jump (JMP) instruction to the reset handling routine. By default the Reset Vector
address is the lowest Flash program memory address, ‘0’, but it is possible to move the Reset
Vector to the first address in the Boot Section.
The I/O ports of the AVR are immediately tri-stated when a reset source goes active.
The reset functionality is asynchronous, so no running clock is required to reset the device.
After the device is reset, the reset source can be determined by the application by reading the
Reset Status Register.
12.3
12.3.1
Reset Sources
Power-On Reset
The MCU is reset when the supply voltage VCC is below the Power-on Reset threshold voltage.
12.3.2
External Reset
The MCU is reset when a low level is present on the RESET pin.
12.3.3
Watchdog Reset
The MCU is reset when the Watchdog Timer period expires and the Watchdog Reset is enabled.
The Watchdog Timer runs from a dedicated oscillator independent of the System Clock. For
more details see ”WDT - Watchdog Timer” on page 22.
12.3.4
Brown-Out Reset
The MCU is reset when the supply voltage VCC is below the Brown-Out Reset threshold voltage
and the Brown-out Detector is enabled. The Brown-out threshold voltage is programmable.
21
8069C–AVR–06/08
XMEGA A4
12.3.5
PDI reset
The MCU can be reset through the Program and Debug Interface (PDI).
12.3.6
Software reset
The MCU can be reset by the CPU writing to a special I/O register through a timed sequence.
12.4
12.4.1
WDT - Watchdog Timer
Features
• 11 selectable timeout periods, from 8 ms to 8s.
• Two operation modes
– Standard mode
– Window mode
• Runs from the 1 kHz output of the 32 kHz Ultra Low Power oscillator
• Configuration lock to prevent unwanted changes
12.4.2
Overview
The XMEGA A4 has a Watchdog Timer (WDT). The WDT will run continuously when turned on
and if the Watchdog Timer is not reset within a software configurable time-out period, the microcontroller will be reset. The Watchdog Reset (WDR) instruction must be run by software to reset
the WDT, and prevent microcontroller reset.
The WDT has a Window mode. In this mode the WDR instruction must be run within a specified
period called a window. Application software can set the minimum and maximum limits for this
window. If the WDR instruction is not executed inside the window limits, the microcontroller will
be reset.
A protection mechanism using a timed write sequence is implemented in order to prevent
unwanted enabling, disabling or change of WDT settings.
For maximum safety, the WDT also has an Always-on mode. This mode is enabled by programming a fuse. In Always-on mode, application software can not disable the WDT.
22
8069C–AVR–06/08
XMEGA A4
13. PMIC - Programmable Multi-level Interrupt Controller
13.1
Features
• Separate interrupt vector for each interrupt
• Short, predictable interrupt response time
• Programmable Multi-level Interrupt Controller
– 3 programmable interrupt levels
– Selectable priority scheme within low level interrupts (round-robin or fixed)
– Non-Maskable Interrupts (NMI)
• Interrupt vectors can be moved to the start of the Boot Section
13.2
Overview
XMEGA A4 has a Programmable Multi-level Interrupt Controller (PMIC). All peripherals can
define three different priority levels for interrupts; high, medium or low. Medium level interrupts
may interrupt low level interrupt service routines. High level interrupts may interrupt both lowand medium level interrupt service routines. Low level interrupts have an optional round robin
scheme to make sure all interrupts are serviced within a certain amount of time.
The built in oscillator failure detection mechanism can issue a Non-Maskable Interrupt (NMI).
13.3
Interrupt vectors
When an interrupt is serviced, the program counter will jump to the interrupt vector address. The
interrupt vector is the sum of the peripheral’s base interrupt address and the offset address for
specific interrupts in each peripheral. The base addresses for the XMEGA A4 devices are shown
in Table 13-1. Offset addresses for each interrupt available in the peripheral are described for
each peripheral in the XMEGA A manual. For peripherals or modules that have only one interrupt, the interrupt vector is shown in Table 13-1. The program address is the word address.
Table 13-1.
Reset and Interrupt Vectors
Program Address
(Base Address)
Source
0x000
RESET
0x002
OSCF_INT_vect
Crystal Oscillator Failure Interrupt vector (NMI)
0x004
PORTC_INT_base
Port C Interrupt base
0x008
PORTR_INT_base
Port R Interrupt base
0x00C
DMA_INT_base
DMA Controller Interrupt base
0x014
RTC_INT_base
Real Time Counter Interrupt base
0x018
TWIC_INT_base
Two-Wire Interface on Port C Interrupt base
0x01C
TCC0_INT_base
Timer/Counter 0 on port C Interrupt base
0x028
TCC1_INT_base
Timer/Counter 1 on port C Interrupt base
0x030
SPIC_INT_vect
SPI on port C Interrupt vector
0x032
USARTC0_INT_base
USART 0 on port C Interrupt base
0x038
USARTC1_INT_base
USART 1 on port C Interrupt base
0x03E
AES_INT_vect
AES Interrupt vector
Interrupt Description
23
8069C–AVR–06/08
XMEGA A4
Table 13-1.
Reset and Interrupt Vectors (Continued)
Program Address
(Base Address)
Source
Interrupt Description
0x040
NVM_INT_base
Non-Volatile Memory Interrupt base
0x044
PORTB_INT_base
Port B Interrupt base
0x056
PORTE_INT_base
Port E Interrupt base
0x05A
TWIE_INT_base
Two-Wire Interface on Port E Interrupt base
0x05E
TCE0_INT_base
Timer/Counter 0 on port E Interrupt base
0x06A
TCE1_INT_base
Timer/Counter 1 on port E Interrupt base
0x074
USARTE0_INT_base
USART 0 on port E Interrupt base
0x080
PORTD_INT_base
Port D Interrupt base
0x084
PORTA_INT_base
Port A Interrupt base
0x088
ACA_INT_base
Analog Comparator on Port A Interrupt base
0x08E
ADCA_INT_base
Analog to Digital Converter on Port A Interrupt base
0x09A
TCD0_INT_base
Timer/Counter 0 on port D Interrupt base
0x0A6
TCD1_INT_base
Timer/Counter 1 on port D Interrupt base
0x0AE
SPID_INT_vector
SPI on port D Interrupt vector
0x0B0
USARTD0_INT_base
USART 0 on port D Interrupt base
0x0B6
USARTD1_INT_base
USART 1 on port D Interrupt base
24
8069C–AVR–06/08
XMEGA A4
14. I/O Ports
14.1
Features
• Selectable input and output configuration for each pin individually
• Flexible pin configuration through dedicated Pin Configuration Register
• Synchronous and/or asynchronous input sensing with port interrupts and events
•
•
•
•
•
•
•
•
•
•
14.2
– Sense both edges
– Sense rising edges
– Sense falling edges
– Sense low level
Asynchronous wake-up from all input sensing configurations
Two port interrupts with flexible pin masking
Highly configurable output driver and pull settings:
–
Totem-pole
–
Pull-up/-down
–
Wired-AND
–
Wired-OR
–
Bus-keeper
–
Inverted I/O
Optional Slew rate control
Configuration of multiple pins in a single operation
Read-Modify-Write (RMW) support
Toggle/clear/set registers for Output and Direction registers
Clock output on port pin
Event Channel 7 output on port pin
Mapping of port registers (virtual ports) into bit accessible I/O memory space
Overview
The XMEGA A4 devices have flexible General Purpose I/O Ports. A port consists of up to 8 pins,
ranging from pin 0 to pin 7. The ports implement several functions, including synchronous/asynchronous input sensing, pin change interrupts and configurable output settings. All functions are
individual per pin, but several pins may be configured in a single operation.
14.3
I/O configuration
All port pins (Pn) have programmable output configuration. In addition, all port pins have an
inverted I/O function. For an input, this means inverting the signal between the port pin and the
pin register. For an output, this means inverting the output signal between the port register and
the port pin. The inverted I/O function can be used also when the pin is used for alternate functions. The port pins also have configurable slew rate limitation to reduce electromagnetic
emission.
25
8069C–AVR–06/08
XMEGA A4
14.3.1
Push-pull
Figure 14-1. I/O configuration - Totem-pole
DIRn
OUTn
Pn
INn
14.3.2
Pull-down
Figure 14-2. I/O configuration - Totem-pole with pull-down (on input)
DIRn
OUTn
Pn
INn
14.3.3
Pull-up
Figure 14-3. I/O configuration - Totem-pole with pull-up (on input)
DIRn
OUTn
Pn
INn
14.3.4
Bus-keeper
The bus-keeper’s weak output produces the same logical level as the last output level. It acts as
a pull-up if the last level was ‘1’, and pull-down if the last level was ‘0’.
26
8069C–AVR–06/08
XMEGA A4
Figure 14-4. I/O configuration - Totem-pole with bus-keeper
DIRn
OUTn
Pn
INn
14.3.5
Others
Figure 14-5. Output configuration - Wired-OR with optional pull-down
OUTn
Pn
INn
Figure 14-6. I/O configuration - Wired-AND with optional pull-up
INn
Pn
OUTn
27
8069C–AVR–06/08
XMEGA A4
14.4
Input sensing
•
•
•
•
Sense both edges
Sense rising edges
Sense falling edges
Sense low level
Input sensing is synchronous or asynchronous depending on the enabled clock for the ports,
and the configuration is shown in Figure 14-7 on page 28.
Figure 14-7. Input sensing system overview
Asynchronous sensing
EDGE
DETECT
Interrupt
Control
IREQ
Synchronous sensing
Pn
Synchronizer
INn
Q D
D
INVERTED I/O
R
Q
EDGE
DETECT
Event
R
When a pin is configured with inverted I/O the pin value is inverted before the input sensing.
14.5
Port Interrupt
Each ports have two interrupts with separate priority and interrupt vector. All pins on the port can
be individually selected as source for each of the interrupts. The interrupts are then triggered
according to the input sense configuration for each pin configured as source for the interrupt.
14.6
Alternate Port Functions
In addition to the input/output functions on all port pins, most pins have alternate functions. This
means that other modules or peripherals connected to the port can use the port pins for their
functions, such as communication or pulse-width modulation. ”Pinout and Pin Functions” on
page 47 shows which modules on peripherals that enable alternate functions on a pin, and
which alternate function is available on a pin.
28
8069C–AVR–06/08
XMEGA A4
15. T/C - 16-bit Timer/Counter
15.1
Features
• Five 16-bit Timer/Counters
•
•
•
•
•
•
•
•
•
•
•
•
15.2
– Three Timer/Counters of type 0
– Two Timer/Counters of type 1
Three Compare or Capture (CC) Channels in Timer/Counter 0
Two Compare or Capture (CC) Channels in Timer/Counter 1
Double Buffered Timer Period Setting
Double Buffered Compare or Capture Channels
Waveform Generation:
– Single Slope Pulse Width Modulation
– Dual Slope Pulse Width Modulation
– Frequency Generation
Input Capture:
– Input Capture with Noise Cancelling
– Frequency capture
– Pulse width capture
– 32-bit input capture
Event Counter with Direction Control
Timer Overflow and Timer Error Interrupts and Events
One Compare Match or Capture Interrupt and Event per CC Channel
Supports DMA Operation
Hi-Resolution Extension (Hi-Res)
Advanced Waveform Extension (AWEX)
Overview
XMEGA A4 has five Timer/Counters, three Timer/Counter 0 and two Timer/Counter 1. The difference between them is that Timer/Counter 0 has four Compare/Capture channels, while
Timer/Counter 1 has two Compare/Capture channels.
The Timer/Counters (T/C) are 16-bit and can count any clock, event or external input in the
microcontroller. A programmable prescaler is available to get a useful T/C resolution. Updates of
Timer and Compare registers are double buffered to ensure glitch free operation. Single slope
PWM, dual slope PWM and frequency generation waveforms can be generated using the Compare Channels.
Through the Event System, any input pin or event in the microcontroller can be used to trigger
input capture, hence no dedicated pins is required for this. The input capture has a noise canceller to avoid incorrect capture of the T/C, and can be used to do frequency and pulse width
measurements.
A wide range of interrupt or event sources are available, including T/C Overflow, Compare
match and Capture for each Compare/Capture channel in the T/C.
PORTC and PORTD each has one Timer/Counter 0 and one Timer/Counter1. PORTE has one
Timer/Conter0. Notation of these are TCC0 (Time/Counter C0), TCC1, TCD0, TCD1 and TCE0,
respectively.
29
8069C–AVR–06/08
XMEGA A4
Figure 15-1. Overview of a Timer/Counter and closely related peripherals
Timer/Counter
Base Counter
Prescaler
clkPER
Timer Period
Control Logic
Counter
Event
System
clkPER4
Buffer
Capture
Control
Waveform
Generation
DTI
Dead-Time
Insertion
Pattern
Generation
Fault
Protection
PORT
Comparator
AWeX
Hi-Res
Compare/Capture Channel D
Compare/Capture Channel C
Compare/Capture Channel B
Compare/Capture Channel A
The Hi-Resolution Extension can be enabled to increase the waveform generation resolution by
2 bits (4x). This is available for all Timer/Counters. See ”Hi-Res - High Resolution Extension” on
page 32 for more details.
The Advanced Waveform Extension can be enabled to provide extra and more advanced feature for the Timer/Counter. This is only available for Timer/Counter 0. See ”AWEX - Advanced
Waveform Extension” on page 31 for more details.
30
8069C–AVR–06/08
XMEGA A4
16. AWEX - Advanced Waveform Extension
16.1
Features
•
•
•
•
•
•
•
•
16.2
Output with complementary output from each Capture channel
Four Dead Time Insertion (DTI) Units, one for each Capture channel
8-bit DTI Resolution
Separate High and Low Side Dead-Time Setting
Double Buffered Dead-Time
Event Controlled Fault Protection
Single Channel Multiple Output Operation (for BLDC motor control)
Double Buffered Pattern Generation
Overview
The Advanced Waveform Extension (AWEX) provides extra features to the Timer/Counter in
Waveform Generation (WG) modes. The AWEX enables easy and safe implementation of for
example, advanced motor control (AC, BLDC, SR, and Stepper) and power control applications.
Any WG output from a Timer/Counter 0 is split into a complimentary pair of outputs when any
AWEX feature is enabled. These output pairs go through a Dead-Time Insertion (DTI) unit that
enables generation of the non-inverted Low Side (LS) and inverted High Side (HS) of the WG
output with dead time insertion between LS and HS switching. The DTI output will override the
normal port value according to the port override setting. Optionally the final output can be
inverted by using the invert I/O setting for the port pin.
The Pattern Generation unit can be used to generate a synchronized bit pattern on the port it is
connected to. In addition, the waveform generator output from Compare Channel A can be distributed to, and override all port pins. When the Pattern Generator unit is enabled, the DTI unit is
bypassed.
The Fault Protection unit is connected to the Event System. This enables any event to trigger a
fault condition that will disable the AWEX output. Several event channels can be used to trigger
fault on several different conditions.
The AWEX is available for TCC0. The notation of this is AWEXC.
31
8069C–AVR–06/08
XMEGA A4
17. Hi-Res - High Resolution Extension
17.1
Features
• Increases Waveform Generator resolution by 2-bits (4x)
• Supports Frequency, single- and dual-slope PWM operation
• Supports the AWEX when this is enabled and used for the same Timer/Counter
17.2
Overview
The Hi-Resolution (Hi-Res) Extension is able to increase the resolution of the waveform generation output by a factor of 4. When enabled for a Timer/Counter, the Fast Peripheral clock running
at four times the CPU clock speed will be as input to the Timer/Counter.
The High Resolution Extension can also be used when an AWEX is enabled and used with a
Timer/Counter.
XMEGA A4 devices have three Hi-Res Extensions that each can be enabled for each
Timer/Counters pair on PORTC, PORTD and PORTE. The notation of these are HIRESC,
HIRESD and HIRESE, respectively.
32
8069C–AVR–06/08
XMEGA A4
18. RTC - 16-bit Real-Time Counter
18.1
Features
•
•
•
•
•
•
18.2
16-bit Timer
Flexible Tick resolution ranging from 1 Hz to 32.768 kHz
One Compare register
One Period register
Clear timer on Overflow or Compare Match
Overflow or Compare Match event and interrupt generation
Overview
The XMEGA A4 includes a 16-bit Real-time Counter (RTC). The RTC can be clocked from an
accurate 32.768 kHz Crystal Oscillator, the 32.768 kHz Calibrated Internal Oscillator, or from the
32 kHz Ultra Low Power Internal Oscillator. The RTC includes both a Period and a Compare
register. For details, see Figure 18-1.
A wide range of Resolution and Time-out periods can be configured using the RTC. With a maximum resolution of 30.5 µs, time-out periods range up to 2000 seconds. With a resolution of 1
second, the maximum time-out period is over 18 hours (65536 seconds).
Figure 18-1. Real Time Counter overview
Period
Overflow
32 kHz
=
10-bit
prescaler
1 kHz
Counter
=
Compare Match
Compare
33
8069C–AVR–06/08
XMEGA A4
19. TWI - Two-Wire Interface
19.1
Features
•
•
•
•
•
•
•
•
•
•
•
•
19.2
Two Identical TWI peripherals
Simple yet Powerful and Flexible Communication Interface
Both Master and Slave Operation Supported
Device can Operate as Transmitter or Receiver
7-bit Address Space Allows up to 128 Different Slave Addresses
Multi-master Arbitration Support
Up to 400 kHz Data Transfer Speed
Slew-rate Limited Output Drivers
Noise Suppression Circuitry Rejects Spikes on Bus Lines
Fully Programmable Slave Address with General Call Support
Address Recognition Causes Wake-up when in Sleep Mode
I2C and System Management Bus (SMBus) compatible
Overview
The Two-Wire Interface (TWI) is a bi-directional wired-AND bus with only two lines, the clock
(SCL) line and the data (SDA) line. The protocol makes it possible to interconnect up to 128 individually addressable devices. Since it is a multi-master bus, one or more devices capable of
taking control of the bus can be connected.
The only external hardware needed to implement the bus is a single pull-up resistor for each of
the TWI bus lines. Mechanisms for resolving bus contention are inherent in the TWI protocol.
PORTC and PORTE each has one TWI. Notation of these peripherals are TWIC and TWIE,
respectively.
34
8069C–AVR–06/08
XMEGA A4
20. SPI - Serial Peripheral Interface
20.1
Features
•
•
•
•
•
•
•
•
•
20.2
Two Identical SPI peripherals
Full-duplex, Three-wire Synchronous Data Transfer
Master or Slave Operation
LSB First or MSB First Data Transfer
Seven Programmable Bit Rates
End of Transmission Interrupt Flag
Write Collision Flag Protection
Wake-up from Idle Mode
Double Speed (CK/2) Master SPI Mode
Overview
The Serial Peripheral Interface (SPI) allows high-speed full-duplex, synchronous data transfer
between different devices. Devices can communicate using a master-slave scheme, and data is
transferred both to and from the devices simultaneously.
PORTC and PORTD each has one SPI. Notation of these peripherals are SPIC and SPID,
respectively.
35
8069C–AVR–06/08
XMEGA A4
21. USART
21.1
Features
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
21.2
Five Identical USART peripherals
Full Duplex Operation (Independent Serial Receive and Transmit Registers)
Asynchronous or Synchronous Operation
Master or Slave Clocked Synchronous Operation
High-resolution Arithmetic Baud Rate Generator
Supports Serial Frames with 5, 6, 7, 8, or 9 Data Bits and 1 or 2 Stop Bits
Odd or Even Parity Generation and Parity Check Supported by Hardware
Data OverRun Detection
Framing Error Detection
Noise Filtering Includes False Start Bit Detection and Digital Low Pass Filter
Three Separate Interrupts on TX Complete, TX Data Register Empty and RX Complete
Multi-processor Communication Mode
Double Speed Asynchronous Communication Mode
Master SPI mode for SPI communication
IrDA support through the IRCOM module
Overview
The Universal Synchronous and Asynchronous serial Receiver and Transmitter (USART) is a
highly flexible serial communication module. The USART supports full duplex communication,
and both asynchronous and clocked synchronous operation. The USART can also be set in
Master SPI mode to be used for SPI communication.
Communication is frame based, and the frame format can be customized to support a wide
range of standards. The USART is buffered in both direction, enabling continued data transmission without any delay between frames. There are separate interrupt vectors for receive and
transmit complete, enabling fully interrupt driven communication. Frame error and buffer overflow are detected in hardware and indicated with separate status flags. Even or odd parity
generation and parity check can also be enabled.
One USART can use the IRCOM module to support IrDA 1.4 physical compliant pulse modulation and demodulation for baud rates up to 115.2 kbps.
PORTC and PORTD each has two USARTs. PORTE has one USART. Notation of these peripherals are USARTC0, USARTC1, USARTD0, USARTD1 and USARTE0, respectively.
36
8069C–AVR–06/08
XMEGA A4
22. IRCOM - IR Communication Module
22.1
Features
• Pulse modulation/demodulation for infrared communication
• Compatible to IrDA 1.4 physical for baud rates up to 115.2 kbps
• Selectable pulse modulation scheme
– 3/16 of baud rate period
– Fixed pulse period, 8-bit programmable
– Pulse modulation disabled
• Built in filtering
• Can be connected to and used by one USART at the time
22.2
Overview
XMEGA contains an Infrared Communication Module (IRCOM) for IrDA communication with
baud rates up to 115.2 kbps. This supports three modulation schemes: 3/16 of baud rate period,
fixed programmable pulse time based on the Peripheral Clock speed, or pulse modulation disabled. There is one IRCOM available which can be connected to any USART to enable infrared
pulse coding/decoding for that USART.
37
8069C–AVR–06/08
XMEGA A4
23. Crypto Engine
23.1
Features
• Data Encryption Standard (DES) CPU instruction
• Advanced Encryption Standard (AES) Crypto module
• DES Instruction
– Encryption and Decryption
– Single-cycle DES instruction
– Encryption/Decryption in 16 clock cycles per 8-byte block
• AES Crypto Module
– Encryption and Decryption
– Support 128-bit keys
– Support XOR data load mode to the State memory for Cipher Block Chaining
– Encryption/Decryption in 375 clock cycles per 16-byte block
23.2
Overview
The Advanced Encryption Standard (AES) and Data Encryption Standard (DES) are two commonly used encryption standards. These are supported through an AES peripheral module and
a DES CPU instruction. All communication interfaces and the CPU can optionally use AES and
DES encrypted communication and data storage.
DES is supported by a DES instruction in the AVR XMEGA CPU. The 8-byte key and 8-byte
data blocks must be loaded into the Register file, and then DES must be executed 16 times to
encrypt/decrypt the data block.
The AES Crypto Module encrypts and decrypts 128-bit data blocks with the use of a 128-bit key.
The key and data must be loaded into the key and state memory in the module before encryption/decryption is started. It takes 375 peripheral clock cycles before the encryption/decryption is
done and decrypted/encrypted data can be read out, and an optional interrupt can be generated.
The AES Crypto Module also has DMA support with transfer triggers when encryption/decryption is done and optional auto-start of encryption/decryption when the state memory is fully
loaded.
38
8069C–AVR–06/08
XMEGA A4
24. ADC - 12-bit Analog to Digital Converter
24.1
Features
•
•
•
•
•
•
•
•
•
•
•
•
24.2
One ADC with 12-bit resolution
2 Msps sample rate for each ADC
Signed and Unsigned conversions
4 result registers with individual input channel control for each ADC
8 single ended inputs for each ADC
8x4 differential inputs for each ADC
Software selectable gain of 2, 4, 8, 16, 32 or 64
Selectable accuracy of 8- or 12-bit.
Internal or External Reference selection
Event triggered conversion for accurate timing
DMA transfer of conversion results
Interrupt/Event on compare result
Overview
XMEGA A4 devices have one Analog to Digital Converter (ADC), see Figure 24-1 on page 40.
This ADC module can be operated individually.
The ADC converts analog voltages to digital values. The ADC has 12-bit resolution and is capable of converting up to 2 million samples per second. The input selection is flexible, and both
single-ended and differential measurements can be performed. The ADC can provide both
signed and unsigned results, and an optional gain stage is available to increase the dynamic
range of the ADC.
It is a Successive Approximation Result (SAR) ADC. A SAR ADC measures one bit of the conversion result at a time. The ADC has a pipeline architecture. This means that a new analog
voltage can be sampled and a new ADC measurement started on each ADC clock cycle. Each
sample will be converted in the pipeline, where the total sample and conversion time is seven
ADC clock cycles for 12-bit result and 5 ADC clock cycles for 8-bit result.
ADC measurements can be started by application software or an incoming event from another
peripheral in the device. Four different result registers with individual channel selection (MUX
registers) are provided to make it easier for the application to keep track of the data. It is also
possible to use DMA to move ADC results directly to memory or peripherals.
Both internal and external analog reference voltages can be used. A very accurate internal 1.0V
reference is available.
39
8069C–AVR–06/08
XMEGA A4
Figure 24-1. ADC overview
Channel A MUX selection
Channel D MUX selection
Configuration
Reference selection
Pin inputs
Channel A
Register
Channel B
Register
Pin inputs
Internal inputs
Channel B MUX selection
Channel C MUX selection
ADC
Channel C
Register
1-64 X
Event
Trigger
Channel D
Register
Each ADC has four MUX selection registers with a corresponding result register. This means
that four channels can be sampled within 1.5 µs without any intervention by the application other
than starting the conversion. The results will be available in the result registers.
The ADC may be configured for 8- or 12-bit resolution, reducing the minimum conversion time
(propagation delay) from 3.5 µs for 12-bit to 2.5 µs for 8-bit resolution.
ADC conversion results are provided left- or right adjusted with optional ‘1’ or ‘0’ padding. This
eases calculation when the result is represented as a signed integer (signed 16-bit number).
PORTA has one ADC. Notation of this peripheral is ADCA.
40
8069C–AVR–06/08
XMEGA A4
25. DAC - 12-bit Digital to Analog Converter
25.1
Features
•
•
•
•
•
•
•
•
25.2
One DAC with 12-bit resolution
Up to 1 Msps conversion rate
Flexible conversion range
Multiple trigger sources
1 continuous output or 2 Sample and Hold (S/H) outputs
Built-in offset and gain calibration
High drive capabilities
Low Power Mode
Overview
The XMEGA A4 devices feature one 12-bit, 1 Msps DAC with built-in offset and gain calibration,
see Figure 25-1 on page 41.
A DAC converts a digital value into an analog signal. The DAC may use an internal 1.1 voltage
as the upper limit for conversion, but it is also possible to use the supply voltage or any applied
voltage in-between. The external reference input is shared with the ADC reference input.
Figure 25-1. DAC overview
Configuration
Reference selection
Channel A
Register
Channel A
DAC
Channel B
Channel B
Register
Event
Trigger
The DAC has one continuous output with high drive capabilities for both resistive and capacitive
loads. It is also possible to split the continuous time channel into two Sample and Hold (S/H)
channels, each with separate data conversion registers.
A DAC conversion may be started from the application software by writing the data conversion
registers. The DAC can also be configured to do conversions triggered by the Event System to
have regular timing, independent of the application software. DMA may be used for transferring
data from memory locations to DAC data registers.
The DAC has a built-in calibration system to reduce offset and gain error when loading with a
calibration value from software.
PORTB has one DAC. Notation of this peripheral is DACB.
41
8069C–AVR–06/08
XMEGA A4
26. AC - Analog Comparator
26.1
Features
• Two Analog Comparators
• Selectable Power vs. Speed
• Selectable hysteresis
– 0, 20 mV, 50 mV
• Analog Comparator output available on pin
• Flexible Input Selection
– All pins on the port
– Output from the DAC
– Bandgap reference voltage.
– Voltage scaler that can perform a 64-level scaling of the internal VCC voltage.
• Interrupt and event generation on
– Rising edge
– Falling edge
– Toggle
• Window function interrupt and event generation on
– Signal above window
– Signal inside window
– Signal below window
26.2
Overview
XMEGA A4 features two Analog Comparators (AC). An Analog Comparator compares two voltages, and the output indicates which input is largest. The Analog Comparator may be configured
to give interrupt requests and/or events upon several different combinations of input change.
Both hysteresis and propagation delays may be adjusted in order to find the optimal operation
for each application.
A wide range of input selection is available, both external pins and several internal signals can
be used.
The Analog Comparators are always grouped in pairs (AC0 and AC1) on each analog port. They
have identical behavior but separate control registers.
Optionally, the state of the comparator is directly available on a pin.
PORTA has one AC pair. Notation is ACA.
42
8069C–AVR–06/08
XMEGA A4
Figure 26-1. Analog comparator overview
Pin inputs
Internal inputs
+
Pin 0 output
AC0
Pin inputs
-
Internal inputs
VCC scaled
Interrupt
sensitivity
control
Pin inputs
Interrupts
Events
Internal inputs
+
AC1
Pin inputs
-
Internal inputs
VCC scaled
43
8069C–AVR–06/08
XMEGA A4
26.3
Input Selection
The Analog comparators have a very flexible input selection and the two comparators grouped
in a pair may be used to realize a window function. One pair of analog comparators is shown in
Figure 26-1 on page 43.
• Input selection from pin
– Pin 0, 1, 2, 3, 4, 5, 6 selectable to positive input of analog comparator
– Pin 0, 1, 3, 5, 7 selectable to negative input of analog comparator
• Internal signals available on positive analog comparator inputs
– Output from 12-bit DAC
• Internal signals available on negative analog comparator inputs
– 64-level scaler of the VCC, available on negative analog comparator input
– Bandgap voltage reference
– Output from 12-bit DAC
26.4
Window Function
The window function is realized by connecting the external inputs of the two analog comparators
in a pair as shown in Figure 26-2.
Figure 26-2. Analog comparator window function
+
AC0
Upper limit of window
Interrupt
sensitivity
control
Input signal
Interrupts
Events
+
AC1
Lower limit of window
-
44
8069C–AVR–06/08
XMEGA A4
27. OCD - On-chip Debug
27.1
Features
• Complete Program Flow Control
– Go, Stop, Reset, Step into, Step over, Step out, Run-to-Cursor
Debugging on C and high-level language source code level
Debugging on Assembler and disassembler level
1 dedicated program address or source level breakpoint for AVR Studio / debugger
4 Hardware Breakpoints
Unlimited Number of User Program Breakpoints
Unlimited Number of User Data Breakpoints, with break on:
– Data location read, write or both read and write
– Data location content equal or not equal to a value
– Data location content is greater or less than a value
– Data location content is within or outside a range
– Bits of a data location are equal or not equal to a value
• Non-Intrusive Operation
– No hardware or software resources in the device are used
• High Speed Operation
– No limitation on debug/programming clock frequency versus system clock frequency
•
•
•
•
•
•
27.2
Overview
The XMEGA A4 has a powerful On-Chip Debug (OCD) system that - in combination with Atmel’s
development tools - provides all the necessary functions to debug an application. It has support
for program and data breakpoints, and can debug an application from C and high level language
source code level, as well as assembler and disassembler level. It has full Non-Intrusive Operation and no hardware or software resources in the device are used. The ODC system is
accessed through an external debugging tool which connects to the PDI physical interface.
Refer to ”Program and Debug Interfaces” on page 46.
45
8069C–AVR–06/08
XMEGA A4
28. Program and Debug Interfaces
28.1
Features
•
•
•
•
28.2
PDI - Program and Debug Interface (Atmel proprietary 2-pin interface)
Boundary-scan capabilities according to the IEEE Std. 1149.1 (JTAG)
Access to the OCD system
Programming of Flash, EEPROM, Fuses and Lock Bits
Overview
The programming and debug facilities are accessed through PDI physical interface. The PDI
physical interface uses one dedicated pin together with the Reset pin, and no general purpose
pins are used.
28.3
PDI - Program and Debug Interface
The PDI is an Atmel proprietary protocol for communication between the microcontroller and
Atmel’s development tools.
46
8069C–AVR–06/08
XMEGA A4
29. Pinout and Pin Functions
The pinout of XMEGA A4 is shown in ”Pinout/Block Diagram” on page 2. In addition to general
I/O functionality, each pin may have several functions. This will depend on which peripheral is
enabled and connected to the actual pin. Only one of the alternate pin functions can be used at
time.
29.1
Alternate Pin Functions Description
The tables below shows the notation for all pin functions available and describe their functions.
29.1.1
29.1.2
29.1.3
29.1.4
Operation/Power Supply
VCC
Digital supply voltage
AVCC
Analog supply voltage
GND
Ground
Port Interrupt functions
SYNC
Port pin with full synchronous and limited asynchronous interrupt function
ASYNC
Port pin with full synchronous and full asynchronous interrupt function
Analog functions
ACn
Analog Comparator input pin n
AC0OUT
Analog Comparator 0 Output
ADCn
Analog to Digital Converter input pin n
DACn
Digital to Analog Converter output pin n
AREF
Analog Reference input pin
Timer/Counter and AWEX functions
OCnx
Output Compare Channel x for Timer/Counter n
OCnx
Inverted Output Compare Channel x for Timer/Counter n
47
8069C–AVR–06/08
XMEGA A4
29.1.5
29.1.6
29.1.7
Communication functions
SCL
Serial Clock for TWI
SDA
Serial Data for TWI
XCKn
Transfer Clock for USART n
RXDn
Receiver Data for USART n
TXDn
Transmitter Data for USART n
SS
Slave Select for SPI
MOSI
Master Out Slave In for SPI
MISO
Master In Slave Out for SPI
SCK
Serial Clock for SPI
Oscillators, Clock and Event
TOSCn
Timer Oscillator pin n
XTALn
Input/Output for inverting Oscillator pin n
Debug/System functions
TEST
Test pin
PROG
Programming pin
RESET
Reset pin
PDI_CLK
Program and Debug Interface Clock pin
PDI_DATA
Program and Debug Interface Data pin
48
8069C–AVR–06/08
XMEGA A4
29.2
Alternate Pin Functions
The tables below shows the main and alternate pin functions for all pins on each port. It also
shows which peripheral which make use of or enable the alternate pin function.
Table 29-1.
PORTA
Port A - Alternate functions
PIN #
INTERRUPT
ADCA POS
ADCA NEG
ADCA
GAINPOS
ADCA
GAINNEG
ACA POS
ACA NEG
GND
38
AVCC
39
PA0
40
SYNC
ADC0
ADC0
ADC0
AC0
AC0
PA1
41
SYNC
ADC1
ADC1
ADC1
AC1
AC1
PA2
42
SYNC/ASYNC
ADC2
ADC2
ADC2
AC2
PA3
43
SYNC
ADC3
ADC3
ADC3
AC3
PA4
44
SYNC
ADC4
ADC4
ADC4
AC4
PA5
1
SYNC
ADC5
ADC5
ADC5
AC5
PA6
2
SYNC
ADC6
ADC6
ADC6
AC6
PA7
3
SYNC
ADC7
ADC7
ADC7
Table 29-2.
AREF
AC3
AC5
AC7
AC0 OUT
ADCB
GAINNEG
INTERRUPT
ADCA POS
PB0
4
SYNC
ADC8
PB1
5
SYNC
ADC9
PB2
6
SYNC/ASYNC
ADC10
DAC0
PB3
7
SYNC
ADC11
DAC1
PORTC
GND
ADCBNEG
GAINPOS
PIN #
Table 29-3.
REF
Port B - Alternate functions
ADCB
PORTB
ACA OUT
ACBPOS
ACCNEG
ACBOUT
DAC
REF
AREF
Port C - Alternate functions
PIN #
INTERRUPT
TCC0
AWEXC
TCC1
USARTC0
USARTC1
SPI
TWIC
CLOCKOUT
EVENTOUT
CLKOUT
EVOUT
8
VCC
9
PC0
10
SYNC
OC0A
OC0A
PC1
11
SYNC
OC0B
OC0A
XCK0
PC2
12
SYNC/ASYNC
OC0C
OC0B
RXD0
PC3
13
SYNC
OC0D
OC0B
PC4
14
SYNC
OC0C
OC1A
PC5
15
SYNC
OC0C
OC1B
XCK0
XCK1
MOSI
PC6
16
SYNC
OC0D
RXD0
RXD1
MISO
PC7
17
SYNC
OC0D
TXD0
TXD1
SCK
SDA
SCL
TXD0
SS
49
8069C–AVR–06/08
XMEGA A4
Table 29-4.
PORTD
Port D - Alternate functions
PIN #
INTERRUPT
TCD0
SYNC
OC0A
USARTD0
USARTD1
SPID
GND
18
VCC
19
PD0
20
PD1
21
SYNC
OC0B
XCK0
PD2
22
SYNC/ASYNC
OC0C
RXD0
PD3
23
SYNC
OC0D
TXD0
PD4
24
SYNC
PD5
25
SYNC
XCK1
MOSI
PD6
26
SYNC
RXD1
MISO
PD7
27
SYNC
TXD1
SCK
Table 29-5.
PORT E
CLOCKOUT
EVENTOUT
CLKOUT
EVOUT
SS
Port E - Alternate functions
PIN #
INTERRUPT
TCE0
PE0
28
SYNC
OC0A
USARTE0
PE1
29
SYNC
OC0B
XCK0
GND
30
VCC
31
PE2
32
SYNC/ASYNC
OC0C
RXD0
PE3
33
SYNC
OC0D
TXD0
TWIE
SDA
SCL
Table 29-6.
SYS
PIN #
PDI
34
PDI_D
RESET
35
PDI_CLK
Table 29-7.
PORTR
PROGR
Port R - Alternate functions
PIN #
XTAL
TOSC
PR0
36
XTAL2
TOSC2
PR1
37
XTAL1
TOSC1
50
8069C–AVR–06/08
XMEGA A4
30. Peripheral Module Address Map
The address maps show the base address for each peripheral and module in XMEGA A4. For
complete register description and summary for each peripheral module, refer to the XMEGA A
Manual.
Base Address
0x0000
0x0010
0x0014
0x0018
0x001C
0x0030
0x0040
0x0048
0x0050
0x0060
0x0068
0x0070
0x0078
0x0080
0x0090
0x00A0
0x00B0
0x00C0
0x0100
0x0180
0x01C0
0x0200
0x0320
0x0380
0x0400
0x0480
0x04A0
0x0600
0x0620
0x0640
0x0660
0x0680
0x07E0
0x0800
0x0840
0x0880
0x0890
0x08A0
0x08B0
0x08C0
0x08F8
0x0900
0x0940
0x0990
0x09A0
0x09B0
0x09C0
0x0A00
0x0A90
0x0AA0
Name
Description
GPIO
VPORT0
VPORT1
VPORT2
VPORT3
CPU
CLK
SLEEP
OSC
DFLLRC32M
DFLLRC2M
PR
RST
WDT
MCU
PMIC
PORTCFG
AES
DMA
EVSYS
NVM
ADCA
DACB
ACA
RTC
TWIC
TWIE
PORTA
PORTB
PORTC
PORTD
PORTE
PORTR
TCC0
TCC1
AWEXC
HIRESC
USARTC0
USARTC1
SPIC
IRCOM
TCD0
TCD1
HIRESD
USARTD0
USARTD1
SPID
TCE0
HIRESE
USARTE0
General Purpose IO Registers
Virtual Port 0
Virtual Port 1
Virtual Port 2
Virtual Port 2
CPU
Clock Control
Sleep Controller
Oscillator Control
DFLL for the 32 MHz Internal RC Oscillator
DFLL for the 2 MHz RC Oscillator
Power Reduction
Reset Controller
Watch-Dog Timer
MCU Control
Programmable MUltilevel Interrupt Controller
Port Configuration
AES Module
DMA Controller
Event System
Non Volatile Memory (NVM) Controller
Analog to Digital Converter on port A
Digital to Analog Converter on port B
Analog Comparator pair on port A
Real Time Counter
Two Wire Interface on port C
Two Wire Interface on port E
Port A
Port B
Port C
Port D
Port E
Port R
Timer/Counter 0 on port C
Timer/Counter 1 on port C
Advanced Waveform Extension on port C
High Resolution Extension on port C
USART 0 on port C
USART 1 on port C
Serial Peripheral Interface on port C
Infrared Communication Module
Timer/Counter 0 on port D
Timer/Counter 1 on port D
High Resolution Extension on port D
USART 0 on port D
USART 1 on port D
Serial Peripheral Interface on port D
Timer/Counter 0 on port E
High Resolution Extension on port E
USART 0 on port E
51
8069C–AVR–06/08
XMEGA A4
31. Instruction Set Summary
Mnemonics
Operands
Description
Operation
Flags
#Clocks
Arithmetic and Logic Instructions
Add without Carry
Rd
←
Rd + Rr
Z,C,N,V,S,H
1
Rd, Rr
Add with Carry
Rd
←
Rd + Rr + C
Z,C,N,V,S,H
1
Rd, K
Add Immediate to Word
Rd
←
Rd + 1:Rd + K
Z,C,N,V,S
2
SUB
Rd, Rr
Subtract without Carry
Rd
←
Rd - Rr
Z,C,N,V,S,H
1
SUBI
Rd, K
Subtract Immediate
Rd
←
Rd - K
Z,C,N,V,S,H
1
SBC
Rd, Rr
Subtract with Carry
Rd
←
Rd - Rr - C
Z,C,N,V,S,H
1
SBCI
Rd, K
Subtract Immediate with Carry
Rd
←
Rd - K - C
Z,C,N,V,S,H
1
SBIW
Rd, K
Subtract Immediate from Word
Rd + 1:Rd
←
Rd + 1:Rd - K
Z,C,N,V,S
2
ADD
Rd, Rr
ADC
ADIW
AND
Rd, Rr
Logical AND
Rd
←
Rd • Rr
Z,N,V,S
1
ANDI
Rd, K
Logical AND with Immediate
Rd
←
Rd • K
Z,N,V,S
1
OR
Rd, Rr
Logical OR
Rd
←
Rd v Rr
Z,N,V,S
1
ORI
Rd, K
Logical OR with Immediate
Rd
←
Rd v K
Z,N,V,S
1
EOR
Rd, Rr
Exclusive OR
Rd
←
Rd ⊕ Rr
Z,N,V,S
1
COM
Rd
One’s Complement
Rd
←
$FF - Rd
Z,C,N,V,S
1
NEG
Rd
Two’s Complement
Rd
←
$00 - Rd
Z,C,N,V,S,H
1
SBR
Rd,K
Set Bit(s) in Register
Rd
←
Rd v K
Z,N,V,S
1
CBR
Rd,K
Clear Bit(s) in Register
Rd
←
Rd • ($FFh - K)
Z,N,V,S
1
INC
Rd
Increment
Rd
←
Rd + 1
Z,N,V,S
1
DEC
Rd
Decrement
Rd
←
Rd - 1
Z,N,V,S
1
TST
Rd
Test for Zero or Minus
Rd
←
Rd • Rd
Z,N,V,S
1
CLR
Rd
Clear Register
Rd
←
Rd ⊕ Rd
Z,N,V,S
1
SER
Rd
Set Register
Rd
←
$FF
None
1
MUL
Rd,Rr
Multiply Unsigned
R1:R0
←
Rd x Rr (UU)
Z,C
2
MULS
Rd,Rr
Multiply Signed
R1:R0
←
Rd x Rr (SS)
Z,C
2
MULSU
Rd,Rr
Multiply Signed with Unsigned
R1:R0
←
Rd x Rr (SU)
Z,C
2
FMUL
Rd,Rr
Fractional Multiply Unsigned
R1:R0
←
Rd x Rr<<1 (UU)
Z,C
2
FMULS
Rd,Rr
Fractional Multiply Signed
R1:R0
←
Rd x Rr<<1 (SS)
Z,C
2
FMULSU
Rd,Rr
Fractional Multiply Signed with Unsigned
R1:R0
←
Rd x Rr<<1 (SU)
Z,C
2
DES
K
Data Encryption
if (H = 0) then R15:R0
else if (H = 1) then R15:R0
←
←
Encrypt(R15:R0, K)
Decrypt(R15:R0, K)
PC
←
PC + k + 1
None
2
1/2
Branch Instructions
RJMP
k
Relative Jump
IJMP
Indirect Jump to (Z)
PC(15:0)
PC(21:16)
←
←
Z,
0
None
2
EIJMP
Extended Indirect Jump to (Z)
PC(15:0)
PC(21:16)
←
←
Z,
EIND
None
2
JMP
k
Jump
PC
←
k
None
3
RCALL
k
Relative Call Subroutine
PC
←
PC + k + 1
None
2 / 3(1)
ICALL
Indirect Call to (Z)
PC(15:0)
PC(21:16)
←
←
Z,
0
None
2 / 3(1)
EICALL
Extended Indirect Call to (Z)
PC(15:0)
PC(21:16)
←
←
Z,
EIND
None
3(1)
52
8069C–AVR–06/08
XMEGA A4
Mnemonics
Operands
Description
CALL
k
call Subroutine
PC
←
RET
Subroutine Return
PC
RETI
Interrupt Return
CPSE
Rd,Rr
Compare, Skip if Equal
CP
Rd,Rr
Compare
CPC
Rd,Rr
Compare with Carry
CPI
Rd,K
Compare with Immediate
Operation
Flags
#Clocks
k
None
3 / 4(1)
←
STACK
None
4 / 5(1)
PC
←
STACK
I
4 / 5(1)
if (Rd = Rr) PC
←
PC + 2 or 3
None
1/2/3
Rd - Rr
Z,C,N,V,S,H
1
Rd - Rr - C
Z,C,N,V,S,H
1
Rd - K
Z,C,N,V,S,H
1
SBRC
Rr, b
Skip if Bit in Register Cleared
if (Rr(b) = 0) PC
←
PC + 2 or 3
None
1/2/3
SBRS
Rr, b
Skip if Bit in Register Set
if (Rr(b) = 1) PC
←
PC + 2 or 3
None
1/2/3
SBIC
A, b
Skip if Bit in I/O Register Cleared
if (I/O(A,b) = 0) PC
←
PC + 2 or 3
None
2/3/4
SBIS
A, b
Skip if Bit in I/O Register Set
If (I/O(A,b) =1) PC
←
PC + 2 or 3
None
2/3/4
BRBS
s, k
Branch if Status Flag Set
if (SREG(s) = 1) then PC
←
PC + k + 1
None
1/2
BRBC
s, k
Branch if Status Flag Cleared
if (SREG(s) = 0) then PC
←
PC + k + 1
None
1/2
BREQ
k
Branch if Equal
if (Z = 1) then PC
←
PC + k + 1
None
1/2
BRNE
k
Branch if Not Equal
if (Z = 0) then PC
←
PC + k + 1
None
1/2
BRCS
k
Branch if Carry Set
if (C = 1) then PC
←
PC + k + 1
None
1/2
BRCC
k
Branch if Carry Cleared
if (C = 0) then PC
←
PC + k + 1
None
1/2
BRSH
k
Branch if Same or Higher
if (C = 0) then PC
←
PC + k + 1
None
1/2
BRLO
k
Branch if Lower
if (C = 1) then PC
←
PC + k + 1
None
1/2
BRMI
k
Branch if Minus
if (N = 1) then PC
←
PC + k + 1
None
1/2
BRPL
k
Branch if Plus
if (N = 0) then PC
←
PC + k + 1
None
1/2
BRGE
k
Branch if Greater or Equal, Signed
if (N ⊕ V= 0) then PC
←
PC + k + 1
None
1/2
BRLT
k
Branch if Less Than, Signed
if (N ⊕ V= 1) then PC
←
PC + k + 1
None
1/2
BRHS
k
Branch if Half Carry Flag Set
if (H = 1) then PC
←
PC + k + 1
None
1/2
BRHC
k
Branch if Half Carry Flag Cleared
if (H = 0) then PC
←
PC + k + 1
None
1/2
BRTS
k
Branch if T Flag Set
if (T = 1) then PC
←
PC + k + 1
None
1/2
BRTC
k
Branch if T Flag Cleared
if (T = 0) then PC
←
PC + k + 1
None
1/2
BRVS
k
Branch if Overflow Flag is Set
if (V = 1) then PC
←
PC + k + 1
None
1/2
BRVC
k
Branch if Overflow Flag is Cleared
if (V = 0) then PC
←
PC + k + 1
None
1/2
BRIE
k
Branch if Interrupt Enabled
if (I = 1) then PC
←
PC + k + 1
None
1/2
BRID
k
Branch if Interrupt Disabled
if (I = 0) then PC
←
PC + k + 1
None
1/2
MOV
Rd, Rr
Copy Register
Rd
←
Rr
None
1
MOVW
Rd, Rr
Copy Register Pair
Rd+1:Rd
←
Rr+1:Rr
None
1
LDI
Rd, K
Load Immediate
Rd
←
K
None
1
LDS
Rd, k
Load Direct from data space
Rd
←
(k)
None
2(1)(2)
LD
Rd, X
Load Indirect
Rd
←
(X)
None
1(1)(2)
LD
Rd, X+
Load Indirect and Post-Increment
Rd
X
←
←
(X)
X+1
None
1(1)(2)
LD
Rd, -X
Load Indirect and Pre-Decrement
X ← X - 1,
Rd ← (X)
←
←
X-1
(X)
None
2(1)(2)
LD
Rd, Y
Load Indirect
Rd ← (Y)
←
(Y)
None
1(1)(2)
LD
Rd, Y+
Load Indirect and Post-Increment
Rd
Y
←
←
(Y)
Y+1
None
1(1)(2)
Data Transfer Instructions
53
8069C–AVR–06/08
XMEGA A4
Mnemonics
Operands
Description
Flags
#Clocks
LD
Rd, -Y
Load Indirect and Pre-Decrement
Y
Rd
←
←
Y-1
(Y)
None
2(1)(2)
LDD
Rd, Y+q
Load Indirect with Displacement
Rd
←
(Y + q)
None
2(1)(2)
LD
Rd, Z
Load Indirect
Rd
←
(Z)
None
1(1)(2)
LD
Rd, Z+
Load Indirect and Post-Increment
Rd
Z
←
←
(Z),
Z+1
None
1(1)(2)
LD
Rd, -Z
Load Indirect and Pre-Decrement
Z
Rd
←
←
Z - 1,
(Z)
None
2(1)(2)
LDD
Rd, Z+q
Load Indirect with Displacement
Rd
←
(Z + q)
None
2(1)(2)
STS
k, Rr
Store Direct to Data Space
(k)
←
Rd
None
2(1)
ST
X, Rr
Store Indirect
(X)
←
Rr
None
1(1)
ST
X+, Rr
Store Indirect and Post-Increment
(X)
X
←
←
Rr,
X+1
None
1(1)
ST
-X, Rr
Store Indirect and Pre-Decrement
X
(X)
←
←
X - 1,
Rr
None
2(1)
ST
Y, Rr
Store Indirect
(Y)
←
Rr
None
1(1)
ST
Y+, Rr
Store Indirect and Post-Increment
(Y)
Y
←
←
Rr,
Y+1
None
1(1)
ST
-Y, Rr
Store Indirect and Pre-Decrement
Y
(Y)
←
←
Y - 1,
Rr
None
2(1)
STD
Y+q, Rr
Store Indirect with Displacement
(Y + q)
←
Rr
None
2(1)
ST
Z, Rr
Store Indirect
(Z)
←
Rr
None
1(1)
ST
Z+, Rr
Store Indirect and Post-Increment
(Z)
Z
←
←
Rr
Z+1
None
1(1)
ST
-Z, Rr
Store Indirect and Pre-Decrement
Z
←
Z-1
None
2(1)
STD
Z+q,Rr
Store Indirect with Displacement
(Z + q)
←
Rr
None
2(1)
Load Program Memory
R0
←
(Z)
None
3
LPM
Operation
LPM
Rd, Z
Load Program Memory
Rd
←
(Z)
None
3
LPM
Rd, Z+
Load Program Memory and Post-Increment
Rd
Z
←
←
(Z),
Z+1
None
3
Extended Load Program Memory
R0
←
(RAMPZ:Z)
None
3
ELPM
ELPM
Rd, Z
Extended Load Program Memory
Rd
←
(RAMPZ:Z)
None
3
ELPM
Rd, Z+
Extended Load Program Memory and PostIncrement
Rd
Z
←
←
(RAMPZ:Z),
Z+1
None
3
Store Program Memory
(RAMPZ:Z)
←
R1:R0
None
-
(RAMPZ:Z)
Z
←
←
R1:R0,
Z+2
None
-
Rd
←
I/O(A)
None
1
I/O(A)
←
Rr
None
1
STACK
←
Rr
None
1(1)
Rd
←
STACK
None
2(1)
Rd(n+1)
Rd(0)
C
←
←
←
Rd(n),
0,
Rd(7)
Z,C,N,V,H
1
Rd(n)
Rd(7)
C
←
←
←
Rd(n+1),
0,
Rd(0)
Z,C,N,V
1
SPM
SPM
Z+
Store Program Memory and Post-Increment
by 2
IN
Rd, A
In From I/O Location
OUT
A, Rr
Out To I/O Location
PUSH
Rr
Push Register on Stack
POP
Rd
Pop Register from Stack
Bit and Bit-test Instructions
LSL
Rd
Logical Shift Left
LSR
Rd
Logical Shift Right
54
8069C–AVR–06/08
XMEGA A4
Mnemonics
Operands
Description
Operation
ROL
Rd
Rotate Left Through Carry
ROR
Rd
ASR
Flags
#Clocks
Rd(0)
Rd(n+1)
C
←
←
←
C,
Rd(n),
Rd(7)
Z,C,N,V,H
1
Rotate Right Through Carry
Rd(7)
Rd(n)
C
←
←
←
C,
Rd(n+1),
Rd(0)
Z,C,N,V
1
Rd
Arithmetic Shift Right
Rd(n)
←
Rd(n+1), n=0..6
Z,C,N,V
1
SWAP
Rd
Swap Nibbles
Rd(3..0)
↔
Rd(7..4)
None
1
BSET
s
Flag Set
SREG(s)
←
1
SREG(s)
1
BCLR
s
Flag Clear
SREG(s)
←
0
SREG(s)
1
SBI
A, b
Set Bit in I/O Register
I/O(A, b)
←
1
None
1
CBI
A, b
Clear Bit in I/O Register
I/O(A, b)
←
0
None
1
BST
Rr, b
Bit Store from Register to T
T
←
Rr(b)
T
1
BLD
Rd, b
Bit load from T to Register
Rd(b)
←
T
None
1
SEC
Set Carry
C
←
1
C
1
CLC
Clear Carry
C
←
0
C
1
SEN
Set Negative Flag
N
←
1
N
1
CLN
Clear Negative Flag
N
←
0
N
1
SEZ
Set Zero Flag
Z
←
1
Z
1
CLZ
Clear Zero Flag
Z
←
0
Z
1
SEI
Global Interrupt Enable
I
←
1
I
1
CLI
Global Interrupt Disable
I
←
0
I
1
SES
Set Signed Test Flag
S
←
1
S
1
CLS
Clear Signed Test Flag
S
←
0
S
1
SEV
Set Two’s Complement Overflow
V
←
1
V
1
CLV
Clear Two’s Complement Overflow
V
←
0
V
1
SET
Set T in SREG
T
←
1
T
1
CLT
Clear T in SREG
T
←
0
T
1
SEH
Set Half Carry Flag in SREG
H
←
1
H
1
CLH
Clear Half Carry Flag in SREG
H
←
0
H
1
MCU Control Instructions
BREAK
Break
NOP
No Operation
SLEEP
Sleep
WDR
Watchdog Reset
Notes:
(See specific descr. for BREAK)
None
1
None
1
(see specific descr. for Sleep)
None
1
(see specific descr. for WDR)
None
1
1. Cycle times for Data memory accesses assume internal memory accesses, and are not valid
for accesses via the external RAM interface.
2. One extra cycle must be added when accessing Internal SRAM.
55
8069C–AVR–06/08
XMEGA A4
32. Packaging information
32.1
44A
PIN 1
B
PIN 1 IDENTIFIER
E1
e
E
D1
D
C
0˚~7˚
A1
A2
A
L
COMMON DIMENSIONS
(Unit of Measure = mm)
MIN
NOM
MAX
A
–
–
1.20
A1
0.05
–
0.15
SYMBOL
Notes:
1. This package conforms to JEDEC reference MS-026, Variation ACB.
2. Dimensions D1 and E1 do not include mold protrusion. Allowable
protrusion is 0.25 mm per side. Dimensions D1 and E1 are maximum
plastic body size dimensions including mold mismatch.
3. Lead coplanarity is 0.10 mm maximum.
A2
0.95
1.00
1.05
D
11.75
12.00
12.25
D1
9.90
10.00
10.10
E
11.75
12.00
12.25
E1
9.90
10.00
10.10
B
0.30
–
0.45
C
0.09
–
0.20
L
0.45
–
0.75
e
NOTE
Note 2
Note 2
0.80 TYP
10/5/2001
R
2325 Orchard Parkway
San Jose, CA 95131
TITLE
44A, 44-lead, 10 x 10 mm Body Size, 1.0 mm Body Thickness,
0.8 mm Lead Pitch, Thin Profile Plastic Quad Flat Package (TQFP)
DRAWING NO.
REV.
44A
B
56
8069C–AVR–06/08
XMEGA A4
32.2
44M1
D
Marked Pin# 1 ID
E
SEATING PLANE
A1
TOP VIEW
A3
A
K
L
Pin #1 Corner
D2
1
2
3
Option A
SIDE VIEW
Pin #1
Triangle
COMMON DIMENSIONS
(Unit of Measure = mm)
E2
Option B
Pin #1
Chamfer
(C 0.30)
SYMBOL
MIN
A
0.80
0.90
1.00
A1
–
0.02
0.05
A3
K
Option C
b
e
Pin #1
Notch
(0.20 R)
BOTTOM VIEW
MAX
NOTE
0.25 REF
b
0.18
0.23
0.30
D
6.90
7.00
7.10
D2
5.00
5.20
5.40
E
6.90
7.00
7.10
E2
5.00
5.20
5.40
e
Note: JEDEC Standard MO-220, Fig. 1 (SAW Singulation) VKKD-3.
NOM
0.50 BSC
L
0.59
0.64
0.69
K
0.20
0.26
0.41
5/27/06
R
2325 Orchard Parkway
San Jose, CA 95131
TITLE
44M1, 44-pad, 7 x 7 x 1.0 mm Body, Lead Pitch 0.50 mm,
5.20 mm Exposed Pad, Micro Lead Frame Package (MLF)
DRAWING NO.
44M1
REV.
G
57
8069C–AVR–06/08
XMEGA A4
33. Electrical Characteristics - TBD
33.1
Absolute Maximum Ratings*
Operating Temperature.................................. -55°C to +125°C
*NOTICE:
Storage Temperature ..................................... -65°C to +150°C
Voltage on any Pin with respect to Ground..-0.5V to VCC+0.5V
Maximum Operating Voltage ............................................ 3.6V
DC Current per I/O Pin ............................................... 20.0 mA
Stresses beyond those listed under “Absolute
Maximum Ratings” may cause permanent damage to the device. This is a stress rating only and
functional operation of the device at these or
other conditions beyond those indicated in the
operational sections of this specification is not
implied. Exposure to absolute maximum rating
conditions for extended periods may affect
device reliability.
DC Current VCC and GND Pins................................ 200.0 mA
33.2
DC Characteristics
TA = -40°C to 85°C, VCC = 1.6V to 3.6V (unless otherwise noted)
Symbol
Parameter
VIL
Input Low Voltage, except XTAL1 pin
V
VIL1
Input Low Voltage, XTAL1 pins
V
VIH
Input High Voltage, except XTAL1 pin
V
VIH1
Input High Voltage, XTAL1 pin
V
VOL
Output Low Voltage
VOH
Output High Voltage
IIL
Input Leakage
Current I/O Pin
µA
IIH
Input Leakage
Current I/O Pin
µA
RRST
Reset Pull-up Resistor
kΩ
RPU
I/O Pin Pull-up Resistor
kΩ
Power Supply Current
ICC
Power-down mode
Condition
Min.
Typ.
Max.
Units
Active 32 MHz
mA
Active 20 MHz
mA
Active 8MHz
mA
Idle 32 MHz
mA
Idle 20 MHz
mA
WDT disabled
µA
WDT slow sampling
µA
WDT fast sampling
Note:
1. “Max” means the highest value where the pin is guaranteed to be read as low
2. “Min” means the lowest value where the pin is guaranteed to be read as high
58
8069C–AVR–06/08
XMEGA A4
33.3
Speed
The maximum frequency of the XMEGA A4 devices is depending on VCC. As shown in Figure
33-1 on page 59 the Frequency vs.VCC curve is linear between 1.8V < VCC < 2.7V.
Figure 33-1. Maximum Frequency vs.VCC
MHz
32
Safe Operating Area
12
1.6
1.8
2.7
3.6
V
59
8069C–AVR–06/08
XMEGA A4
33.4
ADC Characteristics – TBD
Table 33-1.
Symbol
ADC Characteristics
Parameter
Condition
Min
Typ
Max
Resolution
LSB
Integral Non-Linearity (INL)
LSB
Differential Non-Linearity (DNL)
LSB
Gain Error
LSB
Offset Error
LSB
Conversion Time
AVCC
µs
ADC Clock Frequency
MHz
DC Supply Voltage
mA
Source Impedance
Ω
Start-up time
µs
Analog Supply Current
Table 33-2.
Symbol
Units
VCC - 0.3
VCC + 0.3
V
Max
Units
ADC Gain Stage Characteristics
Parameter
Condition
Min
Typ
Gain
Input Capacitance
pF
Offset Error
mV
Gain Error
%
Signal Range
V
DC Supply Current
Start-up time
mA
# clk cycles
60
8069C–AVR–06/08
XMEGA A4
33.5
DAC Characteristics – TBD
Table 33-3.
Symbol
33.6
DAC Characteristics
Parameter
Condition
Min
Typ
Max
Units
Resolution
LSB
Integral Non-Linearity (INL)
LSB
Differential Non-Linearity (DNL)
LSB
Gain Error
LSB
Offset Error
LSB
Calibrated Gain/Offset Error
LSB
Output Range
V
Output Settling Time
µs
Output Capacitance
nF
Output Resistance
kΩ
Reference Input Voltage
V
Reference Input Capacitance
pF
Reference Input Resistance
kΩ
Current Consumption
mA
Start-up time
µs
Analog Comparator Characteristics – TBD
Table 33-4.
Symbol
Analog Comparator Characteristics
Parameter
Condition
Offset
Min
Typ
Max
Units
mV
No
Hysteresis
Low
mV
High
High Speed mode
Propagation Delay
ns
Low power mode
High Speed mode
Current Consumption
µA
Low power mode
Start-up time
µs
61
8069C–AVR–06/08
XMEGA A4
34. Typical Characteristics - TBD
62
8069C–AVR–06/08
XMEGA A4
35. Errata
35.1
All rev.
No known errata.
63
8069C–AVR–06/08
XMEGA A4
36. Datasheet Revision History
36.1
36.2
36.3
8069C – 06/08
1.
Updated Figure 2-1 on page 2 and ”Pinout and Pin Functions” on page 47.
2.
Updated ”Overview” on page 3.
3.
Updated XMEGA A4 Block Diagram, Figure 3-1 on page 4 by removing JTAG from the block
diagram.
4.
Removed the sections related to JTAG: JTAG Reset and JTAG Interface.
5.
Updated Table 13-1 on page 23.
6.
Updated all tables in section ”Alternate Pin Functions” on page 49.
1.
Updated ”Features” on page 1.
2.
Updated ”Pinout/Block Diagram” on page 2 and ”Pinout and Pin Functions” on page 47.
3.
Updated ”Ordering Information” on page 2.
4.
Updated ”Overview” on page 3, included the XMEGA A4 explanation text on page 6.
5.
Added XMEGA A4 Block Diagram, Figure 3-1 on page 4.
6.
Updated AVR CPU ”Features” on page 6 and Updated Figure 6-1 on page 6.
7.
Updated Event System block diagram, Figure 9-1 on page 15.
8.
Updated ”PMIC - Programmable Multi-level Interrupt Controller” on page 23.
9.
Updated ”AC - Analog Comparator” on page 42.
10.
Updated ”I/O configuration” on page 25.
11.
Inserted a new Figure 15-1 on page 30.
12.
Updated ”Peripheral Module Address Map” on page 51.
13.
Inserted ”Instruction Set Summary” on page 52.
14.
Added Speed grades in ”Speed” on page 59.
1.
Initial revision.
8069B – 06/08
8069A – 02/08
64
8069C–AVR–06/08
XMEGA A4
Table of Contents
Features ..................................................................................................... 1
Typical Applications ................................................................................ 1
1
Ordering Information ............................................................................... 2
2
Pinout/Block Diagram .............................................................................. 2
3
Overview ................................................................................................... 3
3.1Block Diagram ...........................................................................................................4
4
Resources ................................................................................................. 5
4.1Recommended reading .............................................................................................5
5
Disclaimer ................................................................................................. 5
6
AVR CPU ................................................................................................... 6
6.1Features ....................................................................................................................6
6.2Overview ....................................................................................................................6
6.3Register File ..............................................................................................................7
6.4ALU - Arithmetic Logic Unit .......................................................................................7
6.5Program Flow ............................................................................................................7
7
Memories .................................................................................................. 8
7.1Features ....................................................................................................................8
7.2Overview ....................................................................................................................8
7.3In-System Programmable Flash Program Memory ...................................................8
7.4Data Memory ...........................................................................................................10
7.5Calibration Row .......................................................................................................11
7.6User Signature Row ................................................................................................11
7.7Flash and EEPROM Page Size ...............................................................................12
8
DMAC - Direct Memory Access Controller .......................................... 13
8.1Features ..................................................................................................................13
8.2Overview ..................................................................................................................13
9
Event System .......................................................................................... 14
9.1Features ..................................................................................................................14
9.2Overview ..................................................................................................................14
10 System Clock and Clock options ......................................................... 16
10.1Features ................................................................................................................16
i
8069C–AVR–06/08
XMEGA A4
10.2Overview ................................................................................................................16
10.3Clock Options ........................................................................................................17
11 Power Management and Sleep Modes ................................................. 19
11.1Features ................................................................................................................19
11.2Overview ................................................................................................................19
11.3Sleep Modes ..........................................................................................................19
12 System Control and Reset .................................................................... 21
12.1Features ................................................................................................................21
12.2Resetting the AVR .................................................................................................21
12.3Reset Sources .......................................................................................................21
12.4WDT - Watchdog Timer .........................................................................................22
13 PMIC - Programmable Multi-level Interrupt Controller ....................... 23
13.1Features ................................................................................................................23
13.2Overview ................................................................................................................23
13.3Interrupt vectors .....................................................................................................23
14 I/O Ports .................................................................................................. 25
14.1Features ................................................................................................................25
14.2Overview ................................................................................................................25
14.3I/O configuration ....................................................................................................25
14.4Input sensing .........................................................................................................28
14.5Port Interrupt ..........................................................................................................28
14.6Alternate Port Functions ........................................................................................28
15 T/C - 16-bit Timer/Counter ..................................................................... 29
15.1Features ................................................................................................................29
15.2Overview ................................................................................................................29
16 AWEX - Advanced Waveform Extension ............................................. 31
16.1Features ................................................................................................................31
16.2Overview ................................................................................................................31
17 Hi-Res - High Resolution Extension ..................................................... 32
17.1Features ................................................................................................................32
17.2Overview ................................................................................................................32
18 RTC - 16-bit Real-Time Counter ............................................................ 33
18.1Features ................................................................................................................33
ii
8069C–AVR–06/08
XMEGA A4
18.2Overview ................................................................................................................33
19 TWI - Two-Wire Interface ....................................................................... 34
19.1Features ................................................................................................................34
19.2Overview ................................................................................................................34
20 SPI - Serial Peripheral Interface ............................................................ 35
20.1Features ................................................................................................................35
20.2Overview ................................................................................................................35
21 USART ..................................................................................................... 36
21.1Features ................................................................................................................36
21.2Overview ................................................................................................................36
22 IRCOM - IR Communication Module ..................................................... 37
22.1Features ................................................................................................................37
22.2Overview ................................................................................................................37
23 Crypto Engine ......................................................................................... 38
23.1Features ................................................................................................................38
23.2Overview ................................................................................................................38
24 ADC - 12-bit Analog to Digital Converter ............................................. 39
24.1Features ................................................................................................................39
24.2Overview ................................................................................................................39
25 DAC - 12-bit Digital to Analog Converter ............................................. 41
25.1Features ................................................................................................................41
25.2Overview ................................................................................................................41
26 AC - Analog Comparator ....................................................................... 42
26.1Features ................................................................................................................42
26.2Overview ................................................................................................................42
26.3Input Selection .......................................................................................................44
26.4Window Function ...................................................................................................44
27 OCD - On-chip Debug ............................................................................ 45
27.1Features ................................................................................................................45
27.2Overview ................................................................................................................45
28 Program and Debug Interfaces ............................................................. 46
28.1Features ................................................................................................................46
28.2Overview ................................................................................................................46
iii
8069C–AVR–06/08
XMEGA A4
28.3PDI - Program and Debug Interface ......................................................................46
29 Pinout and Pin Functions ...................................................................... 47
29.1Alternate Pin Functions Description ......................................................................47
29.2Alternate Pin Functions .........................................................................................49
30 Peripheral Module Address Map .......................................................... 51
31 Instruction Set Summary ....................................................................... 52
32 Packaging information .......................................................................... 56
32.144A ........................................................................................................................56
32.244M1 ......................................................................................................................57
33 Electrical Characteristics - TBD ............................................................ 58
33.1Absolute Maximum Ratings* .................................................................................58
33.2DC Characteristics .................................................................................................58
33.3Speed ....................................................................................................................59
33.4ADC Characteristics – TBD ...................................................................................60
33.5DAC Characteristics – TBD ...................................................................................61
33.6Analog Comparator Characteristics – TBD ...........................................................61
34 Typical Characteristics - TBD ............................................................... 62
35 Errata ....................................................................................................... 63
35.1All rev. ....................................................................................................................63
36 Datasheet Revision History ................................................................... 64
36.18069C – 06/08 .......................................................................................................64
36.28069B – 06/08 .......................................................................................................64
36.38069A – 02/08 .......................................................................................................64
Table of Contents....................................................................................... i
iv
8069C–AVR–06/08
Headquarters
International
Atmel Corporation
2325 Orchard Parkway
San Jose, CA 95131
USA
Tel: 1(408) 441-0311
Fax: 1(408) 487-2600
Atmel Asia
Room 1219
Chinachem Golden Plaza
77 Mody Road Tsimshatsui
East Kowloon
Hong Kong
Tel: (852) 2721-9778
Fax: (852) 2722-1369
Atmel Europe
Le Krebs
8, Rue Jean-Pierre Timbaud
BP 309
78054 Saint-Quentin-enYvelines Cedex
France
Tel: (33) 1-30-60-70-00
Fax: (33) 1-30-60-71-11
Atmel Japan
9F, Tonetsu Shinkawa Bldg.
1-24-8 Shinkawa
Chuo-ku, Tokyo 104-0033
Japan
Tel: (81) 3-3523-3551
Fax: (81) 3-3523-7581
Technical Support
[email protected]
Sales Contact
www.atmel.com/contacts
Product Contact
Web Site
www.atmel.com
Literature Requests
www.atmel.com/literature
Disclaimer: The information in this document is provided in connection with Atmel products. No license, express or implied, by estoppel or otherwise, to any
intellectual property right is granted by this document or in connection with the sale of Atmel products. EXCEPT AS SET FORTH IN ATMEL’S TERMS AND CONDITIONS OF SALE LOCATED ON ATMEL’S WEB SITE, ATMEL ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR STATUTORY
WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, OR NON-INFRINGEMENT. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION, OR LOSS OF INFORMATION) ARISING OUT OF
THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF ATMEL HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Atmel makes no
representations or warranties with respect to the accuracy or completeness of the contents of this document and reserves the right to make changes to specifications
and product descriptions at any time without notice. Atmel does not make any commitment to update the information contained herein. Unless specifically provided
otherwise, Atmel products are not suitable for, and shall not be used in, automotive applications. Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life.
© 2008 Atmel Corporation. All rights reserved. Atmel ®, logo and combinations thereof, AVR ® and others are registered trademarks or trademarks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of others.
8069C–AVR–06/08
Similar pages