8/16-bit Atmel XMEGA B3 Microcontroller ATxmega128B3 / ATxmega64B3 Features z High-performance, low-power Atmel® AVR® XMEGA® 8/16-bit Microcontroller z Nonvolatile program and data memories z z z z 64K - 128KBytes of in-system self-programmable flash 4K - 8KBytes boot section 2KBytes EEPROM 4K - 8KBytes internal SRAM z Peripheral Features z Two-channel DMA controller z Four-channel event system z Two 16-bit timer/counters z One timer/counters with 4 output compare or input capture channels z One timer/counter with 2 output compare or input capture channels z High resolution extensions one timer/counter z Advanced waveform extension (AWeX) on one timer/counter z Split mode on two timer/counters z One USB device interface z USB 2.0 full speed (12Mbps) and low speed (1.5Mbps) device compliant z 32 Endpoints with full configuration flexibility z One USARTs with IrDA support for one USART z AES and DES crypto engine z CRC-16 (CRC-CCITT) and CRC-32 (IEEE® 802.3) generator z One two-wire interface with dual address match (I2C and SMBus compatible) z One serial peripheral interface (SPI) z 16-bit Real Time Counter (RTC) with separate oscillator z Liquid Crystal Display z Up to 4x25 segment driver z Built in contrast control z ASCII character mapping z Flexible SWAP of segment and common terminals buses z One eight-channel, 12-bit, 300 thousand SPS Analog to Digital Converters z Two Analog Comparators with window compare function, and current source feature z External interrupts on all General Purpose I/O pins z Programmable watchdog timer with separate on-chip ultra low power oscillator z QTouch® library support z Capacitive touch buttons, sliders and wheels z Special microcontroller features z Power-on reset and programmable brown-out detection z Internal and external clock options with PLL z Programmable multilevel interrupt controller z Five sleep modes z Programming and debug interfaces z JTAG (IEEE 1149.1 Compliant) interface, including boundary scan z PDI (Program and Debug Interface) z I/O and Packages z 36 Programmable I/O pins z 64-lead TQFP z 64-pad QFN z 64-pad DRQFN Atmel-8074E–AVR–ATxmega 128B3 - 64B3_datasheet-09/2014 z Operating Voltage z 1.6 – 3.6V z Operating frequency z 0 – 12MHz from 1.6V z 0 – 32MHz from 2.7V 1. Ordering Information Flash (Bytes) EEPROM (Bytes) SRAM (Bytes) ATxmega128B3-AU 128K + 8K 2K 8K ATxmega128B3-AUR(4) 128K + 8K 2K 8K ATxmega128B3-MH 128K + 8K 2K 8K ATxmega128B3-MHR(4) 128K + 8K 2K 8K ATxmega128B3-MCU 128K + 8K 2K 8K ATxmega128B3-MCUR(4) 128K + 8K 2K 8K ATxmega64B3-AU 64K + 4K 2K 4K ATxmega64B3-AUR(4) 64K + 4K 2K 4K ATxmega64B3-MH 64K + 4K 2K 4K ATxmega64B3-MHR(4) 64K + 4K 2K 4K Ordering Code Speed (MHz) Power Supply Package(1)(2)(3) Temp 64A 32 1.6 - 3.6V 64M2 -40°C - 85°C 64P2 64A 32 1.6 - 3.6V -40°C - 85°C 64M2 Notes: 1. 2. 3. 4. This device can also be supplied in wafer form. Please contact your local Atmel sales office for detailed ordering information. Pb-free packaging, complies to the European Directive for Restriction of Hazardous Substances (RoHS directive). Also Halide free and fully Green. For packaging information, see “Packaging information” on page 68. Tape and Reel. Package Type 64A 64-lead, 14 x 14mm body size, 1.0mm body thickness, 0.5mm lead pitch, thin profile plastic quad flat package (TQFP) 64M2 64-pad, 9 x 9 x 1.0mm body size, 0.05mm lead pitch, 7.65 exposed pad, Quad Flat No-Lead Package (QFN) 64P2 64-pad, 7 x 7 x 1.0mm body size, 0.65mm pitch (Dual row staggered), Very Thin Quad No Lead Package (VQFN) Sawn Typical Applications XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 2 Industrial control Climate control Low power battery applications ® Factory automation RF and ZigBee Power tools Building control USB connectivity HVAC Board control Sensor control Utility metering White goods Optical Medical applications XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 3 2. Pinout/Block Diagram 2.1 Pinout – TQFP/QFN Figure 2-1. Block diagram and TQFP/QFN pinout 12 PDI / RESET 13 PDI 14 1. COM2 COM1 COM0 51 50 49 AVCC 56 COM3 PB0 57 52 PB1 58 PR0 PB2 59 53 PB3 60 PR1 PB4 60 54 PB5 62 AGND PB6 63 55 PB7 64 IRCOM Watchdog Timer DMA Controller Crypto / CRC CPU BUS Controller EEPROM FLASH SRAM COM LCD PWR DATA BUS SEG 15 Port G 19 20 21 22 23 24 25 26 27 PG3 / SEG21 PG4 / SEG20 PG5 / SEG19 PG6 / SEG18 PG7 / SEG17 PM0 / SEG16 PM1 / SEG15 PM2 / SEG14 Port M PG2 / SEG22 16 LCD Controller 18 VCC USB Prog/Dbg Interface OCD PG1 / SEG23 GND Interrupt Controller SEG PD1 Event Sys. Controller Sleep Reset Controller Controller 32 11 TWI Supervision PM7 / SEG9 PD0 VREF SPI Power 31 10 Real Time Counter USART0 Watchdog Oscillator PM6 / SEG10 9 TEMPREF 30 GND OSC/CLK Control TC0:1 PM5 / SEG11 8 Port C 7 PC7 VCC Note: 6 Port D PC6 5 17 PC5 DATA BUS PG0 / SEG24 PC4 EVENT ROUTING NETWORK 29 4 PM4 / SEG12 PC3 28 3 Port R Port B PM3 / SEG13 PC2 General Purpose I/O ADC 2 External clock / Crystal pins Analog function / Oscillators AREF PC1 Programming, debug, test Digital function AC0:1 1 LCD JTAG PC0 Power Ground 48 CAPH 47 CAPL 46 VLCD 45 BIAS2 44 BIAS1 43 VCC 42 GND 41 SEG0 40 SEG1 39 SEG2 38 SEG3 37 SEG4 36 SEG5 35 SEG6 34 SEG7 33 SEG8 For full details on pinout and alternate pin functions refer to “Pinout and Pin Functions” on page 55. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 4 Pinout – DRQFN Figure 2-2. DRQFN pinout for ATxmega128B3 A27 B23 A26 B1 A2 B2 A3 B3 A4 B4 A5 B5 A6 B6 A7 B7 A25 B22 A24 B21 A23 B20 A22 B19 A21 B18 A20 A23 B20 A22 B19 A21 B18 A20 B17 A19 B16 A18 B17 A19 B16 A18 A1 B1 A2 B2 A3 B3 A4 B4 A5 B5 A6 B6 A7 B7 A8 A16 B15 A17 B13 A15 B14 A12 B11 A13 B12 A14 B9 A11 B10 B8 A10 A8 A25 B22 A24 B21 A17 B15 A16 B14 A15 B13 A14 B12 A13 B11 A12 B10 A11 B9 A10 B8 A9 A1 Table 2-1. A26 B23 A27 B24 A28 B25 A29 B26 A30 B27 A31 B28 A32 B29 A33 B30 A34 Bottom view B25 A28 B24 A31 B27 A30 B26 A29 B29 A32 B28 A34 B30 A33 Top view A9 2.2 DRQFN pinout for ATxmega128B3 Pin Function Pin Function Pin Function Pin Function A1 PC0 A9 PG0/SEG24 A18 SEG7 A26 CAPH B1 PC1 B8 VCC B16 SEG8 B23 COM0 A2 PC2 A10 PG2/SEG22 A19 SEG6 A27 COM1 B2 PC3 B9 PG1/SEG23 B17 SEG5 B24 COM2 A3 PC4 A11 PG3/SEG21 A20 SEG4 A28 COM3 B3 PC5 B10 PG4/SEG20 B18 SEG3 B25 PR0 A4 PC6 A12 PG5/SEG19 A21 SEG2 A29 PR1 B4 GND B11 PG6/SEG18 B19 SEG1 B26 AGND A5 PC7 A13 PG7/SEG17 A22 SEG0 A30 PB0 B5 PD0 B12 PM0/SEG16 B20 GND B27 AVCC A6 VCC A14 PM1/SEG15 A23 VCC A31 PB1 B6 PDI/RESET B13 PM2/SEG14 B21 BIAS1 B28 PB2 A7 PD1 A15 PM3/SEG13 A24 BIAS2 A32 PB3 B7 PDI B14 PM5/SEG11 B22 VLCD B29 PB4 A8 GND A16 PM4/SEG12 A25 CAPL A33 PB5 B15 PM7/SEG9 B30 PB7 A17 PM6/SEG10 A34 PB6 XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 5 3. Overview The Atmel® AVR® XMEGA® is a family of low power, high performance, and peripheral rich 8/16-bit microcontrollers based on the AVR enhanced RISC architecture. By executing instructions in a single clock cycle, the Atmel AVR XMEGA devices achieve CPU throughput approaching one million instructions per second (MIPS) per megahertz, 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 32 registers are directly connected to the arithmetic logic unit (ALU), allowing two independent registers to be accessed in a 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 Atmel AVR XMEGA B3 devices provide the following features: in-system programmable flash with read-while-write capabilities; internal EEPROM and SRAM; two-channel DMA controller, four-channel event system and programmable multilevel interrupt controller, 36 general purpose I/O lines, real-time counter (RTC); Liquid Crystal Display supporting up to 4x25 segment driver, ASCII character mapping and built-in contrast control (LCD); three flexible, 16-bit timer/counters with compare and PWM channels; one USARTs; one two-wire serial interface (TWI); one full speed USB 2.0 interface; one serial peripheral interface (SPI); AES and DES cryptographic engine; one 8-channel, 12-bit ADCs with programmable gain; four analog comparators (ACs) 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, two-pin interface for programming and debugging, is available. The devices also have an IEEE std. 1149.1 compliant JTAG interface, and this can also be used for on-chip debug and programming. The ATx 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, USB resume, 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 power-save mode, the LCD controller is allowed to refresh data to the panel. In standby mode, the external crystal oscillator keeps running while the rest of the device is sleeping. This allows very fast startup from the external crystal, combined with low power consumption. In extended standby mode, both the main oscillator and the asynchronous timer continue to run, and the LCD controller is allowed to refresh data to the panel. To further reduce power consumption, the peripheral clock to each individual peripheral can optionally be stopped in active mode and idle sleep mode. Atmel offers a free QTouch® library for embedding capacitive touch buttons, sliders and wheels functionality into AVR microcontrollers. The devices are manufactured using Atmel high-density, nonvolatile memory technology. The program flash memory can be reprogrammed in-system through the PDI or JTAG interfaces. A boot loader running in the device can use any interface to download the application program to the flash memory. The boot loader 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 B1 is a powerful microcontroller family that provides a highly flexible and cost effective solution for many embedded applications. The atmel AVR ATx devices are supported with a full suite of program and system development tools, including C compilers, macro assemblers, program debugger/simulators, programmers, and evaluation kits. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 6 3.1 Block Diagram Figure 3-1. XMEGA B3 Block Diagram PR[0..1] XTAL1 / TOSC1 Power LCD Ground Programming, debug, test Digital function External clock / Crystal pins Analog function / Oscillators General Purpose I/O XTAL2 / TOSC2 PORT R (2) Oscillator Circuits/ Clock Generation Real Time Counter Watchdog Oscillator EVENT ROUTING NETWORK DATA BUS Event System Controller Watchdog Timer Oscillator Control SRAM DMA Controller Sleep Controller Prog/Debug Controller BUS Matrix Power Supervision POR/BOD & RESET VCC GND RESET / PDI_CLK PDI PDI_DATA VCC/10 JTAG Int. Refs. PORT B AES Tempref OCD DES AREFB CPU ADCB Interrupt Controller LCD LCD POWER[0..4] COM[0..3] SEG[0..8] CRC ACB NVM Controller PORT M (8) SEG[16..9] / PM[0..7] PORT G (8) SEG[24..17] / PG[0..7] PORT B (8) Flash EEPROM DATA BUS USB SPIC TWIC TCC0:1 USARTC0 EVENT ROUTING NETWORK IRCOM PB[0..7] / JTAG PORT C (8) PORT D (2) PC[0..7] PD[0..1] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 7 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 z XMEGA B Manual z XMEGA Application Notes This device data sheet only contains part specific information with a short description of each peripheral and module. The XMEGA B Manual describes the modules and peripherals in depth. The XMEGA application notes contain example code and show applied use of the modules and peripherals. All documentations are available from www.atmel.com/avr. 5. Capacitive touch sensing The Atmel QTouch® library provides a simple to use solution to realize touch sensitive interfaces on most Atmel AVR microcontrollers. The patented charge-transfer signal acquisition offers robust sensing and includes fully debounced reporting of touch keys and includes Adjacent key suppression® (AKS®) technology for unambiguous detection of key events. The QTouch library includes support for the QTouch and QMatrix acquisition methods. Touch sensing can be added to any application by linking the appropriate Atmel QTouch library for the AVR Microcontroller. This is done by using a simple set of APIs to define the touch channels and sensors, and then calling the touch sensing API’s to retrieve the channel information and determine the touch sensor states. The QTouch library is FREE and downloadable from the Atmel website at the following location: www.atmel.com/qtouchlibrary. For implementation details and other information, refer to the Atmel QTouch library user guide - also available for download from the Atmel website. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 8 6. AVR CPU 6.1 Features z 8/16-bit, high-performance Atmel AVR RISC CPU z z 142 instructions Hardware multiplier z 32x8-bit registers directly connected to the ALU z Stack in RAM z Stack pointer accessible in I/O memory space z Direct addressing of up to 16MB of program memory and 16MB of data memory z True 16/24-bit access to 16/24-bit I/O registers z Efficient support for 8-, 16-, and 32-bit arithmetic z Configuration change protection of system-critical features 6.2 Overview All AVR XMEGA devices use the 8/16-bit AVR CPU. The main function of the CPU is to execute the code and perform all calculations. The CPU is able to access memories, perform calculations, control peripherals, and execute the program in the flash memory. Interrupt handling is described in a separate section, refer to “Interrupts and Programmable Multilevel Interrupt Controller” on page 29. 6.3 Architectural Overview In order to maximize performance and parallelism, the AVR CPU uses a Harvard architecture with separate memories and buses for program and data. Instructions in the program memory are executed with single-level pipelining. While one instruction is being executed, the next instruction is pre-fetched from the program memory. This enables instructions to be executed on every clock cycle. For details of all AVR instructions, refer to http://www.atmel.com/avr. Figure 6-1. Block Diagram of the AVR CPU architecture. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 9 The 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 in the ALU. After an arithmetic operation, the status register is updated to reflect information about the result of the operation. The ALU is directly connected to the fast-access register file. The 32 x 8-bit general purpose working registers all have single clock cycle access time allowing single-cycle arithmetic logic unit (ALU) operation between registers or between a register and an immediate. Six of the 32 registers can be used as three 16-bit address pointers for program and data space addressing, enabling efficient address calculations. The memory spaces are linear. The data memory space and the program memory space are two different memory spaces. The data memory space is divided into I/O registers and SRAM. In addition, the EEPROM can be memory mapped in the data memory. All I/O status and control registers reside in the lowest 4KB addresses of the data memory. This is referred to as the I/O memory space. The lowest 64 addresses can be accessed directly, or as the data space locations from 0x00 to 0x3F. The rest is the extended I/O memory space, ranging from 0x0040 to 0x0FFF. I/O registers here must be accessed as data space locations using load (LD/LDS/LDD) and store (ST/STS/STD) instructions. The SRAM holds data. Code execution from SRAM is not supported. It can easily be accessed through the five different addressing modes supported in the AVR architecture. The first SRAM address is 0x2000. Data addresses 0x1000 to 0x1FFF are reserved for memory mapping of EEPROM. The program memory is divided in two sections, the application program section and the boot program section. Both sections have dedicated lock bits for write and read/write protection. The SPM instruction that is used for selfprogramming of the application flash memory must reside in the boot program section. The application section contains an application table section with separate lock bits for write and read/write protection. The application table section can be used for save storing of nonvolatile data in the program memory. 6.4 ALU - Arithmetic Logic Unit The 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. The ALU operates in direct connection with all 32 general purpose registers. In a single clock cycle, arithmetic operations between general purpose registers or between a register and an immediate are executed and the result is stored in the register file. After an arithmetic or logic operation, the status register is updated to reflect information about the result of the operation. 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 aritmetic. The hardware multiplier supports signed and unsigned multiplication and fractional format. 6.4.1 Hardware Multiplier The multiplier is capable of multiplying two 8-bit numbers into a 16-bit result. The hardware multiplier supports different variations of signed and unsigned integer and fractional numbers: z Multiplication of unsigned integers z Multiplication of signed integers z Multiplication of a signed integer with an unsigned integer z Multiplication of unsigned fractional numbers z Multiplication of signed fractional numbers z Multiplication of a signed fractional number with an unsigned one A multiplication takes two CPU clock cycles. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 10 6.5 Program Flow After reset, the CPU starts to execute instructions from the lowest address in the flash programmemory ‘0.’ The program counter (PC) addresses the next instruction to be fetched. 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 use a 32-bit format. During interrupts and subroutine calls, the return address PC is stored on the stack. The stack is 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. 6.6 Status Register The status register (SREG) contains information about the result of the most recently executed arithmetic or logic instruction. This information can be used for altering program flow in order to perform conditional operations. Note that the status register is updated after all ALU operations, as specified in the instruction set reference. This will in many cases remove the need for using the dedicated compare instructions, resulting in faster and more compact code. The status register is not automatically stored when entering an interrupt routine nor restored when returning from an interrupt. This must be handled by software. The status register is accessible in the I/O memory space. 6.7 Stack and Stack Pointer The stack is used for storing return addresses after interrupts and subroutine calls. It can also be used for storing temporary data. The stack pointer (SP) register always points to the top of the stack. It is implemented as two 8-bit registers that are accessible in the I/O memory space. Data are pushed and popped from the stack using the PUSH and POP instructions. The stack grows from a higher memory location to a lower memory location. This implies that pushing data onto the stack decreases the SP, and popping data off the stack increases the SP. The SP is automatically loaded after reset, and the initial value is the highest address of the internal SRAM. If the SP is changed, it must be set to point above address 0x2000, and it must be defined before any subroutine calls are executed or before interrupts are enabled. During interrupts or subroutine calls, the return address is automatically pushed on the stack. The return address can be two or three bytes, depending on program memory size of the device. For devices with 128KB or less of program memory, the return address is two bytes, and hence the stack pointer is decremented/incremented by two. For devices with more than 128KB of program memory, the return address is three bytes, and hence the SP is decremented/incremented by three. The return address is popped off the stack when returning from interrupts using the RETI instruction, and from subroutine calls using the RET instruction. The SP is decremented by one when data are pushed on the stack with the PUSH instruction, and incremented by one when data is popped off the stack using the POP instruction. To prevent corruption when updating the stack pointer from software, a write to SPL will automatically disable interrupts for up to four instructions or until the next I/O memory write. 6.8 Register File The register file consists of 32 x 8-bit general purpose working registers with single clock cycle access time. The register file supports the following input/output schemes: z One 8-bit output operand and one 8-bit result input z Two 8-bit output operands and one 8-bit result input z Two 8-bit output operands and one 16-bit result input z One 16-bit output operand and one 16-bit result input XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 11 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 lookup tables in flash program memory. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 12 7. Memories 7.1 Features z Flash program memory z z z z z z z z One linear address space In-system programmable Self-programming and boot loader support Application section for application code Application table section for application code or data storage Boot section for application code or bootloader code Separate read/write protection lock bits for all sections Built in fast CRC check of a selectable flash program memory section z Data memory z z z z z z z One linear address space Single-cycle access from CPU SRAM EEPROM z Byte and page accessible z Optional memory mapping for direct load and store I/O memory z Configuration and status registers for all peripherals and modules z 4 bit-accessible general purpose registers for global variables or flags Bus arbitration z Safe and deterministic handling of priority between CPU, DMA controller, and other bus masters Separate buses for SRAM, EEPROM and I/O memory z Simultaneous bus access for CPU and DMA controller z Production signature row memory for factory programmed data z ID for each microcontroller device type Serial number for each device z Calibration bytes for factory calibrated peripherals z z User signature row z One flash page in size Can be read and written from software z Content is kept after chip erase z 7.2 Overview The Atmel AVR architecture has two main memory spaces, the program memory and the data memory. Executable code can reside only in the program memory, while data can be stored in the program memory and the data memory. The data memory includes the internal SRAM, and EEPROM for nonvolatile data storage. All memory spaces are linear and require no memory bank switching. Nonvolatile memory (NVM) spaces can be locked for further write and read/write operations. This prevents unrestricted access to the application software. A separate memory section contains the fuse bytes. These are used for configuring important system functions, and can only be written by an external programmer. 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. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 13 7.3 Flash Program Memory The Atmel AVR XMEGA devices contain on-chip, in-system reprogrammable flash memory for program storage. The flash memory can be accessed for read and write from an external programmer through the PDI or from application software running in the device. All AVR CPU instructions are 16 or 32 bits wide, and each flash location is 16 bits wide. The flash memory is organized in two main sections, the application section and the boot loader section. The sizes of the different sections are fixed, but device-dependent. These two sections have separate lock bits, and can have different levels of protection. The store program memory (SPM) instruction, which is used to write to the flash from the application software, will only operate when executed from the boot loader section. The application section contains an application table section with separate lock settings. This enables safe storage of nonvolatile data in the program memory. Figure 7-1. Flash program memory (Hexadecimal address). Word Address ATxmega128B3 ATxmega64B3 0 0 Application section (bytes) (128K/64K) ... 7.3.1 EFFF / 77FF F000 / 7800 FFFF / 7FFF Application table section (bytes) (8K/4K) 10000 / 8000 Boot section (bytes) 10FFF / 87FF (8K/4K) Application Section The Application section is the section of the flash that is used for storing the executable application code. The protection level for the application section can be selected by the boot lock bits for this section. The application section can not store any boot loader code since the SPM instruction cannot be executed from the application section. 7.3.2 Application Table Section The application table section is a part of the application section of the flash memory that can be used for storing data. The size is identical to the boot loader section. The protection level for the application table section can be selected by the boot lock bits for this section. The possibilities for different protection levels on the application section and the application table section enable safe parameter storage in the program memory. If this section is not used for data, application code can reside here. 7.3.3 Boot Loader Section While the application section is used for storing the application code, the boot loader software must be located in the boot loader section because the SPM instruction can only initiate programming when executing from this section. The SPM instruction can access the entire flash, including the boot loader section itself. The protection level for the boot loader section can be selected by the boot loader lock bits. If this section is not used for boot loader software, application code can be stored here. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 14 7.3.4 Production Signature Row The production signature row is a separate memory section for factory programmed data. It contains calibration data for functions such as oscillators and analog modules. Some of the calibration values will be automatically loaded to the corresponding module or peripheral unit during reset. Other values must be loaded from the signature row and written to the corresponding peripheral registers from software. For details on calibration conditions, refer to “Electrical Characteristics” on page 71. The production signature row also contains an ID that identifies each microcontroller device type and a serial number for each manufactured device. The serial number consists of the production lot number, wafer number, and wafer coordinates for the device. The device ID for the available devices is shown in Table 7-1 on page 15. The production signature row cannot be written or erased, but it can be read from application software and external programmers. Table 7-1. Device ID bytes for XMEGA B3 devices. Device 7.3.5 Device ID bytes Byte 2 Byte 1 Byte 0 ATxmega64B3 51 96 1E ATxmega128B3 4B 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 programmers. It is one flash page in size, and is meant for static user parameter storage, such as calibration data, custom serial number, identification numbers, random number seeds, etc. This section is not erased by chip erase commands that erase the flash, and requires a dedicated erase command. This ensures parameter storage during multiple program/erase operations and on-chip debug sessions. 7.4 Fuses and Lock bits The fuses are used to configure important system functions, and can only be written from an external programmer. The application software can read the fuses. The fuses are used to configure reset sources such as brownout detector and watchdog, startup configuration, JTAG enable, and JTAG user ID. The lock bits are used to set protection levels for the different flash sections (i.e., if read and/or write access should be blocked). Lock bits can be written by external programmers and application software, but only to stricter protection levels. Chip erase is the only way to erase the lock bits. To ensure that flash contents are protected even during chip erase, the lock bits are erased after the rest of the flash memory has been erased. An unprogrammed fuse or lock bit will have the value one, while a programmed fuse or lock bit will have the value zero. Both fuses and lock bits are reprogrammable like the flash program memory. 7.5 Data Memory The data memory contains the I/O memory, internal SRAM and optionally memory mapped EEPROM. The data memory is organized as one continuous memory section, see Figure 7-2 on page 16. To simplify development, I/O Memory, EEPROM and SRAM will always have the same start addresses for all XMEGA devices. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 15 Figure 7-2. Data memory map (hexadecimal address). Byte Address ATxmega128B3 0 Byte Address ATxmega64B3 0 I/O Registers (4K) FFF I/O Registers (4KB) FFF 1000 1000 EEPROM (2K) 17FF EEPROM (2K) 17FF RESERVED 2000 RESERVED 2000 Internal SRAM (8K) 3FFF 7.6 Internal SRAM (4K) 2FFF EEPROM XMEGA B3 devices have EEPROM for nonvolatile data storage. It is either addressable in a separate data space (default) or memory mapped and accessed in normal data space. The EEPROM supports both byte and page access. Memory mapped EEPROM allows highly efficient EEPROM reading and EEPROM buffer loading. When doing this, EEPROM is accessible using load and store instructions. Memory mapped EEPROM will always start at hexadecimal address 0x1000. 7.7 I/O Memory The status and configuration registers for peripherals and modules, including the CPU, are addressable through I/O memory locations. All I/O locations can be accessed by the load (LD/LDS/LDD) and store (ST/STS/STD) instructions, which are used to transfer data between the 32 registers in the register file and the I/O memory. The IN and OUT instructions can address I/O memory locations in the range of 0x00 to 0x3F directly. In the address range 0x00 - 0x1F, single-cycle instructions for manipulation and checking of individual bits are available. The I/O memory address for all peripherals and modules in XMEGA B3 is shown in the “Peripheral Module Address Map” on page 61. 7.7.1 General Purpose I/O Registers The lowest 4 I/O memory addresses are reserved as general purpose I/O registers. These registers can be used for storing global variables and flags, as they are directly bit-accessible using the SBI, CBI, SBIS, and SBIC instructions. 7.8 Data Memory and Bus Arbitration Since the data memory is organized as four separate sets of memories, the different bus masters (CPU, DMA controller read and DMA controller write, etc.) can access different memory sections at the same time. 7.9 Memory Timing Read and write access to the I/O memory takes one CPU clock cycle. A write to SRAM takes one cycle, and a read from SRAM takes two cycles. For burst read (DMA), new data are available every cycle. EEPROM page load (write) takes one cycle, and three cycles are required for read. For burst read, new data are available every second cycle. Refer to the instruction summary for more details on instructions and instruction timing. 7.10 Device ID and Revision Each device has a three-byte device ID. This ID identifies Atmel as the manufacturer of the device and the device type. A separate register contains the revision number of the device. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 16 7.11 JTAG Disable It is possible to disable the JTAG interface from the application software. This will prevent all external JTAG access to the device until the next device reset or until JTAG is enabled again from the application software. As long as JTAG is disabled, the I/O pins required for JTAG can be used as normal I/O pins. 7.12 I/O Memory Protection Some features in the device are regarded as critical for safety in some applications. Due to this, it is possible to lock the I/O register related to the clock system, the event system, and the advanced waveform extensions. As long as the lock is enabled, all related I/O registers are locked and they can not be written from the application software. The lock registers themselves are protected by the configuration change protection mechanism. 7.13 Flash and EEPROM Page Size The flash program memory and EEPROM data memory are organized in pages. The pages are word accessible for the flash and byte accessible for the EEPROM. Table 7-2 on page 17 shows the Flash Program Memory organization. Flash write and erase operations are performed on one page at a time, while reading the Flash is done one byte at a time. For Flash access the Z-pointer (Z[m:n]) is used for addressing. The most significant bits in the address (FPAGE) give the page number and the least significant address bits (FWORD) give the word in the page. Table 7-2. Devices Number of words and Pages in the Flash. PC size Flash bits bytes Page Size FWORD FPAGE words Application No of pages Size Boot No of pages Size ATxmega64B3 16 64K + 4K 128 Z[7:1] Z[16:8] 64K 256 4K 16 ATxmega128B3 17 128K + 8K 128 Z[8:1] Z[17:9] 128K 512 8K 32 Table 7-3 on page 17 shows EEPROM memory organization for the XMEGA B3 devices. EEEPROM write and erase operations can be performed one page or one byte at a time, while reading the EEPROM is done one byte at a time. For EEPROM access the NVM address register (ADDR[m:n]) is used for addressing. The most significant bits in the address (E2PAGE) give the page number and the least significant address bits (E2BYTE) give the byte in the page. Table 7-3. Devices Number of Bytes and Pages in the EEPROM. EEPROM Page Size E2BYTE E2PAGE No of Pages Size bytes ATxmega64B3 2K 32 ADDR[4:0] ADDR[10:5] 64 ATxmega128B3 2K 32 ADDR[4:0] ADDR[10:5] 64 XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 17 8. DMAC – Direct Memory Access Controller 8.1 Features z Allows high speed data transfers with minimal CPU intervention z from data memory to data memory from data memory to peripheral z from peripheral to data memory z from peripheral to peripheral z z Two DMA channels with separate z transfer triggers interrupt vectors z addressing modes z z Programmable channel priority z From 1 byte to 16MB of data in a single transaction z z Up to 64KB block transfers with repeat 1, 2, 4, or 8 byte burst transfers z Multiple addressing modes z Static Incremental z Decremental z z Optional reload of source and destination addresses at the end of each z Burst Block z Transaction z z Optional interrupt on end of transaction z Optional connection to CRC generator for CRC on DMA data 8.2 Overview The two-channel direct memory access (DMA) controller can transfer data between memories and peripherals, and thus offload these tasks from the CPU. It enables high data transfer rates with minimum CPU intervention, and frees up CPU time. The four DMA channels enable up to four independent and parallel transfers. The DMA controller can move data between SRAM and peripherals, between SRAM locations and directly between peripheral registers. With access to all peripherals, the DMA controller can handle automatic transfer of data to/from communication modules. The DMA controller can also read from memory mapped EEPROM. Data transfers are done in continuous bursts of 1, 2, 4, or 8 bytes. They build block transfers of configurable size from 1 byte to 64KB. A repeat counter can be used to repeat each block transfer for single transactions up to 16MB. Source and destination addressing can be static, incremental or decremental. Automatic reload of source and/or destination addresses can be done after each burst or block transfer, or when a transaction is complete. Application software, peripherals, and events can trigger DMA transfers. The two DMA channels have individual configuration and control settings. This include source, destination, transfer triggers, and transaction sizes. They have individual interrupt settings. Interrupt requests can be generated when a transaction is complete or when the DMA controller detects an error on a DMA channel. To allow for continuous transfers, the channels can be interlinked so that the second takes over the transfer when the first is finished, and vice versa. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 18 9. Event System 9.1 Features z System for direct peripheral-to-peripheral communication and signaling z Peripherals can directly send, receive, and react to peripheral events z CPU and DMA controller independent operation 100% predictable signal timing z Short and guaranteed response time z z Four event channels for up to four different and parallel signal routings and configurations z Events can be sent and/or used by most peripherals, clock system, and software z Additional functions include z z Quadrature decoders Digital filtering of I/O pin state z Works in active mode and idle sleep mode 9.2 Overview The event system enables direct peripheral-to-peripheral communication and signaling. It allows a change in one peripheral’s state to automatically trigger actions in other peripherals. It is designed to provide a predictable system for short and predictable response times between peripherals. It allows for autonomous peripheral control and interaction without the use of interrupts, CPU, or DMA controller resources, and is thus a powerful tool for reducing the complexity, size and execution time of application code. It also allows for synchronized timing of actions in several peripheral modules. A change in a peripheral’s state is referred to as an event, and usually corresponds to the peripheral’s interrupt conditions. Events can be directly passed to other peripherals using a dedicated routing network called the event routing network. How events are routed and used by the peripherals is configured in software. Figure 9-1 on page 20 shows a basic diagram of all connected peripherals. The event system can directly connect together analog and digital converters, analog comparators, I/O port pins, the real-time counter, timer/counters, IR communication module (IRCOM), and USB interface. It can also be used to trigger DMA transactions (DMA controller). Events can also be generated from software and the peripheral clock. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 19 Figure 9-1. Event system overview and connected peripherals. CPU / Software DMA Controller Event Routing Network ADC AC clkPER Prescaler Real Time Counter Event System Controller Timer / Counters USB Port pins IRCOM The event routing network consists of four software-configurable multiplexers that control how events are routed and used. These are called event channels, and allow for up to four parallel event configurations and routings. The maximum routing latency is two peripheral clock cycles. The event system works in both active mode and idle sleep mode. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 20 10. System Clock and Clock options 10.1 Features z Fast start-up time z Safe run-time clock switching z Internal oscillators: z 32MHz run-time calibrated oscillator 2MHz run-time calibrated oscillator z 32.768kHz calibrated oscillator z 32kHz ultra low power (ULP) oscillator with 1kHz output z z External clock options z 0.4MHz - 16MHz crystal oscillator 32.768kHz crystal oscillator z External clock z z PLL with 20MHz - 128MHz output frequency z z Internal and external clock options and 1x to 31x multiplication Lock detector z Clock prescalers with 1x to 2048x division z Fast peripheral clocks running at 2 and 4 times the CPU clock z Automatic run-time calibration of internal oscillators z External oscillator and PLL lock failure detection with optional non-maskable interrupt 10.2 Overview Atmel AVR XMEGA devices have a flexible clock system supporting a large number of clock sources. It incorporates both accurate internal oscillators and external crystal oscillator and resonator support. A high-frequency phase locked loop (PLL) and clock prescalers can be used to generate a wide range of clock frequencies. A calibration feature (DFLL) is available, and can be used for automatic run-time calibration of the internal oscillators to remove frequency drift over voltage and temperature. An oscillator failure monitor can be enabled to issue a non-maskable interrupt and switch to the internal oscillator if the external oscillator or PLL fails. When a reset occurs, all clock sources except the 32kHz ultra low power oscillator are disabled. After reset, the device will always start up running from the 2MHz internal oscillator. During normal operation, the system clock source and prescalers can be changed from software at any time. Figure 10-1 on page 22 presents the principal clock system in the XMEGA B3 family of divices. Not all of the clocks need to be active at a given time. The clocks for the CPU and peripherals can be stopped using sleep modes and power reduction registers, as described in “Power Management and Sleep Modes” on page 24. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 21 Figure 10-1. The Clock system, clock sources and clock distribution. Real Time Counter LCD Peripherals RAM Non-Volatile Memory AVR CPU clkPER clkCPU clkPER2 clkPER4 clkRTC clkLCD USB clkUSB System Clock Prescalers Watchdog Timer Prescaler clkSYS Brown-out Detector System Clock Multiplexer (SCLKSEL) DIV32 DIV32 DIV32 RTCSRC USBSRC PLL DIV4 PLLSRC 10.3 XTAL2 0.4 – 16 MHz XTAL XTAL1 32.768 kHz TOSC TOSC2 32.768 kHz Int. OSC TOSC1 32 kHz Int. ULP 32 MHz Int. Osc 2 MHz Int. Osc PC[7:0] XOSCSEL Clock Sources The clock sources are divided in two main groups: internal oscillators and external clock sources. Most of the clock sources can be directly enabled and disabled from software, while others are automatically enabled or disabled, depending on peripheral settings. After reset, the device starts up running from the 2MHz internal oscillator. The other clock sources, DFLLs and PLL, are turned off by default. The internal oscillators do not require any external components to run. For details on characteristics and accuracy of the internal oscillators, refer to the device datasheet. 10.3.1 32kHz Ultra Low Power Internal Oscillator This oscillator provides an approximate 32kHz clock. The 32kHz ultra low power (ULP) internal oscillator is a very low power clock source, and it is not designed for high accuracy.The oscillator employs a built-in prescaler that provides a XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 22 1kHz output. The oscillator is automatically enabled/disabled when it is used as clock source for any part of the device. This oscillator can be selected as the clock source for the RTC and for LCD. 10.3.2 32.768kHz Calibrated Internal Oscillator This oscillator provides an approximate 32.768kHz clock. It is calibrated during production to provide a default frequency close to its nominal frequency. The calibration register can also be written from software for run-time calibration of the oscillator frequency. The oscillator employs a built-in prescaler, which provides both a 32.768kHz output and a 1.024kHz output. This oscillator can be used as a clock source for the system clock, RTC and LCD, and as the DFLL reference clock. 10.3.3 32.768kHz Crystal Oscillator A 32.768kHz crystal oscillator can be connected between the TOSC1 and TOSC2 pins and enables a dedicated low frequency oscillator input circuit. A low power mode with reduced voltage swing on TOSC2 is available. This oscillator can be used as a clock source for the system clock, RTC and LCD, and as the DFLL reference clock. 10.3.4 0.4 - 16MHz Crystal Oscillator This oscillator can operate in four different modes optimized for different frequency ranges, all within 0.4MHz - 16MHz. 10.3.5 2MHz Run-time Calibrated Internal Oscillator The 2MHz run-time calibrated internal oscillator is the default system clock source after reset. It is calibrated during production to provide a default frequency close to its nominal frequency. A DFLL can be enabled for automatic run-time calibration of the oscillator to compensate for temperature and voltage drift and optimize the oscillator accuracy. 10.3.6 32MHz Run-time Calibrated Internal Oscillator The 32MHz run-time calibrated internal oscillator is a high-frequency oscillator. It is calibrated during production to provide a default frequency close to its nominal frequency. A digital frequency looked loop (DFLL) can be enabled for automatic run-time calibration of the oscillator to compensate for temperature and voltage drift and optimize the oscillator accuracy. This oscillator can also be adjusted and calibrated to any frequency between 30MHz and 55MHz. The production signature row contains 48 MHz calibration values intended used when the oscillator is used a full-speed USB clock source. 10.3.7 External Clock Sources The XTAL1 and XTAL2 pins can be used to drive an external oscillator, either a quartz crystal or a ceramic resonator. XTAL1 or each pin of port C can be used as input for an external clock signal. The TOSC1 and TOSC2 pins is dedicated to driving a 32.768kHz crystal oscillator. 10.3.8 PLL with 1x-31x Multiplication Factor The built-in phase locked loop (PLL) can be used to generate a high-frequency system clock. The PLL has a userselectable multiplication factor of from 1 to 31. In combination with the prescalers, this gives a wide range of output frequencies from all clock sources. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 23 11. Power Management and Sleep Modes 11.1 Features z Power management for adjusting power consumption and functions z Five sleep modes z Idle Power down z Power save z Standby z Extended standby z z Power reduction register to disable clock and turn off unused peripherals in active and idle modes 11.2 Overview Various sleep modes and clock gating are provided in order to tailor power consumption to application requirements. This enables the XMEGA microcontroller to stop unused modules to save power. All sleep modes are available and can be entered from active mode. In active mode, the CPU is executing application code. When the device enters sleep mode, program execution is stopped and interrupts or a reset is used to wake the device again. The application code decides which sleep mode to enter and when. 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 modes and enables much more fine-tuned power management than sleep modes alone. 11.3 Sleep Modes Sleep modes are used to shut down modules and clock domains in the microcontroller in order to save power. XMEGA microcontrollers have five different sleep modes tuned to match the typical functional stages during application execution. A dedicated sleep instruction (SLEEP) is available to enter sleep mode. Interrupts are used to wake the device from sleep, and the available interrupt wake-up sources are dependent on the configured sleep mode. When an enabled interrupt occurs, the device will wake up and execute the interrupt service routine before continuing normal program execution from the first instruction after the SLEEP instruction. If other, higher priority interrupts are pending when the wake-up occurs, their interrupt service routines will be executed according to their priority before the interrupt service routine for the wake-up interrupt is executed. After wake-up, the CPU is halted for four cycles before execution starts. The content of the register file, SRAM and registers are kept during sleep. If a reset occurs during sleep, the device will reset, start up, and execute from the reset vector. 11.3.1 Idle Mode In idle mode the CPU and nonvolatile memory are stopped (note that any ongoing programming will be completed), but all peripherals, including the interrupt controller, event system and DMA controller are kept running. Any enabled interrupt will wake the device. 11.3.2 Power-down Mode In power-down mode, all clocks, including the real-time counter clock source, are stopped. This allows operation only of asynchronous modules that do not require a running clock. The only interrupts that can wake up the MCU are the twowire interface address match interrupt, asynchronous port interrupts, and the USB resume interrupt. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 24 11.3.3 Power-save Mode Power-save mode is identical to power down, with two exceptions: 1. If the real-time counter (RTC) is enabled, it will keep running during sleep, and the device can also wake up from either an RTC overflow or compare match interrupt. 2. If the liquid crystal display controller (LCD) is enabled, it will keep running during sleep, and the device can wake up from LCD frame completed interrupt. 11.3.4 Standby Mode Standby mode is identical to power down, with the exception that the enabled system clock sources are kept running while the CPU, peripheral, RTC and LCD clocks are stopped. This reduces the wake-up time. 11.3.5 Extended Standby Mode Extended standby mode is identical to power-save mode, with the exception that the enabled system clock sources are kept running while the CPU and peripheral clocks are stopped. This reduces the wake-up time. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 25 12. System Control and Reset 12.1 Features z Reset the microcontroller and set it to initial state when a reset source goes active z Multiple reset sources that cover different situations z z z z z z Power-on reset External reset Watchdog reset Brownout reset PDI reset Software reset z Asynchronous operation z No running system clock in the device is required for reset z Reset status register for reading the reset source from the application code 12.2 Overview The reset system issues a microcontroller reset and sets the device to its initial state. This is for situations where operation should not start or continue, such as when the microcontroller operates below its power supply rating. If a reset source goes active, the device enters and is kept in reset until all reset sources have released their reset. The I/O pins are immediately tri-stated. The program counter is set to the reset vector location, and all I/O registers are set to their initial values. The SRAM content is kept. However, if the device accesses the SRAM when a reset occurs, the content of the accessed location can not be guaranteed. After reset is released from all reset sources, the default oscillator is started and calibrated before the device starts running from the reset vector address. By default, this is the lowest program memory address, 0, but it is possible to move the reset vector to the lowest address in the boot section. The reset functionality is asynchronous, and so no running system clock is required to reset the device. The software reset feature makes it possible to issue a controlled system reset from the user software. The reset status register has individual status flags for each reset source. It is cleared at power-on reset, and shows which sources have issued a reset since the last power-on. 12.3 Reset Sequence A reset request from any reset source will immediately reset the device and keep it in reset as long as the request is active. When all reset requests are released, the device will go through three stages before the device starts running again: z Reset counter delay z Oscillator startup z Oscillator calibration If another reset requests occurs during this process, the reset sequence will start over again. 12.4 Reset Sources 12.4.1 Power-on Reset A power-on reset (POR) is generated by an on-chip detection circuit. The POR is activated when the VCC rises and reaches the POR threshold voltage (VPOT), and this will start the reset sequence. The POR is also activated to power down the device properly when the VCC falls and drops below the VPOT level. The VPOT level is higher for falling VCCthan for rising VCC. Consult the datasheet for POR characteristics data. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 26 12.4.2 Brownout Detection The on-chip brownout detection (BOD) circuit monitors the VCC level during operation by comparing it to a fixed, programmable level that is selected by the BODLEVEL fuses. If disabled, BOD is forced on at the lowest level during chip erase and when the PDI is enabled. 12.4.3 External Reset The external reset circuit is connected to the external RESET pin. The external reset will trigger when the RESET pin is driven below the RESET pin threshold voltage, VRST, for longer than the minimum pulse period, tEXT. The reset will be held as long as the pin is kept low. The RESET pin includes an internal pull-up resistor. 12.4.4 Watchdog Reset The watchdog timer (WDT) is a system function for monitoring correct program operation. If the WDT is not reset from the software within a programmable timout period, a watchdog reset will be given. The watchdog reset is active for one to two clock cycles of the 2MHz internal oscillator. For more details see “WDT – Watchdog Timer” on page 28. 12.4.5 Software Reset The software reset makes it possible to issue a system reset from software by writing to the software reset bit in the reset control register.The reset will be issued within two CPU clock cycles after writing the bit. It is not possible to execute any instruction from when a software reset is requested until it is issued. 12.4.6 Program and Debug Interface Reset The program and debug interface reset contains a separate reset source that is used to reset the device during external programming and debugging. This reset source is accessible only from external debuggers and programmers. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 27 13. WDT – Watchdog Timer 13.1 Features z Issues a device reset if the timer is not reset before its timeout period z Asynchronous operation from dedicated oscillator z 1kHz output of the 32kHz ultra low power oscillator z 11 selectable timeout periods, from 8ms to 8s z Two operation modes: z z Normal mode Window mode z Configuration lock to prevent unwanted changes 13.2 Overview The watchdog timer (WDT) is a system function for monitoring correct program operation. It makes it possible to recover from error situations such as runaway or deadlocked code. The WDT is a timer, configured to a predefined timeout period, and is constantly running when enabled. If the WDT is not reset within the timeout period, it will issue a microcontroller reset. The WDT is reset by executing the WDR (watchdog timer reset) instruction from the application code. The window mode makes it possible to define a time slot or window inside the total timeout period during which WDT must be reset. If the WDT is reset outside this window, either too early or too late, a system reset will be issued. Compared to the normal mode, this can also catch situations where a code error causes constant WDR execution. The WDT will run in active mode and all sleep modes, if enabled. It is asynchronous, runs from a CPU-independent clock source, and will continue to operate to issue a system reset even if the main clocks fail. The configuration change protection mechanism ensures that the WDT settings cannot be changed by accident. For increased safety, a fuse for locking the WDT settings is also available. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 28 14. Interrupts and Programmable Multilevel Interrupt Controller 14.1 Features z Short and predictable interrupt response time z Separate interrupt configuration and vector address for each interrupt z Programmable multilevel interrupt controller z Interrupt prioritizing according to level and vector address Three selectable interrupt levels for all interrupts: low, medium and high z Selectable, round-robin priority scheme within low-level interrupts z Non-maskable interrupts for critical functions z z Interrupt vectors optionally placed in the application section or the boot loader section 14.2 Overview Interrupts signal a change of state in peripherals, and this can be used to alter program execution. Peripherals can have one or more interrupts, and all are individually enabled and configured. When an interrupt is enabled and configured, it will generate an interrupt request when the interrupt condition is present. The programmable multilevel interrupt controller (PMIC) controls the handling and prioritizing of interrupt requests. When an interrupt request is acknowledged by the PMIC, the program counter is set to point to the interrupt vector, and the interrupt handler can be executed. All peripherals can select between three different priority levels for their interrupts: low, medium, and high. Interrupts are prioritized according to their level and their interrupt vector address. Medium-level interrupts will interrupt low-level interrupt handlers. High-level interrupts will interrupt both medium- and low-level interrupt handlers. Within each level, the interrupt priority is decided from the interrupt vector address, where the lowest interrupt vector address has the highest interrupt priority. Low-level interrupts have an optional round-robin scheduling scheme to ensure that all interrupts are serviced within a certain amount of time. Non-maskable interrupts (NMI) are also supported, and can be used for system critical functions. 14.3 Interrupt vectors 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 B3 devices are shown in Table 14-1. Offset addresses for each interrupt available in the peripheral are described for each peripheral in the XMEGA B manual. For peripherals or modules that have only one interrupt, the interrupt vector is shown in Table 14-1. The program address is the word address. Table 14-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 Interrupt Description XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 29 Program Address (Base Address) Source Interrupt Description 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 0x03E USB_INT_base USB on port D Interrupt base 0x046 LCD_INT_base LCD Interrupt base 0x048 AES_INT_vect AES Interrupt vector 0x04A NVM_INT_base Non-Volatile Memory Interrupt base 0x04E PORTB_INT_base Port B Interrupt base 0x052 ACB_INT_base Analog Comparator on Port B Interrupt base 0x058 ADCB_INT_base Analog to Digital Converter on Port B Interrupt base 0x060 PORTD_INT_base Port D Interrupt base 0x064 PORTG_INT_base Port G Interrupt base 0x068 PORTM_INT_base Port M Interrupt base XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 30 15. I/O Ports 15.1 Features z 36 General purpose input and output pins with individual configuration z Output driver with configurable driver and pull settings: z Totem-pole Wired-AND z Wired-OR z Bus-keeper z Inverted I/O z z Input with synchronous and/or asynchronous sensing with interrupts and events z Sense both edges Sense rising edges z Sense falling edges z Sense low level z z Optional pull-up and pull-down resistor on input and Wired-OR/AND configurations z Optional slew rate control z Asynchronous pin change sensing that can wake the device from all sleep modes z Two port interrupts with pin masking per I/O port z Efficient and safe access to port pins z Hardware read-modify-write through dedicated toggle/clear/set registers Configuration of multiple pins in a single operation z Mapping of port registers into bit-accessible I/O memory space z z Peripheral clocks output on port pin z Real-time counter clock output to port pin z Event channels can be output on port pin z Remapping of digital peripheral pin functions z 15.2 Selectable USART, SPI, and timer/counter input/output pin locations Overview One port consists of up to eight port pins: pin 0 to 7. Each port pin can be configured as input or output with configurable driver and pull settings. They also implement synchronous and asynchronous input sensing with interrupts and events for selectable pin change conditions. Asynchronous pin-change sensing means that a pin change can wake the device from all sleep modes, included the modes where no clocks are running. All functions are individual and configurable per pin, but several pins can be configured in a single operation. The pins have hardware read-modify-write (RMW) functionality for safe and correct change of drive value and/or pull resistor configuration. The direction of one port pin can be changed without unintentionally changing the direction of any other pin. The port pin configuration also controls input and output selection of other device functions. It is possible to have both the peripheral clock and the real-time clock output to a port pin, and available for external use. The same applies to events from the event system that can be used to synchronize and control external functions. Other digital peripherals, such as USART, SPI, and timer/counters, can be remapped to selectable pin locations in order to optimize pin-out versus application needs. The notation of the ports are PORTB, PORTC, PORTD, PORTG, PORTM and PORTR. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 31 15.3 Output Driver All port pins (Pn) have programmable output configuration. The port pins also have configurable slew rate limitation to reduce electromagnetic emission. 15.3.1 Push-pull Figure 15-1. I/O configuration - Totem-pole DIRn OUTn Pn INn 15.3.2 Pull-down Figure 15-2. I/O configuration - Totem-pole with pull-down (on input) DIRn OUTn Pn INn 15.3.3 Pull-up Figure 15-3. I/O configuration - Totem-pole with pull-up (on input) DIRn OUTn Pn INn XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 32 15.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’. Figure 15-4. I/O configuration - Totem-pole with bus-keeper DIRn OUTn Pn INn 15.3.5 Others Figure 15-5. Output configuration - Wired-OR with optional pull-down OUTn Pn INn Figure 15-6. I/O configuration - Wired-AND with optional pull-up INn Pn OUTn XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 33 15.4 Input sensing Input sensing is synchronous or asynchronous depending on the enabled clock for the ports, and the configuration is shown in Figure 15-7 on page 34. Figure 15-7. Input sensing system overview Asynchronous sensing EDGE DETECT Interrupt Control IREQ Synchronous sensing Pn Synchronizer INn D Q D Q INVERTED I/O R EDGE DETECT Event R When a pin is configured with inverted I/O, the pin value is inverted before the input sensing. 15.5 Alternate Port Functions Most port pins have alternate pin functions in addition to being a general purpose I/O pin. When an alternate function is enabled, it might override the normal port pin function or pin value. This happens when other peripherals that require pins are enabled or configured to use pins. If and how a peripheral will override and use pins is described in the section for that peripheral. “Pinout and Pin Functions” on page 55 shows which modules on peripherals that enable alternate functions on a pin, and which alternate functions that are available on a pin. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 34 16. T/C – 16-bit Timer/Counter Type 0 and 1 16.1 Features z Two 16-bit timer/counters z z One timer/counters of type 0 One timer/counters of type 1 z 32-bit Timer/Counter support by cascading two timer/counters z Up to four compare or capture (CC) channels z z Four CC channels for timer/counters of type 0 Two CC channels for timer/counters of type 1 z Double buffered timer period setting z Double buffered capture or compare channels z Waveform generation: z Frequency generation Single-slope pulse width modulation z Dual-slope pulse width modulation z z Input capture: z Input capture with noise cancelling Frequency capture z Pulse width capture z 32-bit input capture z z Timer overflow and error interrupts/events z One compare match or input capture interrupt/event per CC channel z Can be used with event system for: z Quadrature decoding Count and direction control z Capture z z Can be used with DMA and to trigger DMA transactions z High-resolution extension z Increases frequency and waveform resolution by 4x (2-bit) or 8x (3-bit) z Advanced waveform extension: z Low- and high-side output with programmable dead-time insertion (DTI) z Event controlled fault protection for safe disabling of drivers 16.2 Overview Atmel AVR XMEGA B3 devices have a set of two flexible 16-bit Timer/Counters (TC). Their capabilities include accurate program execution timing, frequency and waveform generation, and input capture with time and frequency measurement of digital signals. Two timer/counters can be cascaded to create a 32-bit timer/counter with optional 32-bit capture. A timer/counter consists of a base counter and a set of compare or capture (CC) channels. The base counter can be used to count clock cycles or events. It has direction control and period setting that can be used for timing. The CC channels can be used together with the base counter to do compare match control, frequency generation, and pulse width waveform modulation, as well as various input capture operations. A timer/counter can be configured for either capture or compare functions, but cannot perform both at the same time. A timer/counter can be clocked and timed from the peripheral clock with optional prescaling or from the event system. The event system can also be used for direction control and capture trigger or to synchronize operations. There are two differences between timer/counter type 0 and type 1. Timer/counter 0 has four CC channels, and timer/counter 1 has two CC channels. All information related to CC channels 3 and 4 is valid only for timer/counter 0. Only Timer/Counter 0 has the split mode feature that split it into 2 8-bit Timer/Counters with four compare channels each. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 35 Some timer/counters have extensions to enable more specialized waveform and frequency generation. The advanced waveform extension (AWeX) is intended for motor control and other power control applications. It enables low- and highside output with dead-time insertion, as well as fault protection for disabling and shutting down external drivers. It can also generate a synchronized bit pattern across the port pins. The Advanced Waveform Extension can be enabled to provide extra and more advanced features for the Timer/Counter. This are only available for Timer/Counter 0. See “TC2 –16-bit Timer/Counter Type 2” on page 37 for more details. The high-resolution (hi-res) extension can be used to increase the waveform output resolution by four or eight times by using an internal clock source running up to four times faster than the peripheral clock. See “Hi-Res – High Resolution Extension” on page 39 for more details. Figure 16-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 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 PORTC has one Timer/Counter 0 and one Timer/Counter1. Notation of these are TCC0 (Time/Counter C0) and TCC1 respectively. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 36 17. TC2 –16-bit Timer/Counter Type 2 17.1 Features z A system of two eight-bit timer/counters z z Low-byte timer/counter High-byte timer/counter z Eight compare channels z z Four compare channels for the low-byte timer/counter Four compare channels for the high-byte timer/counter z Waveform generation z Single slope pulse width modulation z Timer underflow interrupts/events z One compare match interrupt/event per compare channel for the low-byte timer/counter z Can be used with the event system for count control z Can be used to trigger DMA transactions z High-resolution extension increases frequency and waveform resolution by 4x or 8x 17.2 Overview A timer/counter 2 is realized when a timer/counter 0 is set in split mode. It is a system of two eight-bit timer/counters, each with four compare channels. This results in eight configurable pulse width modulation (PWM) channels with individually controlled duty cycles, and is intended for applications that require a high number of PWM channels. The two eight-bit timer/counters in this system are referred to as the low-byte timer/counter and high-byte timer/counter, respectively. The difference between them is that only the low-byte timer/counter can be used to generate compare match interrupts, events and DMA triggers. The two eight-bit timer/counters have a shared clock source and separate period and compare settings. They can be clocked and timed from the peripheral clock, with optional prescaling, or from the event system. The counters are always counting down. The timer/counter 2 is set back to timer/counter 0 by setting it in normal mode; hence, one timer/counter can exist only as either type 0 or type 2. PORTC has one Timer/Counter 2. Notation of these are TCC2 (Time/Counter C2). XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 37 18. AWeX – Advanced Waveform Extension 18.1 Features z Waveform output with complementary output from each compare channel z Four dead-time insertion (DTI) units z 8-bit resolution Separate high and low side dead-time setting z Double buffered dead time z Optionally halts timer during dead-time insertion z z Pattern generation unit creating synchronised bit pattern across the port pins z z Double buffered pattern generation Optional distribution of one compare channel output across the port pins z Event controlled fault protection for instant and predictable fault triggering 18.2 Overview The advanced waveform extension (AWeX) provides extra functions to the timer/counter in waveform generation (WG) modes. It is primarily intended for use with different types of motor control and other power control applications. It enables low- and high side output with dead-time insertion and fault protection for disabling and shutting down external drivers. It can also generate a synchronized bit pattern across the port pins. Each of the waveform generator outputs from the timer/counter 0 are split into a complimentary pair of outputs when any AWeX features are enabled. These output pairs go through a dead-time insertion (DTI) unit that generates the noninverted 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. The pattern generation unit can be used to generate a synchronized bit pattern on the port it is connected to. In addition, the WG output from compare channel A can be distributed to and override all the port pins. When the pattern generator unit is enabled, the DTI unit is bypassed. The fault protection unit is connected to the event system, enabling any event to trigger a fault condition that will disable the AWeX output. The event system ensures predictable and instant fault reaction, and gives flexibility in the selection of fault triggers. The AWEX is available for TCC0. The notation of this is AWEXC. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 38 19. Hi-Res – High Resolution Extension 19.1 Features z Increases waveform generator resolution up to 8x (3 bits) z Supports frequency, single-slope PWM, and dual-slope PWM generation z Supports the AWeX when this is used for the same timer/counter 19.2 Overview The high-resolution (hi-res) extension can be used to increase the resolution of the waveform generation output from a timer/counter by four or eight. It can be used for a timer/counter doing frequency, single-slope PWM, or dual-slope PWM generation. It can also be used with the AWeX if this is used for the same timer/counter. The hi-res extension uses the peripheral 4x clock (ClkPER4). The system clock prescalers must be configured so the peripheral 4x clock frequency is four times higher than the peripheral and CPU clock frequency when the hi-res extension is enabled. Atmel AVR XMEGA B3 devices have one Hi-Res Extension that can be enabled for the timer/counters pair on PORTC. The notation of this is HIRESC. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 39 20. RTC – 16-bit Real-Time Counter 20.1 Features z 16-bit resolution z Selectable clock source z 32.768kHz external crystal External clock z 32.768kHz internal oscillator z 32kHz internal ULP oscillator z z Programmable 10-bit clock prescaling z One compare register z One period register z Clear counter on period overflow z Optional interrupt/event on overflow and compare match 20.2 Overview The 16-bit real-time counter (RTC) is a counter that typically runs continuously, including in low-power sleep modes, to keep track of time. It can wake up the device from sleep modes and/or interrupt the device at regular intervals. The reference clock is typically the 1.024kHz output from a high-accuracy crystal of 32.768kHz, and this is the configuration most optimized for low power consumption. The faster 32.768kHz output can be selected if the RTC needs a resolution higher than 1ms. The RTC can also be clocked from an external clock signal, the 32.768kHz internal oscillator or the 32kHz internal ULP oscillator. The RTC includes a 10-bit programmable prescaler that can scale down the reference clock before it reaches the counter. A wide range of resolutions and time-out periods can be configured. With a 32.768kHz clock source, the maximum resolution is 30.5µs, and time-out periods can range up to 2000 seconds. With a resolution of 1s, the maximum timeout period is more than18 hours (65536 seconds). The RTC can give a compare interrupt and/or event when the counter equals the compare register value, and an overflow interrupt and/or event when it equals the period register value. Figure 20-1. Real-time Counter overview External Clock TOSC1 TOSC2 32.768kHz Crystal Osc 32.768kHz Int. Osc DIV32 DIV32 32kHz int ULP (DIV32) PER RTCSRC clkRTC 10-bit prescaler = TOP/ Overflow = ”match”/ Compare CNT COMP XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 40 21. USB – Universal Serial Bus Interface 21.1 Features z One USB 2.0 full speed (12Mbps) and low speed (1.5Mbps) device compliant interface z Integrated on-chip USB transceiver, no external components needed z 16 endpoint addresses with full endpoint flexibility for up to 31 endpoints z z One input endpoint per endpoint address One output endpoint per endpoint address z Endpoint address transfer type selectable to z Control transfers Interrupt transfers z Bulk transfers z Isochronous transfers z z Configurable data payload size per endpoint, up to 1023 bytes z Endpoint configuration and data buffers located in internal SRAM z z Configurable location for endpoint configuration data Configurable location for each endpoint's data buffer z Built-in direct memory access (DMA) to internal SRAM for: z z Endpoint configurations Reading and writing endpoint data z Ping-pong operation for higher throughput and double buffered operation z z Input and output endpoint data buffers used in a single direction CPU/DMA controller can update data buffer during transfer z Multipacket transfer for reduced interrupt load and software intervention z z Data payload exceeding maximum packet size is transferred in one continuous transfer No interrupts or software interaction on packet transaction level z Transaction complete FIFO for workflow management when using multiple endpoints z Tracks all completed transactions in a first-come, first-served work queue z Clock selection independent of system clock source and selection z Minimum 1.5MHz CPU clock required for low speed USB operation z Minimum 12MHz CPU clock required for full speed operation z Connection to event system z On chip debug possibilities during USB transactions 21.2 Overview The USB module is a USB 2.0 full speed (12Mbps) and low speed (1.5Mbps) device compliant interface. The USB supports 16 endpoint addresses. All endpoint addresses have one input and one output endpoint, for a total of 31 configurable endpoints and one control endpoint. Each endpoint address is fully configurable and can be configured for any of the four transfer types: control, interrupt, bulk, or isochronous. The data payload size is also selectable, and it supports data payloads up to 1023 bytes. No dedicated memory is allocated for or included in the USB module. Internal SRAM is used to keep the configuration for each endpoint address and the data buffer for each endpoint. The memory locations used for endpoint configurations and data buffers are fully configurable. The amount of memory allocated is fully dynamic, according to the number of endpoints in use and the configuration of these. The USB module has built-in direct memory access (DMA), and will read/write data from/to the SRAM when a USB transaction takes place. To maximize throughput, an endpoint address can be configured for ping-pong operation. When done, the input and output endpoints are both used in the same direction. The CPU or DMA controller can then read/write one data buffer while the USB module writes/reads the others, and vice versa. This gives double buffered communication. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 41 Multipacket transfer enables a data payload exceeding the maximum packet size of an endpoint to be transferred as multiple packets without software intervention. This reduces the CPU intervention and the interrupts needed for USB transfers. For low-power operation, the USB module can put the microcontroller into any sleep mode when the USB bus is idle and a suspend condition is given. Upon bus resumes, the USB module can wake up the microcontroller from any sleep mode. PORTD has one USB. Notation of this is USB. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 42 22. TWI – Two Wire Interface 22.1 Features z One two-wire interface peripheral z Bidirectional, two-wire communication interface Phillips I2C compatible z System Management Bus (SMBus) compatible z z Bus master and slave operation supported z Slave operation Single bus master operation z Bus master in multi-master bus environment z Multi-master arbitration z z Flexible slave address match functions z 7-bit and general call address recognition in hardware 10-bit addressing supported z Address mask register for dual address match or address range masking z Optional software address recognition for unlimited number of addresses z z Slave can operate in all sleep modes, including power-down z Slave address match can wake device from all sleep modes z 100kHz and 400kHz bus frequency support z Slew-rate limited output drivers z Input filter for bus noise and spike suppression z Support arbitration between start/repeated start and data bit (SMBus) z Slave arbitration allows support for address resolve protocol (ARP) (SMBus) 22.2 Overview The two-wire interface (TWI) is a bidirectional, two-wire communication interface. It is I2C and System Management Bus (SMBus) compatible. The only external hardware needed to implement the bus is one pull-up resistor on each bus line. A device connected to the bus must act as a master or a slave. The master initiates a data transaction by addressing a slave on the bus and telling whether it wants to transmit or receive data. One bus can have many slaves and one or several masters that can take control of the bus. An arbitration process handles priority if more than one master tries to transmit data at the same time. Mechanisms for resolving bus contention are inherent in the protocol. The TWI module supports master and slave functionality. The master and slave functionality are separated from each other, and can be enabled and configured separately. The master module supports multi-master bus operation and arbitration. It contains the baud rate generator. Both 100kHz and 400kHz bus frequency is supported. Quick command and smart mode can be enabled to auto-trigger operations and reduce software complexity. The slave module implements 7-bit address match and general address call recognition in hardware. 10-bit addressing is also supported. A dedicated address mask register can act as a second address match register or as a register for address range masking. The slave continues to operate in all sleep modes, including power-down mode. This enables the slave to wake up the device from all sleep modes on TWI address match. It is possible to disable the address matching to let this be handled in software instead. The TWI module will detect START and STOP conditions, bus collisions, and bus errors. Arbitration lost, errors, collision, and clock hold on the bus are also detected and indicated in separate status flags available in both master and slave modes. It is possible to disable the TWI drivers in the device, and enable a four-wire digital interface for connecting to an external TWI bus driver. This can be used for applications where the device operates from a different VCC voltage than used by the TWI bus. PORTC has one TWI. Notation of this peripheral is TWIC. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 43 23. SPI – Serial Peripheral Interface 23.1 Features z One SPI peripheral z Full-duplex, three-wire synchronous data transfer z Master or slave operation z Lsb first or msb first data transfer z Eight programmable bit rates z Interrupt flag at the end of transmission z Write collision flag to indicate data collision z Wake up from idle sleep mode z Double speed master mode 23.2 Overview The Serial Peripheral Interface (SPI) is a high-speed synchronous data transfer interface using three or four pins. It allows fast communication between an XMEGA device and peripheral devices or between several microcontrollers. The SPI supports full-duplex communication. A device connected to the bus must act as a master or slave.The master initiates and controls all data transactions. PORTC has one SPI. Notation of this peripheral is SPIC. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 44 24. USART 24.1 Features z One USART peripherals z Full-duplex operation z Asynchronous or synchronous operation z z Synchronous clock rates up to 1/2 of the device clock frequency Asynchronous clock rates up to 1/8 of the device clock frequency z Supports serial frames with 5, 6, 7, 8, or 9 data bits and 1 or 2 stop bits z Fractional baud rate generator z z Can generate desired baud rate from any system clock frequency No need for external oscillator with certain frequencies z Built-in error detection and correction schemes z Odd or even parity generation and parity check Data overrun and framing error detection z Noise filtering includes false start bit detection and digital low-pass filter z z Separate interrupts for z Transmit complete Transmit data register empty z Receive complete z z Multiprocessor communication mode z z Addressing scheme to address a specific devices on a multidevice bus Enable unaddressed devices to automatically ignore all frames z Master SPI mode z Double buffered operation Configurable data order z Operation up to 1/2 of the peripheral clock frequency z z IRCOM module for IrDA compliant pulse modulation/demodulation 24.2 Overview The universal synchronous and asynchronous serial receiver and transmitter (USART) is a fast and flexible serial communication module. The USART supports full-duplex communication and asynchronous and synchronous operation. The USART can be configured to operate in SPI master mode and 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 directions, enabling continued data transmission without any delay between frames. Separate interrupts for receive and transmit complete enable 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. The clock generator includes a fractional baud rate generator that is able to generate a wide range of USART baud rates from any system clock frequencies. This removes the need to use an external crystal oscillator with a specific frequency to achieve a required baud rate. It also supports external clock input in synchronous slave operation. When the USART is set in master SPI mode, all USART-specific logic is disabled, leaving the transmit and receive buffers, shift registers, and baud rate generator enabled. Pin control and interrupt generation are identical in both modes. The registers are used in both modes, but their functionality differs for some control settings. An IRCOM module can be enabled for one USART to support IrDA 1.4 physical compliant pulse modulation and demodulation for baud rates up to 115.2kbps. PORTC has one USART. Notation of this peripheral is USARTC0. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 45 25. IRCOM – IR Communication Module 25.1 Features z Pulse modulation/demodulation for infrared communication z IrDA compatible for baud rates up to 115.2kbps z Selectable pulse modulation scheme z 3/16 of the baud rate period Fixed pulse period, 8-bit programmable z Pulse modulation disabled z z Built-in filtering z Can be connected to and used by any USART 25.2 Overview XMEGA devices contain an infrared communication module (IRCOM) that is IrDA compatible for baud rates up to 115.2kbps. It can be connected to any USART to enable infrared pulse encoding/decoding for that USART. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 46 26. AES and DES Crypto Engine 26.1 Features z Data Encryption Standard (DES) CPU instruction z Advanced Encryption Standard (AES) crypto module z DES Instruction z Encryption and decryption DES supported z Encryption/decryption in 16 CPU clock cycles per 8-byte block z z AES crypto module z Encryption and decryption Supports 128-bit keys z Supports XOR data load mode to the state memory z Encryption/decryption in 375 clock cycles per 16-byte block z 26.2 Overview The Advanced Encryption Standard (AES) and Data Encryption Standard (DES) are two commonly used standards for cryptography. These are supported through an AES peripheral module and a DES CPU instruction, and the communication interfaces and the CPU can use these for fast, encrypted communication and secure data storage. DES is supported by an instruction in the AVR CPU. The 8-byte key and 8-byte data blocks must be loaded into the register file, and then the DES instruction 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. The encrypted/encrypted data can then 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. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 47 27. CRC – Cyclic Redundancy Check Generator 27.1 Features z Cyclic redundancy check (CRC) generation and checking for z Communication data Program or data in flash memory z Data in SRAM and I/O memory space z z Integrated with flash memory, DMA controller and CPU z Continuous CRC on data going through a DMA channel Automatic CRC of the complete or a selectable range of the flash memory z CPU can load data to the CRC generator through the I/O interface z z CRC polynomial software selectable to z z CRC-16 (CRC-CCITT) CRC-32 (IEEE 802.3) z Zero remainder detection 27.2 Overview A cyclic redundancy check (CRC) is an error detection technique test algorithm used to find accidental errors in data, and it is commonly used to determine the correctness of a data transmission, and data present in the data and program memories. A CRC takes a data stream or a block of data as input and generates a 16- or 32-bit output that can be appended to the data and used as a checksum. When the same data are later received or read, the device or application repeats the calculation. If the new CRC result does not match the one calculated earlier, the block contains a data error. The application will then detect this and may take a corrective action, such as requesting the data to be sent again or simply not using the incorrect data. Typically, an n-bit CRC applied to a data block of arbitrary length will detect any single error burst not longer than n bits (any single alteration that spans no more than n bits of the data), and will detect the fraction 1-2-n of all longer error bursts. The CRC module in XMEGA devices supports two commonly used CRC polynomials; CRC-16 (CRC-CCITT) and CRC-32 (IEEE 802.3). z z CRC-16: Polynomial: x16+x12+x5+1 Hex value: 0x1021 CRC-32: Polynomial: x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1 Hex value: 0x04C11DB7 XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 48 28. LCD - Liquid Crystal Display Controller 28.1 Features z Display capacity up to 25 segment and up to 4 common terminals z Supports up to 16 GPIO's z Shadow display memory gives full freedom in segment update z ASCII character mapping z Swap capability option on segment and/or common terminal buses z Supports from static up to 1/4 duty z Supports static and 1/3 bias z LCD driver active in power save mode for low power operation z Software selectable low power waveform z Flexible selection of frame frequency z Programmable blink mode and frequency on two segment terminals z Uses Only 32 kHz RTC clock source z On-chip LCD power supply z Software contrast adjustment control z Equal source and sink capability to Increase glass life time z Extended interrupt mode for display update or wake-up from sleep mode 28.2 Overview The LCD controller is intended for monochrome passive liquid crystal display (LCD) with up to 4 Common terminals and up to 40 Segments terminals. If the application does not need all the LCD segments available on the XMEGA, up to 16 of the unused LCD pins can be used as general purpose I/O pins. The LCD controller can be clocked by an internal or an external asynchronous 32kHz clock source. This 32kHz oscillator source selection is the same as for the real time counter (RTC). Dedicated Low Power Waveform, Contrast Control, Extended Interrupt Mode, Selectable Frame Frequency and Blink functionality are supported to offload the CPU, reduce interrupts and reduce power consumption. To reduce hardware design complexity, the LCD includes integrated LCD buffers, an integrated power supply voltage and an innovative SWAP mode. Using SWAP mode, the hardware designers have more flexibility during board layout as they can rearrange the pin sequence on Segment and/or Common Terminal Buses. Figure 28-1. LCD overview Character Mapping Timing Control & Swap SEG[24:0] Display Memory Shadow Display Memory Analog Switch Array COM[3:0] LCD Power Supply CAPH VLCD BIAS1 BIAS2 CAPL XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 49 29. ADC – 12-bit Analog to Digital Converter 29.1 Features z One Analog to Digital Converters (ADC) z 12-bit resolution z Up to 300 thousand samples per second z z Down to 2.3µs conversion time with 8-bit resolution Down to 3.35µs conversion time with 12-bit resolution z Differential and single-ended input z Up to 16 single-ended inputs 16x4 differential inputs without gain z 16x4 differential input with gain z z Built-in differential gain stage z 1/2x, 1x, 2x, 4x, 8x, 16x, 32x, and 64x gain options z Single, continuous and scan conversion options z Three internal inputs z Internal temperature sensor AVCC voltage divided by 10 z 1.1V bandgap voltage z z Internal and external reference options z Compare function for accurate monitoring of user defined thresholds z Optional event triggered conversion for accurate timing z Optional DMA transfer of conversion results z Optional interrupt/event on compare result 29.2 Overview The ADC converts analog signals to digital values. The ADC has 12-bit resolution and is capable of converting up to 300 thousand samples per second (KSPS). The input selection is flexible, and both single-ended and differential measurements can be done. For differential measurements, an optional gain stage is available to increase the dynamic range. In addition, several internal signal inputs are available. The ADC can provide both signed and unsigned results. The ADC measurements can either be started by application software or an incoming event from another peripheral in the device. The ADC measurements can be started with predictable timing, and without software intervention. It is possible to use DMA to move ADC results directly to memory or peripherals when conversions are done. Both internal and external reference voltages can be used. An integrated temperature sensor is available for use with the ADC. The output from the AVCC/10 and the bandgap voltage can also be measured by the ADC. The ADC has a compare function for accurate monitoring of user defined thresholds with minimum software intervention required. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 50 Figure 29-1. ADC overview ADC0 • • • ADC15 Compare Register ADC Internal signals ADC0 • • • ADC7 < > VINP Threshold (Int Req) CH0 Result VINN Internal 1.00V Internal AVCC/1.6V Internal AVCC/2 AREFA AREFB Reference Voltage The ADC may be configured for 8- or 12-bit result, reducing the minimum conversion time (propagation delay) from 3.35µs for 12-bit to 2.3µs for 8-bit result. 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). PORTB has one ADC. Notation of this peripheral is ADCB. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 51 30. AC – Analog Comparator 30.1 Features z Two Analog Comparators (AC) z Selectable hysteresis z No Small z Large z z Analog comparator output available on pin z Flexible input selection z All pins on the port Bandgap reference voltage z A 64-level programmable voltage scaler of the internal AVCC voltage z z Interrupt and event generation on: z Rising edge Falling edge z Toggle z z Window function interrupt and event generation on: z Signal above window Signal inside window z Signal below window z z Constant current source with configurable output pin selection 30.2 Overview The analog comparator (AC) compares the voltage levels on two inputs and gives a digital output based on this comparison. The analog comparator may be configured to generate interrupt requests and/or events upon several different combinations of input change. One important property of the analog comparator’s dynamic behavior is the hysteresis. This parameter may be adjusted in order to achieve the optimal operation for each application. The input selection includes analog port pins, several internal signals, and a 64-level programmable voltage scaler. The analog comparator output state can also be output on a pin for use by external devices. A constant current source can be enabled and output on a selectable pin. This can be used to replace, for example, external resistors used to charge capacitors in capacitive touch sensing applications. The analog comparators are always grouped in pairs on each port. These are called analog comparator 0 (AC0) and analog comparator 1 (AC1). They have identical behavior, but separate control registers. Used as pair, they can be set in window mode to compare a signal to a voltage range instead of a voltage level. PORTB has one AC pair. Notation is ACB. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 52 Figure 30-1. Analog comparator overview Pin Input + AC0 - Pin Input AC0OUT Hysteresis Enable Voltage Scaler ACnMUXCTRL ACnCTRL Interrupt Mode WINCTRL Enable Bandgap Interrupt Sensititivity Control & Window Function Interrupts Events Hysteresis + AC1 - Pin Input AC1OUT Pin Input The window function is realized by connecting the external inputs of the two analog comparators in a pair as shown in Figure 30-2. Figure 30-2. Analog comparator window function + AC0 Upper limit of window Interrupt sensitivity control Input signal Interrupts Events + AC1 Lower limit of window - XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 53 31. Programming and Debugging 31.1 Features z Programming z External programming through PDI or JTAG interfaces z Minimal protocol overhead for fast operation z Built-in error detection and handling for reliable operation z Boot loader support for programming through any communication interface z Debugging z z z z z z Nonintrusive, real-time, on-chip debug system No software or hardware resources required from device except pin connection Program flow control z Go, Stop, Reset, Step Into, Step Over, Step Out, Run-to-Cursor Unlimited number of user program breakpoints Unlimited number of user data breakpoints, break on: z Data location read, write, or both read and write z Data location content equal or not equal to a value z Data location content is greater or smaller than a value z Data location content is within or outside a range No limitation on device clock frequency z Program and Debug Interface (PDI) z Two-pin interface for external programming and debugging Uses the Reset pin and a dedicated pin z No I/O pins required during programming or debugging z z JTAG interface z z 31.2 Four-pin, IEEE Std. 1149.1 compliant interface for programming and debugging Boundary scan capabilities according to IEEE Std. 1149.1 (JTAG) Overview The Program and Debug Interface (PDI) is an Atmel proprietary interface for external programming and on-chip debugging of a device. The PDI supports fast programming of nonvolatile memory (NVM) spaces; flash, EEPOM, fuses, lock bits, and the user signature row. Debug is supported through an on-chip debug system that offers nonintrusive, real-time debug. It does not require any software or hardware resources except for the device pin connection. Using the Atmel tool chain, it offers complete program flow control and support for an unlimited number of program and complex data breakpoints. Application debug can be done from a C or other high-level language source code level, as well as from an assembler and disassembler level. Programming and debugging can be done through two physical interfaces. The primary one is the PDI physical layer, which is available on all devices. This is a two-pin interface that uses the Reset pin for the clock input (PDI_CLK) and one other dedicated pin for data input and output (PDI_DATA). A JTAG interface is also available on most devices, and this can be used for programming and debugging through the four-pin JTAG interface. The JTAG interface is IEEE Std. 1149.1 compliant, and supports boundary scan. Any external programmer or on-chip debugger/emulator can be directly connected to either of these interfaces. Unless otherwise stated, all references to the PDI assume access through the PDI physical layer. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 54 32. Pinout and Pin Functions The device pinout is shown in “Pinout/Block Diagram” on page 4. In addition to general purpose I/O functionality, each pin can have several alternate functions. This will depend on which peripheral is enabled and connected to the actual pin. Only one of the pin functions can be used at time. 32.1 Alternate Pin Function Description The tables below show the notation for all pin functions available and describe its function. 32.1.1 Operation/Power Supply VCC Digital supply voltage AVCC Analog supply voltage GND Ground AGND Analog Ground 32.1.2 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 32.1.3 Analog functions ACn Analog Comparator input pin n ACnOUT Analog Comparator n Output ADCn Analog to Digital Converter input pin n AREF Analog Reference input pin 32.1.4 LCD functions SEGn LCD Segment Drive Output n COMn LCD Common Drive Output n VLCD LCD Voltage Multiplier Output BIAS2 LCD Intermediate Voltage 2 Output (VLCD * 2/3) BIAS1 LCD Intermediate Voltage 1 Output (VLCD * 1/3) CAPH LCD High End Of Flying Capacitor CAPL LCD Low End Of Flying Capacitor XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 55 32.1.5 Timer/Counter and AWEX functions OCnxLS Output Compare Channel x Low Side for Timer/Counter n OCnxHS Output Compare Channel x High Side for Timer/Counter n 32.1.6 Communication functions SCL Serial Clock for TWI SDA Serial Data for TWI SCLIN Serial Clock In for TWI when external driver interface is enabled SCLOUT Serial Clock Out for TWI when external driver interface is enabled SDAIN Serial Data In for TWI when external driver interface is enabled SDAOUT Serial Data Out for TWI when external driver interface is enabled 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 D- Data- for USB D+ Data+ for USB 32.1.7 Oscillators, Clock and Event TOSCn Timer Oscillator pin n XTALn Input/Output for Oscillator pin n CLKOUT Peripheral Clock Output EVOUT Event Channel 0 Output RTCOUT RTC Clock Source Output 32.1.8 Debug/System functions RESET Reset pin PDI_CLK Program and Debug Interface Clock pin PDI_DATA Program and Debug Interface Data pin XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 56 32.2 TCK JTAG Test Clock TDI JTAG Test Data In TDO JTAG Test Data Out TMS JTAG Test Mode Select Alternate Pin Functions The tables below show the primary/default function for each pin on a port in the first column, the pin number in the second column, and then all alternate pin functions in the remaining columns. The head row shows what peripheral that enable and use the alternate pin functions. For better flexibility, some alternate functions also have selectable pin locations for their functions, this is noted under the first table where this apply. Table 32-1. Port B - Alternate functions PORT B PIN # INTERRUPT ADCA ADCB POS/GAIN POS POS/GAIN POS ADCB ADCB ACB ACB ACB NEG GAINNEG POS NEG OUT AGND 55 AVDD 56 PB0 57 SYNC ADC8 ADC0 ADC0 AC0 AC0 PB1 58 SYNC ADC9 ADC1 ADC1 AC1 AC1 PB2 59 SYNC/ASYNC ADC10 ADC2 ADC2 AC2 PB3 60 SYNC ADC11 ADC3 ADC3 AC3 PB4 61 SYNC ADC12 ADC4 ADC4 AC4 PB5 62 SYNC ADC13 ADC5 ADC5 AC5 PB6 64 SYNC ADC14 ADC6 ADC6 AC6 PB7 64 SYNC ADC15 ADC7 ADC7 REFB JTAG AREF AC3 TMS AC5 AC7 TDI AC1OUT TCK AC0OUT TDO XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 57 Table 32-2. Port C - Alternate functions. PIN # INTERRUPT TCC0(1) AWEXC PC0 1 SYNC OC0A OC0ALS PC1 2 SYNC OC0B OC0AHS XCK0 PC2 3 SYNC/ASYNC OC0C OC0BLS RXD0 EXTCLKC2 PC3 4 SYNC OC0D OC0BHS TXD0 EXTCLKC3 PC4 5 SYNC OC0CLS OC1A SS EXTCLKC4 PC5 6 SYNC OC0CHS OC1B MOSI EXTCLKC5 PC6 7 SYNC OC0DLS MISO EXTCLKC6 RTCOUT PC7 8 SYNC OC0DHS SCK EXTCLKC7 clkPER PORT C Notes: 1. 2. 3. 4. 5. TCC1 USARTC0(2) SPIC(3) TWIC EXTCLK SDA EXTCLKC0 SCL EXTCLKC1 CLOCKOUT EVENTOUT (4) (5) EVOUT Pin mapping of all TC0 can optionally be moved to high nibble of port. Pin mapping of all USART0 can optionally be moved to high nibble of port. Pins MOSI and SCK for all SPI can optionally be swapped. CLKOUT can optionally be moved between port C and E and between pin 4 and 7. EVOUT can optionally be moved between port C and E and between pin 4 and 7. Table 32-3. Port D - Alternate functions. PORT D PIN # INTERRUPT USBD GND 9 VCC 10 PD0 11 SYNC D- PD1 12 SYNC D+ Table 32-4. Program and Debug functions. PROG PIN # INTERRUPT PROG RESET 13 PDI_CLK PDI 14 PDI_DATA Table 32-5. LCD (1)(2) LCD PIN # INTERRUPT(1) GPIO(1) GND 15 VCC 16 SEG24 17 SYNC PG0 SEG23 18 SYNC PG1 SEG22 19 SYNC/ASYNC PG2 SEG21 20 SYNC PG3 SEG20 21 SYNC PG4 SEG19 22 SYNC PG5 BLINK(1) XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 58 LCD(1)(2) PIN # INTERRUPT(1) GPIO(1) SEG18 23 SYNC PG6 SEG17 24 SYNC PG7 SEG16 25 SYNC PM0 SEG15 26 SYNC PM1 SEG14 27 SYNC/ASYNC PM2 SEG13 28 SYNC PM3 SEG12 29 SYNC PM4 SEG11 30 SYNC PM5 SEG10 31 SYNC PM6 SEG9 32 SYNC PM7 SEG8 33 SEG7 34 SEG6 35 SEG5 36 SEG4 37 SEG3 38 SEG2 39 SEG1 40 BLINK SEG0 41 BLINK GND 42 VCC 43 BIAS1 44 BIAS2 45 VLCD 46 CAPL 47 CAPH 48 COM0 49 COM1 50 COM2 51 COM3 52 Notes: 1. 2. BLINK(1) Pin mapping of all Segment terminals (SEGn) can be optionnaly swapped. Interrupt, GPIO and Blink functions will be automatically swapped. Pin mapping of all Common terminals (COMn) can be optionnaly swapped. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 59 Table 32-6. Port R- Alternate functions. PORT R PIN # INTERRUPT XTAL TOSC PR0 53 SYNC XTAL2 TOSC2 PR1 54 SYNC XTAL1 TOSC1 XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 60 33. Peripheral Module Address Map The address maps show the base address for each peripheral and module in XMEGA B3. For complete register description and summary for each peripheral module, refer to the XMEGA B Manual. Table 33-1. Peripheral module address map. Base address Name Description 0x0000 GPIO General Purpose IO Registers 0x0010 VPORT0 Virtual Port 0 0x0014 VPORT1 Virtual Port 1 0x0018 VPORT2 Virtual Port 2 0x001C VPORT3 Virtual Port 3 0x0030 CPU CPU 0x0040 CLK Clock Control 0x0048 SLEEP Sleep Controller 0x0050 OSC Oscillator Control 0x0060 DFLLRC32M DFLL for the 32MHz Internal Oscillator 0x0068 DFLLRC2M DFLL for the 2MHz Internal Oscillator 0x0070 PR Power Reduction 0x0078 RST Reset Controller 0x0080 WDT Watch-Dog Timer 0x0090 MCU MCU Control 0x00A0 PMIC Programmable Multilevel Interrupt Controller 0x00B0 PORTCFG 0x00C0 AES AES Module 0x00D0 CRC CRC Module 0x0100 DMA DMA Controller 0x0180 EVSYS 0x01C0 NVM Non Volatile Memory (NVM) Controller 0x0200 ADCA Analog to Digital Converter on port A 0x0240 ADCB Analog to Digital Converter on port B 0x0380 ACA Analog Comparator pair on port A 0x0390 ACB Analog Comparator pair on port B 0x0400 RTC Real Time Counter 0x0480 TWIC Two Wire Interface on port C 0x04C0 USB USB Device Port Configuration Event System 0x0620 PORTB Port B 0x0640 PORTC Port C 0x0660 PORTD Port D 0x06C0 PORTG Port G 0x0760 PORTM Port M 0x07E0 PORTR Port R 0x0800 TCC0 Timer/Counter 0 on port C XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 61 Base address Name Description 0x0840 TCC1 Timer/Counter 1 on port C 0x0880 AWEXC Advanced Waveform Extension on port C 0x0890 HIRESC High Resolution Extension on port C 0x08A0 USARTC0 0x08C0 SPIC 0x08F8 IRCOM 0x0D00 LCD USART 0 on port C Serial Peripheral Interface on port C Infrared Communication Module Liquid Crystal Display XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 62 34. Instruction Set Summary Mnemonics Operands Description Operation Flags #Clocks Arithmetic and Logic Instructions ADD Rd, Rr Add without Carry Rd ← Rd + Rr Z,C,N,V,S,H 1 ADC Rd, Rr Add with Carry Rd ← Rd + Rr + C Z,C,N,V,S,H 1 ADIW 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 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) XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 63 Mnemonics Operands Description Operation Flags #Clocks 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) call Subroutine PC ← k None 3 / 4 (1) RET Subroutine Return PC ← STACK None 4 / 5 (1) RETI Interrupt Return PC ← STACK I 4 / 5 (1) if (Rd = Rr) PC ← PC + 2 or 3 None 1/2/3 CALL k CPSE Rd,Rr Compare, Skip if Equal CP Rd,Rr Compare CPC Rd,Rr Compare with Carry CPI Rd,K Compare with Immediate 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 Rd ← Rr None 1 Rd+1:Rd ← Rr+1:Rr None 1 Rd ← K None 1 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 Data transfer instructions MOV Rd, Rr Copy Register MOVW Rd, Rr Copy Register Pair LDI Rd, K Load Immediate XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 64 Mnemonics Operands Description Flags #Clocks 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) 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 - Store Program Memory and Post-Increment by 2 (RAMPZ:Z) Z ← ← R1:R0, Z+2 None - SPM SPM Z+ XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 65 Mnemonics Operands Description IN Rd, A In From I/O Location OUT A, Rr Out To I/O Location PUSH Rr Push Register on Stack POP Rd XCH Operation Flags #Clocks Rd ← I/O(A) None 1 I/O(A) ← Rr None 1 STACK ← Rr None 1 (1) Pop Register from Stack Rd ← STACK None 2 (1) Z, Rd Exchange RAM location Temp Rd (Z) ← ← ← Rd, (Z), Temp None 2 LAS Z, Rd Load and Set RAM location Temp Rd (Z) ← ← ← Rd, (Z), Temp v (Z) None 2 LAC Z, Rd Load and Clear RAM location Temp Rd (Z) ← ← ← Rd, (Z), ($FFh – Rd) • (Z) None 2 LAT Z, Rd Load and Toggle RAM location Temp Rd (Z) ← ← ← Rd, (Z), Temp ⊕ (Z) None 2 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 Rd(0) Rd(n+1) C ← ← ← C, Rd(n), Rd(7) Z,C,N,V,H 1 Bit and bit-test instructions LSL Rd Logical Shift Left LSR Rd Logical Shift Right ROL Rd Rotate Left Through Carry ROR Rd Rotate Right Through Carry Rd(7) Rd(n) C ← ← ← C, Rd(n+1), Rd(0) Z,C,N,V 1 ASR 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 XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 66 Mnemonics Operands Description Operation Flags #Clocks 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 None 1 None 1 MCU control instructions BREAK Break NOP No Operation SLEEP Sleep (see specific descr. for Sleep) None 1 WDR Watchdog Reset (see specific descr. for WDR) None 1 Notes: 1. 2. (See specific descr. for BREAK) Cycle times for Data memory accesses assume internal memory accesses, and are not valid for accesses via the external RAM interface. One extra cycle must be added when accessing Internal SRAM. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 67 35. Packaging information 35.1 64A PIN 1 B e PIN 1 IDENTIFIER E1 E D1 D C 0°~7° A1 A2 A L COMMON DIMENSIONS (Unit of measure = mm) Notes: 1.This package conforms to JEDEC reference MS-026, Variation AEB. 2. Dimensions D1 and E1 do not include mold protrusion. Allowable protrusion is 0.25mm per side. Dimensions D1 and E1 are maximum plastic body size dimensions including mold mismatch. 3. Lead coplanarity is 0.10mm maximum. SYMBOL MIN NOM MAX A – – 1.20 A1 0.05 – 0.15 A2 0.95 1.00 1.05 D 15.75 16.00 16.25 D1 13.90 14.00 14.10 E 15.75 16.00 16.25 E1 13.90 14.00 14.10 B 0.30 – C 0.09 L 0.45 e NOTE Note 2 Note 2 0.45 – 0.20 – 0.75 0.80 TYP 2010-10-20 2325 Orchard Parkway San Jose, CA 95131 DRAWING NO. TITLE 64A, 64-lead, 14 x 14mm Body Size, 1.0mm Body Thickness, 0.8mm Lead Pitch, Thin Profile Plastic Quad Flat Package (TQFP) 64A XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 REV. C 68 35.2 64M2 D Marked Pin# 1 ID E C SEATING PLANE A1 TOP VIEW A3 A K 0.08 C L Pin #1 Corner D2 1 2 3 SIDE VIEW Pin #1 Triangle Option A COMMON DIMENSIONS (Unit of Measure = mm) E2 Option B Pin #1 Chamfer (C 0.30) SYMBOL MIN NOM MAX 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 0.20 REF b 0.18 0.25 0.30 D 8.90 9.00 9.10 D2 7.50 7.65 7.80 E 8.90 9.00 9.10 E2 7.50 7.65 7.80 e Notes: 1. JEDEC Standard MO-220, (SAW Singulation) Fig. 1, VMMD. 2. Dimension and tolerance conform to ASMEY14.5M-1994. NOTE 0.50 BSC L 0.35 0.40 0.45 K 0.20 0.27 0.40 2014-05-30 2325 Orchard Parkway San Jose, CA 95131 TITLE 64M2, 64-pad, 9 x 9 x 1.0mm Bod y, Lead Pitch 0.50mm , 7.65mm Exposed Pad, Quad Flat No Lead Package (QFN) DRAWING NO. 64M2 XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 REV. F 69 35.3 64P2 XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 70 36. Electrical Characteristics All typical values are measured at T = 25°C unless other temperature condition is given. All minimum and maximum values are valid across operating temperature and voltage unless other conditions are given. 36.1 Absolute Maximum Ratings Stresses beyond those listed in Table 36-1 on page 71 under 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. Table 36-1. Absolute maximum ratings. Symbol 36.2 Parameter Min. VCC Power supply voltage -0.3 IVCC Typ. Max. Units 4 V Current into a Vcc pin 200 mA IGND Current out of a Gnd pin 200 mA VPIN Pin voltage with respect to Gnd and VCC -0.5 Vcc+0.5 V IPIN I/O pin sink/source current -25 25 mA TA Storage temperature -65 150 °C Tj Junction temperature 150 °C General Operating Ratings The device must operate within the ratings listed in Table 36-2 on page 71 in order for all other electrical characteristics and typical characteristics of the device to be guaranteed and valid. Table 36-2. General operating conditions. Symbol Parameter Min. Typ. Max. Units VCC Power supply voltage 1.6 3.6 V AVCC Power supply voltage 1.6 3.6 V TA Temperature range -40 85 °C Tj Junction temperature -40 105 °C Table 36-3. Operating voltage and frequency. Symbol ClkCPU Parameter CPU clock frequency Condition Min Typ. Max. VCC = 1.6V 0 12 VCC = 1.8V 0 12 VCC = 2.7V 0 32 VCC = 3.6V 0 32 Units MHz The maximum System clock frequency of the Atmel® AVR® XMEGA B3 devices is depending on VCC. As shown in Figure 36-1 on page 72 the Frequency vs. VCC curve is linear between 1.8V < VCC < 2.7V. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 71 Figure 36-1. Maximum Frequency vs. Vcc MHz 32 Safe Operating Area 12 1.6 1.8 2.7 3.6 V XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 72 36.3 DC Characteristics Table 36-4. Current Consumption for active and sleep modes. Symbol Parameter Condition 32kHz, Ext. Clk Active Power consumption(1) 1MHz, Ext. Clk 2MHz, Ext. Clk 32MHz, Ext. Clk 32kHz, Ext. Clk Idle Power consumption(1) 1MHz, Ext. Clk 2MHz, Ext. Clk ICC 32MHz, Ext. Clk Min T = 85°C WDT and Sampled BOD enabled, T = 25°C 150 VCC = 3.0V 320 VCC = 1.8V 350 VCC = 3.0V 700 VCC = 1.8V 650 800 1.0 1.6 10 15 VCC = 3.0V Power-save power consumption(2) mA 4.0 VCC = 3.0V 8.0 VCC = 1.8V 80 VCC = 3.0V 150 VCC = 1.8V 160 250 300 600 4.7 7 0.1 1.0 2.1 5 1.2 2.5 1.3 3 3.1 7 VCC = 3.0V VCC = 3.0V VCC = 1.8V VCC = 3.0V Units µA VCC = 1.8V WDT and Sampled BOD enabled, T = 25°C WDT and Sampled BOD enabled, T=85°C Max VCC = 1.8V T = 25°C Power-down power consumption Typ µA RTC on ULP clock, WDT and sampled BOD enabled, T = 25°C VCC = 1.8V 1.2 VCC = 3.0V 1.3 RTC on 1.024kHz low power 32.768kHz TOSC, T = 25°C VCC = 1.8V 0.8 VCC = 3.0V 0.9 RTC from low power 32.768kHz TOSC, T = 25°C VCC = 1.8V 1.3 VCC = 3.0V 1.6 mA µA µA XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 73 Symbol Parameter Power-save power consumption(2) ICC Reset power consumption Notes: 1. 2. Condition Min Typ RTC on ULP clock, WDT, sampled BOD and LCD enabled, and all pixels ON, T = 25°C VCC = 1.8V 4.6 VCC = 3.0V 5.2 RTC on 1.024kHz low power 32.768kHz TOSC, LCD enabled and all pixels ON T = 25°C VCC = 1.8V 3.9 VCC = 3.0V 4.3 RTC from low power 32.768kHz TOSC, LCD enabled and all pixels ON, T = 25°C VCC = 1.8V 4.0 VCC = 3.0V 4.5 Current through RESET pin substracted VCC = 3.0V 420 Max Units µA µA All Power Reduction Registers set. Maximum limits are based on characterization and not tested in production. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 74 Table 36-5. Current Consumption for modules and peripherals. Symbol Parameter Condition(1) Min Typ Max ULP oscillator 1.0 µA 32.768kHz int. oscillator 26 µA 2MHz int. oscillator 80 µA DFLL enabled with 32.768kHz int. osc. as reference 112 255 32MHz int. oscillator DFLL enabled with 32.768kHz int. osc. as reference 444 PLL Multiplication factor = 20x 316 µA 1 µA µA Watchdog Timer Continuous mode 126 Sampled mode, include ULP oscillator 1.3 BOD µA Contrast min No pixel load ICC Units Contrast typ LCD(2) Contrast max 22pF pixel load All pixels OFF 3.0 100 pixels ON 3.0 All pixels ON 3.0 All pixels OFF 3.3 100 pixels ON 3.4 All pixels ON 3.4 All pixels OFF 3.8 100 pixels ON 3.9 All pixels ON 3.9 All pixels OFF 3.7 All pixels ON 4.3 µA Contrast typ Internal 1.0V reference 100 µA Temperature sensor 100 µA 1.3 16ksps VREF = Ext ref ADC CURRLIMIT = LOW 1.1 CURRLIMIT = MEDIUM 1.0 CURRLIMIT = HIGH 0.9 75ksps VREF = Ext ref 1.7 300ksps VREF = Ext ref 3.1 XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 mA 75 Symbol Parameter Condition(1) Min Typ AC ICC DMA 615Kbps between I/O registers and SRAM USART Rx and Tx enabled, 9600 BAUD Flash memory and EEPROM programming Notes: 1. 2. 36.4 Max Units 440 µA 115 µA 9 µA 4.4 mA .All parameters measured as the difference in current consumption between module enabled and disabled. All data at VCC = 3.0V, ClkSYS = 1MHz External clock without prescaling, T = 25°C unless other conditiond are given. LCD configuration: internal voltage generation, 32Hz low power frame rate, 1/3 bias, clocked by low power 32.768kHz TOSC. Wake-up time from sleep modes Table 36-6. Device wake-up time from sleep modes with various system clock sources. Symbol Parameter Condition External 2MHz clock Wake-up time from Idle, Standby, and Extend Standby twakeup Typ Max Units 2 120 2MHz internal oscillator 2 32MHz internal oscillator 0.2 External 2MHz clock 4.5 32.768kHz internal oscillator 320 µs Wake-up time from Power-save and Power-down mode Note: 32.768kHz internal oscillator Min 1. 2MHz internal oscillator 9 32MHz internal oscillator 5 The wake-up time is the time from the wake-up request is given until the peripheral clock is available on pin, see Figure 36-2 on page 76. All peripherals and modules start execution from the first clock cycle, expect the CPU that is halted for four clock cycles before program execution starts. Figure 36-2. Wake-up time definition. Wake-up time Wake-up request Clock output XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 76 36.5 I/O Pin Characteristics The I/O pins complies with the JEDEC LVTTL and LVCSMOS specification and the high- and low level input and output voltage limits reflect or exceed this specification. Table 36-7. I/O Pin Characteristics. Symbol (1) IOH/ (2) Parameter Condition Min Max Units -20 20 mA VCC = 3.0 - 3.6V 0.6*VCC VCC+0.3 VCC = 2.3 - 2.7V 0.6*VCC VCC+0.3 VCC = 1.6 - 2.3V 0.6*VCC VCC+0.3 VCC = 3.0 - 3.6V -0.3 0.4*VCC VCC = 2.3 - 2.7V -0.3 0.4*VCC VCC = 1.6 - 2.3V -0.3 0.4*VCC I/O pin source/sink current IOL VIH High Level Input Voltage VIL Low Level Input Voltage VOL Output Low Voltage GPIO VOH Output High Voltage GPIO Typ VCC = 3.3V IOL = 15mA 0.4 0.76 VCC = 3.0V IOL = 10mA 0.26 0.64 VCC = 1.8V IOL = 5mA 0.17 0.46 VCC = 3.3V IOH = -8mA 2.6 2.8 VCC = 3.0V IOH = -6mA 2.1 2.6 VCC = 1.8V IOH = -2mA 1.4 1.6 V V V IIN Input Leakage Current I/O pin RP Pull/Buss keeper Resistor 25 kΩ RRST Reset pin Pull-up Resistor 25 kW (3) Notes: <0.01 V 1 µA 4 tr Rise time No load ns slew rate limitation 1. 2. 3. 7 The sum of all IOH for PORTA and PORTB must not exceed 100mA. The sum of all IOH for PORTC, PORTD, PORTE and PDI must for each port not exceed 200mA TThe sum of all IOH for PORTG and PORTM must not exceed 100mA. The sum of all IOH for PORTR must not exceed 100mA. The sum of all IOL for PORTA and PORTB must not exceed 100mA. The sum of all IOL for PORTC, PORTD, PORTE must for each port not exceed 200mA. The sum of all IOL for PORTG and PORTM must not exceed 100mA. The sum of all IOL PORTR must not exceed 100mA. From design simulations XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 77 36.6 Liquid Crystal Display Characteristics Table 36-8. Symbol Liquid crystal display characteristics. Parameter Condition Min Typ Max SEG Segment terminal pins 0 40 COM Common terminal pins 0 4 fFrame LCD frame frequency 31.25 512 CFlying Flying capacitor Contrast 100 Contrast adjustment VLCD BIAS2 F(clkLCD)=32.768kHz LCD regulated voltages BIAS1 -0.5 RCOM Common output impedance COM0 to COM3 RSEG Segment output impedance SEG0 to SEG39(1) Notes: 1. 36.7 ADC characteristics Hz nF 0.5 3 CFlying = 0.1µF 0.1µF on VLCD, BIAS2 and BIAS1 pins (1) 0 Units V 2*VLCD/3 VLCD/3 0.25 0.5 1 2 4 8 Typ. Max. Units VCC- 0.3 VCC+ 0.3 V 1 AVCC- 0.6 V kΩ Applies to Static and 1/3 bias Table 36-9. Power supply, reference and input range. Symbol Parameter AVCC Analog supply voltage VREF Reference voltage Condition Min. Rin Input resistance Switched 4.5 kΩ Cin Input capacitance Switched 5 pF RAREF Reference input resistance (leakage only) CAREF Reference input capacitance Static load Vin Input range Vin Conversion range Vin Conversion range >10 MΩ 7 pF 0 VREF V Differential mode, Vinp - Vinn -0.95*VREF 0.95*VREF V Single ended unsigned mode, Vinp -0.05*VREF 0.95*VREF V Table 36-10. Clock and timing. Symbol ClkADC Parameter ADC Clock frequency Condition Maximum is 1/4 of Peripheral clock frequency Min. 100 Sample rate Max. Units 1800 kHz Measuring internal signals fClkADC Typ. 125 16 300 XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 ksps 78 Symbol Parameter Condition Min. Current limitation (CURRLIMIT) off fADC Typ. 16 Max. Units 300 CURRLIMIT = LOW 250 CURRLIMIT = MEDIUM 150 CURRLIMIT = HIGH 50 Sample rate ksps Sampling Time 1/2 ClkADC cycle 0.25 5 µs Conversion time (latency) (RES+2)/2+(GAIN !=0) RES (Resolution) = 8 or 12 6 10 ClkADC cycles Start-up time ADC clock cycles 12 24 ClkADC cycles ADC settling time After changing reference or input mode 7 7 Min. Typ. Max. Differential 8 12 12 Single ended signed 7 11 11 Single ended unsigned 8 12 12 ClkADC cycles Table 36-11. Accuracy characteristics. Symbol RES Parameter Resolution Condition(2) 12-bit resolution 16kSPS, VREF = 3V 1 16kSPS, VREF = 1V 2 300kSPS, VREF = 3V 1 300kSPS, VREF = 1V 2 16kSPS, VREF = 3.0V 1 1.5 16kSPS, VREF = 1.0V 2 3 16kSPS, VREF = 3V 1 16kSPS, VREF = 1V 2 300kSPS, VREF = 3V 1 300kSPS, VREF = 1V 2 16kSPS, VREF = 3.0V 1 1.5 16kSPS, VREF = 1.0V 2 3 Units Bits Differential mode INL(1) Integral non-linearity lsb Single ended unsigned mode Differential mode DNL(1) Differential non-linearity lsb Single ended unsigned mode Offset Error Differential mode Temperature drift Operating voltage drift 8 mV 0.01 mV/K 0.25 XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 mV/V 79 Symbol Condition(2) Parameter Min. Typ. Max. Units External reference -5 AVCC/1.6 -5 AVCC/2.0 -6 Bandgap ±10 Temperature drift 0.02 mV/K 2 mV/V mV Gain Error Differential mode Operating voltage drift External reference -8 AVCC/1.6 -8 AVCC/2.0 -8 Bandgap ±10 Temperature drift 0.03 mV/K 2 mV/V mV Single ended unsigned mode Gain Error Operating voltage drift Notes: 1. 2. Maximum numbers are based on characterisation and not tested in production, and valid for 10% to 90% input voltage range. Unless otherwise noted all linearity, offset and gain error numbers are valid under the condition that external VREF is used. Table 36-12. Gain stage characteristics. Symbol Parameter Condition Min. Typ. Max. Units Rin Input resistance Switched in normal mode 4.0 kΩ Csample Input capacitance Switched in normal mode 4.4 pF Signal range Gain stage output Propagation delay ADC conversion rate 1/2 Clock rate Same as ADC 100 0 1 0.5x gain, normal mode -1 1x gain, normal mode -1 8x gain, normal mode -1 64x gain, normal mode 10 0.5x gain, normal mode 10 Offset error, 1x gain, normal mode 5 input referred 8x gain, normal mode -20 64x gain, normal mode -126 AVCC- 0.6 V 3 ClkADC cycles 1800 kHz Gain error % mV XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 80 36.8 Analog Comparator Characteristics Table 36-13. Analog comparator characteristics. Symbol Voff Ilk Parameter Condition Min. Typ. Input offset voltage 10 Input leakage current <10 Input voltage range 0.1 AC startup time Max. Units mV 50 nA AVCC- 0.1 V 50 µs Vhys1 Hysteresis, none VCC = 1.6V - 3.6V 0 mV Vhys2 Hysteresis, small VCC = 1.6V - 3.6V 12 mV Vhys3 Hysteresis, large VCC = 1.6V - 3.6V 28 mV 30 Propagation delay VCC = 3.0V, T= 85°C 22 tdelay VCC = 1.6V - 3.6V 21 40 0.3 0.5 ns 64-Level Voltage Scaler Integral nonlinearity (INL) Current source accuracy after calibration 36.9 5 lsb % Current source calibration range Single mode 4 6 µA Current source calibration range Double mode 8 12 µA Max Units Bandgap and Internal 1.0V Reference Characteristics Table 36-14. Bandgap and internal 1.0V reference characteristics. Symbol Parameter Condition Min As reference for ADC 1 ClkPER + 2.5µs Startup time As input voltage to ADC and AC µs 1.5 Bandgap voltage INT1V Typ 1.1 Internal 1.00V reference for ADC T= 85°C, After calibration Variation over voltage and temperature Calibrated at T= 85°C 0.99 1 V 1.01 2.25 XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 V % 81 36.10 Brownout Detection Characteristics Table 36-15. Brownout Detection Characteristics(1). Symbol Parameter Condition BOD level 0 falling Vcc T = 85°C, calibrated Min Typ Max 1.5 1.6 1.72 BOD level 1 falling Vcc 1.8 BOD level 2 falling Vcc 2.0 BOD level 3 falling Vcc 2.2 BOD level 4 falling Vcc 2.4 BOD level 5 falling Vcc 2.6 BOD level 6 falling Vcc 2.8 BOD level 7 falling Vcc 3.0 Units V Continuous mode tBOD µs Sampled mode VHYST Note: 0.4 Detection time 1000 Hysteresis 1. 1.6 % BOD is calibrated at 85°C within BOD level 0 values, and BOD level 0 is the default level. 36.11 External Reset Characteristics Table 36-16. External reset characteristics. Symbol tEXT Parameter Condition Min Minimum reset pulse width VRST Reset threshold voltage Typ Max Units 90 1000 ns VCC = 2.7 - 3.6V 0.50*VCC VCC = 1.6 - 2.7V 0.40*VCC V 36.12 Power-on Reset Characteristics Table 36-17. Power-on reset characteristics. Symbol Parameter VPOT-(1) POR threshold voltage falling VCC VPOT+ POR threshold voltage rising VCC Note: 1. Condition Min Typ VCC falls faster than 1V/ms 0.4 1.0 VCC falls at 1V/ms or slower 0.8 1.3 Max Units V 1.3 1.59 V Both VPOT- values are only valid when BOD is disabled. When BOD is enabled the µBOD is enabled, and VPOT- =VPOT+ XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 82 36.13 Flash and EEPROM Memory Characteristics Table 36-18. Endurance and data retention. Symbol Parameter Condition Min 25°C 10K 85°C 10K 25°C 100 55°C 25 25°C 100K 85°C 100K 25°C 100 55°C 25 Typ Max Write/Erase cycles Units Cycle Flash Data retention Year Write/Erase cycles Cycle EEPROM Data retention Year Table 36-19. Programming time. Symbol Parameter Chip Erase Flash EEPROM Notes: 1. 2. Condition Min Typ(1) 128KB Flash, EEPROM(2) 75 64KB Flash, EEPROM(2) 55 Page Erase 4 Page Write 4 Page Write Automatic Page Erase and Write 8 Page Erase 4 Page Write 4 Page Write Automatic Page Erase and Write 8 Max Units ms ms ms Programming is timed from the 2MHz internal oscillator. EEPROM is not erased if the EESAVE fuse is programmed. 36.14 Clock and Oscillator Characteristics 36.14.1 Calibrated 32.768kHz Internal Oscillator characteristics Table 36-20. Calibrated 32.768kHz internal oscillator characteristics. Symbol Parameter Condition Min Frequency Factory calibrated accuracy User calibration accuracy Typ Max 32.768 T = 85°C, VCC = 3.0V Units kHz -0.5 0.5 % -0.5 0.5 % XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 83 36.14.2 Calibrated 2MHz RC Internal Oscillator characteristics Table 36-21. Calibrated 2MHz internal oscillator characteristics. Symbol Parameter Frequency range Condition Min DFLL can tune to this frequency over voltage and temperature 1.8 Factory calibrated frequency Factory calibration accuracy Typ Max Units 2.2 MHz 2.0 T = 85°C, VCC= 3.0V User calibration accuracy MHz -1.5 1.5 % -0.2 0.2 % DFLL calibration stepsize 0.22 % 36.14.3 Calibrated and tunable 32MHz Internal Oscillator characteristics Table 36-22. Calibrated 32MHz internal oscillator characteristics. Symbol Parameter Frequency range Condition Min DFLL can tune to this frequency over voltage and temperature 30 Max Units 35 MHz Factory calibrated frequency Factory calibration accuracy Typ 32 T = 85°C, VCC= 3.0V User calibration accuracy -1.5 1.5 -0.2 0.2 % Max Units DFLL calibration step size 0.23 36.14.4 32kHz Internal ULP Oscillator characteristics Table 36-23. 32kHz internal ULP oscillator characteristics. Symbol Parameter Condition Min Factory calibrated frequency Factory calibration accuracy Typ 32 T = 85°C, VCC= 3.0V -12 kHz 12 % Max Units MHz 36.14.5 Phase Locked Loop (PLL) characteristics Table 36-24. Calibrated 32MHz internal oscillator characteristics. Symbol fIN Input Frequency Output frequency(1) fOUT Note: Parameter 1. Condition Min Typ Output frequency must be within fOUT 0.4 64 VCC= 1.60V 20 32 VCC= 2.70V 20 128 MHz Start-up time 23 100 µs re-lock time 20 50 µs The maximum output frequency vs. supply voltage is linear between 1.8V and 2.7V, and can never be higher than 4 times the maximum CPU frequency. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 84 36.14.6 External Clock Characteristics Figure 36-3. External Clock Drive Waveform tCH tCH tCF tCR VIH1 VIL1 tCL tCK Table 36-25. External clock used as system clock without prescaling. Symbol Clock frequency(1) 1/tCK tCK Clock period tCH Clock high time tCL Clock low time tCR Rise time (for maximum frequency) tCF Fall time (for maximum frequency) ΔtCK Note: Parameter Change in period from one clock cycle to the next 1. Condition Min Typ Max VCC = 1.6 - 1.8V 0 12 VCC = 2.7 - 3.6V 0 32 VCC = 1.6 - 1.8V 83.3 VCC = 2.7 - 3.6V 31.5 VCC = 1.6 - 1.8V 30.0 VCC = 2.7 - 3.6V 12.5 VCC = 1.6 - 1.8V 30.0 VCC = 2.7 - 3.6V 12.5 Units MHz ns ns ns VCC = 1.6 - 1.8V 10 VCC = 2.7 - 3.6V 3 VCC = 1.6 - 1.8V 10 VCC = 2.7 - 3.6V 3 ns ns 10 % The maximum frequency vs. supply voltage is linear between 1.8V and 2.7V, and the same applies for all other parameters with supply voltage conditions. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 85 Table 36-26. External clock with prescaler(1) for system clock Symbol Parameter Condition Clock Frequency(2) 1/tCK tCK Clock Period tCH Clock High Time tCL Clock Low Time tCR Rise Time (for maximum frequency) tCF Fall Time (for maximum frequency) ΔtCK Notes: Min Typ VCC = 1.6 - 1.8V 0 90 VCC = 2.7 - 3.6V 0 142 VCC = 1.6 - 1.8V 11 VCC = 2.7 - 3.6V 7 VCC = 1.6 - 1.8V 4.5 VCC = 2.7 - 3.6V 2.4 VCC = 1.6 - 1.8V 4.5 VCC = 2.7 - 3.6V 2.4 Units MHz ns ns ns VCC = 1.6 - 1.8V 1.5 VCC = 2.7 - 3.6V 1.0 VCC = 1.6 - 1.8V 1.5 VCC = 2.7 - 3.6V 1.0 ns ns Change in period from one clock cycle to the next 1. 2. Max 10 % System Clock Prescalers must be set so that maximum CPU clock frequency for device is not exceeded. The maximum frequency vs. supply voltage is linear between 1.8V and 2.7V, and the same applies for all other parameters with supply voltage conditions 36.14.7 External 16MHz crystal oscillator and XOSC characteristics Table 36-27. External 16MHz crystal oscillator and XOSC characteristics. Symbol Parameter Cycle to cycle jitter Long term jitter Condition Min. Typ. XOSCPWR=0, FRQRANGE=0 0 XOSCPWR=0, FRQRANGE=1, 2, or 3 0 XOSCPWR=1 0 XOSCPWR=0, FRQRANGE=0 0 XOSCPWR=0, FRQRANGE=1, 2, or 3 0 XOSCPWR=1 0 XOSCPWR=0, FRQRANGE=0 0.03 XOSCPWR=0, FRQRANGE=1 0.03 XOSCPWR=0, FRQRANGE=2 or 3 0.03 XOSCPWR=1 0.03 Max. Frequency error Units ns ns % XOSCPWR=0, FRQRANGE=0 50 XOSCPWR=0, FRQRANGE=1 50 XOSCPWR=0, FRQRANGE=2 or 3 50 XOSCPWR=1 50 Duty cycle % XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 86 Symbol Parameter Condition 44k 1MHz crystal, CL=20pF 67k 2MHz crystal, CL=20pF 67k 2MHz crystal 82k 8MHz crystal 1500 9MHz crystal 1500 8MHz crystal 2700 9MHz crystal 2700 12MHz crystal 1000 9MHz crystal 3600 12MHz crystal 1300 16MHz crystal 590 9MHz crystal 390 12MHz crystal 50 16MHz crystal 10 9MHz crystal 1500 12MHz crystal 650 16MHz crystal 270 XOSCPWR=1, FRQRANGE=2, CL=20pF 12MHz crystal 1000 16MHz crystal 440 XOSCPWR=1, FRQRANGE=3, CL=20pF 12MHz crystal 1300 16MHz crystal 590 XOSCPWR=0, FRQRANGE=0 0.4MHz resonator, CL=100pF 1.0 XOSCPWR=0, FRQRANGE=1 2MHz crystal, CL=20pF 2.6 XOSCPWR=0, FRQRANGE=2 8MHz crystal, CL=20pF 0.8 XOSCPWR=0, FRQRANGE=3 12MHz crystal, CL=20pF 1.0 XOSCPWR=1, FRQRANGE=3 16MHz crystal, CL=20pF 1.4 XOSCPWR=0, FRQRANGE=1, CL=20pF XOSCPWR=0, FRQRANGE=2, CL=20pF Negative impedance (1) XOSCPWR=0, FRQRANGE=3, CL=20pF XOSCPWR=1, FRQRANGE=0, CL=20pF XOSCPWR=1, FRQRANGE=1, CL=20pF Start-up time ESR Typ. 0.4MHz resonator, CL=100pF XOSCPWR=0, FRQRANGE=0 RQ Min. SF = Safety factor Max. Units Ω ms min(RQ)/SF XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 kΩ 87 Symbol Parameter CXTAL1 Parasitic capacitance 5.9 CXTAL2 Parasitic capacitance 8.3 Parasitic capacitance load 3.5 CLOAD Note: 1. Condition Min. Typ. Max. Units pF Numbers for negative impedance are not tested but guaranteed from design and characterization. 36.14.8 External 32.768kHz crystal oscillator and TOSC characteristics Table 36-28. External 32.768kHz crystal oscillator and TOSC characteristics. Symbol Parameter ESR/R1 Recommended crystal equivalent series resistance (ESR) CIN_TOSC Condition Min Crystal load capacitance 6.5pF 60 Crystal load capacitance 9.0pF 35 Crystal load capacitance 12.0pF 28 Normal mode 3.5 Low power mode 3.5 Units kΩ pF capacitance load matched to crystal specification 3 Long term Jitter (SIT) 1. Max Input capacitance between TOSC pins Recommended Safety factor Note: Typ 0 % See Figure 36-4 on page 88 for definition Figure 36-4. TOSC input capacitance CL1 TOSC1 CL2 Device internal External TOSC2 The input capacitance between the TOSC pins is CL1 + CL2 in series as seen from the crystal when oscillating without external capacitors. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 88 36.15 SPI characteristics Figure 36-5. SPI interface requirements in master mode SS tSCKR tMOS tSCKF SCK (CPOL = 0) tSCKW SCK (CPOL = 1) tSCKW tMIS MISO (Data Input) tMIH tSCK MSB LSB tMOH tMOH MOSI (Data Output) MSB LSB Figure 36-6. SPI timing requirements in slave mode SS tSSS tSCKR tSCKF tSSH SCK (CPOL = 0) tSSCKW SCK (CPOL = 1) tSSCKW tSIS MOSI (Data Input) tSIH MSB tSOSSS MISO (Data Output) tSSCK LSB tSOS MSB tSOSSH LSB XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 89 Table 36-29. SPI Timing characteristics and requirements. Symbol Parameter Condition Min Typ Max tSCK SCK Period Master (See Table 21-4 in XMEGA B Manual) tSCKW SCK high/low width Master 0.5*SCK tSCKR SCK Rise time Master 2.7 tSCKF SCK Fall time Master 2.7 tMIS MISO setup to SCK Master 11 tMIH MISO hold after SCK Master 0 tMOS MOSI setup SCK Master 0.5*SCK tMOH MOSI hold after SCK Master 1 tSSCK Slave SCK Period Slave 4*t ClkPER tSSCKW SCK high/low width Slave 2*t ClkPER tSSCKR SCK Rise time Slave 1600 tSSCKF SCK Fall time Slave 1600 tSIS MOSI setup to SCK Slave 3 tSIH MOSI hold after SCK Slave t ClkPER tSSS SS setup to SCK Slave 21 tSSH SS hold after SCK Slave 20 tSOS MISO setup SCK Slave 8 tSOH MISO hold after SCK Slave 13 tSOSS MISO setup after SS low Slave 11 tSOSH MISO hold after SS high Slave 8 Units ns XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 90 36.16 Two-Wire Interface Characteristics Table 2-1 describes the requirements for devices connected to the Two Wire Serial Bus. The XMEGA Two-Wire Interface meets or exceeds these requirements under the noted conditions. Timing symbols refer to Figure 36-7. Figure 36-7. Two-Wire Interface Bus Timing tof tHIGH tLOW tr SCL tSU;STA tHD;DAT tSU;STO tSU;DAT tHD;STA SDA tBUF Table 36-30. Two wire serial bus characteristics. Symbol Parameter Condition Min Typ Max Units VIH Input High Voltage 0.7*VCC VCC+0.5 VIL Input Low Voltage -0.5 0.3*VCC Vhys Hysteresis of Schmitt Trigger Inputs 0.05VCC(1) 0 VOL Output Low Voltage 0 0.4 20+0.1Cb(1)(2) 300 20+0.1Cb(1)(2) 250 0 50 -10 10 µA 10 pF 400 kHz 300ns --------------Cb Ω tr Rise Time for both SDA and SCL tof Output Fall Time from VIHmin to VILmax tSP Spikes Suppressed by Input Filter II Input Current for each I/O Pin CI Capacitance for each I/O Pin fSCL SCL Clock Frequency RP Value of Pull-up resistor tHD;STA 3mA, sink current 10pF < Cb < 400pF(2) 0.1VCC < VI < 0.9VCC fPER(3)>max(10fSCL, 250kHz) fSCL ≤ 100kHz fSCL > 100kHz Hold Time (repeated) START condition tLOW Low Period of SCL Clock tHIGH High Period of SCL Clock tSU;STA Set-up time for a repeated START condition tHD;DAT Data hold time 0 V CC – 0.4V ---------------------------3mA 100ns --------------Cb fSCL ≤ 100kHz 4.0 fSCL > 100kHz 0.6 fSCL ≤ 100kHz 4.7 fSCL > 100kHz 1.3 fSCL ≤ 100kHz 4.0 fSCL > 100kHz 0.6 fSCL ≤ 100kHz 4.7 fSCL > 100kHz 0.6 fSCL ≤ 100kHz 0 3.5 fSCL > 100kHz 0 0.9 V ns µs µs µs µs µs XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 91 Symbol Parameter tSU;DAT Data setup time tSU;STO Setup time for STOP condition Bus free time between a STOP and START condition tBUF Notes: 1. 2. 3. Condition Min fSCL ≤ 100kHz 250 fSCL > 100kHz 100 fSCL ≤ 100kHz 4.0 fSCL > 100kHz 0.6 fSCL ≤ 100kHz 4.7 fSCL > 100kHz 1.3 Typ Max Units ns µs µs Required only for fSCL > 100kHz Cb = Capacitance of one bus line in pF fPER = Peripheral clock frequency XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 92 37. Typical Characteristics 37.1 Current consumption 37.1.1 Active mode supply current Figure 37-1. Active supply current vs. frequency. fSYS = 0 - 1MHz external clock, T = 25°C. 1000 3.6V 900 800 3.0V ICC [µA] 700 2.7V 600 500 2.2V 400 1.8V 1.6V 300 200 100 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Frequency [MHz] Figure 37-2. Active supply current vs. frequency. fSYS = 1 - 32MHz external clock, T = 25°C. 14 3.6V 12 Icc[mA] 10 3.0V 2.7V 8 6 2.2V 4 1.8V 2 0 0 4 8 12 16 20 24 28 32 Frequency [MHz] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 93 Figure 37-3. Active mode supply current vs. VCC. fSYS = 2MHz internal oscillator. 2100 1900 -40°C 25°C 85°C ICC [uA] 1700 1500 1300 1100 900 700 500 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-4. Active mode supply current vs. VCC. fSYS = 32MHz internal oscillator. 14000 13250 -40 °C 25 °C 85 °C Icc[µA] 12500 11750 11000 10250 9500 8750 8000 2.7 2.8 2.9 3 3.1 3.2 3.3 3.4 3.5 3.6 Vcc [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 94 37.1.2 Idle mode supply current Figure 37-5. Idle mode supply current vs. frequency. fSYS = 0 - 1MHz external clock, T = 25°C. 180 3.6V 160 Icc[µA] 140 3.0V 120 2.7V 100 2.2V 80 1.8V 1.6V 60 40 20 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Frequency [MHz] Figure 37-6. Idle mode supply current vs. frequency. fSYS = 1 - 32MHz external clock, T = 25°C. 6 3.6V 5 3.0V Icc[mA] 4 2.7V 3 2 2.2V 1 1.8V 0 0 4 8 12 16 20 24 28 32 Frequency [MHz] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 95 Figure 37-7. Idle mode supply current vs. VCC. fSYS = 32.768kHz internal oscillator. 34.5 -40°C 33.75 85°C 33 Icc[µA] 32.25 25°C 31.5 30.75 30 29.25 28.5 27.75 27 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-8. Idle mode supply current vs. VCC. fSYS = 2MHz internal oscillator. Icc [µA] 450 425 -40°C 25°C 85°C 400 375 350 325 300 275 250 225 200 175 150 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 96 Figure 37-9. Idle mode current vs. VCC. fSYS = 32MHz internal oscillator. 5800 -40 °C 25 °C 85 °C 5300 4800 ICC [µA] 4300 3800 3300 2800 2300 1800 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] 37.1.3 Power-down mode supply current Figure 37-10.Power-down mode supply current vs. Temperature. All functions disabled. 2.5 3.0 V 2.7 V 2.2 V 1.8 V 2.25 2 Icc [µA] 1.75 1.5 1.25 1 0.75 0.5 0.25 0 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 97 Figure 37-11.Power-down mode supply current vs. Temperature. Watchdog and sampled BOD enabled. 3.5 3.0 V 2.7 V 2.2 V 1.8 V 3.25 3 Icc[µA] 2.75 2.5 2.25 2 1.75 1.5 1.25 1 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] 37.2 I/O Pin Characteristics 37.2.1 Pull-up Figure 37-12.I/O pin pull-up resistor current vs. input voltage. VCC = 1.8V. 80 70 IPIN [µA] 60 50 40 30 20 85°C 25°C -40°C 10 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 VPIN [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 98 Figure 37-13.I/O pin pull-up resistor current vs. input voltage. VCC = 3.0V. 140 120 IPIN [µA] 100 80 60 40 85°C 25°C -40°C 20 0 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 2.4 2.7 3 VPIN [V] Figure 37-14.I/O pin pull-up resistor current vs. pin voltage. VCC = 3.3V. 160 140 IPIN [µA] 120 100 80 60 40 85°C 25°C -40°C 20 0 0 0.35 0.7 1.05 1.4 1.75 2.1 2.45 2.8 3.15 3.5 VPIN [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 99 37.2.2 Output Voltage vs. Sink/Source Current Figure 37-15.I/O pin output voltage vs. source current. VCC = 1.8V. 1.3 -40°C 25°C 85°C 1.2 VPIN [V] 1.1 1 0.9 0.8 0.7 0.6 -6 -5.4 -4.8 -4.2 -3.6 -3 -2.4 -1.8 -1.2 -0.6 0 IPIN [mA] Figure 37-16.I/O pin output voltage vs. source current. VCC = 3.0V. 3.1 -40°C 25°C 85°C 2.9 2.7 VPIN[V] 2.5 2.3 2.1 1.9 1.7 1.5 1.3 -20 -18 -16 -14 -12 -10 -8 -6 -4 -2 0 IPIN [mA] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 100 Figure 37-17.I/O pin output voltage vs. source current. VCC = 3.3V. 2.5 85°C 25°C -40°C 2.25 VPIN [V] 2 1.75 1.5 1.25 1 -20 -18 -16 -14 -12 -10 -8 -6 -4 -2 0 IPIN [mA] Figure 37-18.I/O pin output voltage vs. sink current. VCC = 1.8V. 1.8 85°C 1.6 1.4 VPIN [V] 1.2 1 0.8 25°C 0.6 -40°C 0.4 0.2 0 0 2 4 6 8 10 12 14 16 18 20 IPIN [mA] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 101 Figure 37-19.I/O pin output voltage vs. sink current. VCC = 3.0V. 0.6 85°C 0.54 25°C 0.48 -40°C VPIN [V] 0.42 0.36 0.3 0.24 0.18 0.12 0.06 0 0 2 4 6 8 10 12 14 16 18 20 IPIN [mA] Figure 37-20.I/O pin output voltage vs. sink current. VCC = 3.3V. 0.4 85°C 0.35 25°C -40°C VPIN [V] 0.3 0.25 0.2 0.15 0.1 0.05 0 0 2 4 6 8 10 12 14 16 18 20 IPIN [mA] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 102 37.2.3 Thresholds and Hysteresis Figure 37-21.I/O pin input threshold voltage vs. VCC. VIH I/O pin read as “1”. 1.8 -40°C 25°C 85°C VTHRESHOLD [V] 1.6 1.4 1.2 1 0.8 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-22.I/O pin input threshold voltage vs. VCC. VIL I/O pin read as “0”. 1.7 -40°C 25°C 85°C VTRESHOLD [V] 1.5 1.3 1.1 0.9 0.7 0.5 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 103 Figure 37-23.I/O pin input hysteresis vs. VCC. 350 VHYSTERESIS [mV] 300 250 200 150 -40°C 25°C 85°C 100 1.6 1.8 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 VCC [V] ADC Characteristics Figure 37-24.ADC INL vs. VREF. Differential signed mode, VCC = 3.6V, external reference. 2.5 2.3 2.1 1.9 INL [LSB] 37.3 1.7 1.5 1.3 -40ºC 85ºC 25ºC 1.1 0.9 0.7 0.5 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 104 Figure 37-25.ADC INL vs. VREF. SE Unsigned mode, VCC = 3.6V, external reference. 3.5 3.3 INL [LSB] 3.1 2.9 2.7 2.5 2.3 2.1 1.9 1.7 1.5 1.3 1.1 0.9 85ºC 25ºC -40ºC 0.7 0.5 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] Figure 37-26.ADC DNL vs. VREF. Differential signed mode, VCC = 3.6V, external reference. 2.1 2 1.9 1.8 DNL [LSB] 1.7 1.6 1.5 1.4 1.3 1.2 -40ºC 1.1 1 85ºC 0.9 25ºC 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 105 Figure 37-27.ADC DNL vs. VREF. SE Unsigned mode, VCC = 3.6V, external reference. 3.0 2.8 2.6 DNL [LSB] 2.4 2.2 2.0 1.8 1.6 1.4 -40ºC 25ºC 85ºC 1.2 1.0 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] Figure 37-28.ADC Offset vs. VCC. SE Unsigned mode, VREF = 1.0V, external reference. 14 85ºC 25ºC -40ºC Offset [mV] 12 10 8 6 4 2 0 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 106 Figure 37-29.ADC Offset vs. VREF. SE Unsigned mode, VCC = 3.6V, external reference. 19 85ºC 18 17 25ºC Offset [mV] 16 15 14 -40ºC 13 12 11 10 9 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] Figure 37-30.ADC Offset vs. VREF. Differential signed mode, VCC = 3.6V, external reference. 10.0 9.0 Offset [mV] 8.0 85ºC 25ºC 7.0 -40ºC 6.0 5.0 4.0 3.0 2.0 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREFV] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 107 Figure 37-31.ADC Offset vs. VCC. Differential signed mode, VREF = 1.0V, external reference. -3 -3.5 -4 Offset [mV] -4.5 -5 -5.5 -6 85ºC -6.5 25ºC -7 -7.5 -40ºC -8 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-32.ADC Gain Error vs. VREF. Differential signed mode, external reference. -1.0 Gain Error [mV] -3.0 -5.0 -7.0 -9.0 -40ºC 25ºC 85ºC -11.0 -13.0 -15.0 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 108 Figure 37-33.ADC Gain Error vs. VREF. SE Unsigned mode, external reference. 0.0 -1.0 Gain Error [mV] -2.0 -3.0 -40ºC -4.0 -5.0 -6.0 25ºC -7.0 -8.0 85ºC -9.0 -10.0 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 VREF [V] Figure 37-34.ADC Gain Error vs. VCC. Differential signed mode, external reference. -3.0 -3.5 Gain Error [mV] -4.0 -4.5 -5.0 -5.5 25ºC -6.0 -40ºC -6.5 -7.0 85ºC -7.5 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 109 Figure 37-35.ADC Gain Error vs. VCC. SE Unsigned mode, external reference. 0 -1 Gain Error [mV] -2 -3 -4 -5 -40ºC -6 25ºC 85ºC -7 -8 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-36.ADC Gain Error vs. Temperature. Differential signed mode, external reference. -5.0 -6.0 1.0V Vref Gain Error [mV] -7.0 1.5V Vref -8.0 -9.0 2.0V Vref -10.0 2.5V Vref -11.0 3.0V Vref -12.0 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [ºC] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 110 Figure 37-37.ADC Gain Error vs. Temperature. SE Unsigned mode, VCC = 3.6V, external reference. -40 -3.0 -30 -20 -10 0 10 20 30 40 50 60 70 80 Gain Error [mV] -4.0 -5.0 1.0V Vref -6.0 1.5V Vref -7.0 2.0V Vref -8.0 2.5V Vref 3.0V Vref -9.0 Temperature [ºC] Analog Comparator Characteristics Figure 37-38.Analog comparator hysteresis vs. VCC. High-speed mode, small hysteresis. 16 15 14 VHyst [mV] 37.4 85ºC 13 12 11 25ºC 10 9 -40ºC 8 7 6 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 111 Figure 37-39.Analog comparator hysteresis vs. VCC. High-speed mode, large hysteresis. 32 85°C VHyst [mV] 30 28 25°C 26 24 -40°C 22 20 18 16 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-40.Analog comparator propagation delay vs. VCC. High speed mode. 34 32 tPD[ns] 30 28 26 24 22 20 85°C 18 25°C - 40°C 16 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 Vcc [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 112 Figure 37-41.Analog comparator current consumption vs. VCC. High-speed mode. Module Consumption [µA] 290 270 85°C 250 25°C -40°C 230 210 190 170 150 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCM [V] Figure 37-42.Analog comparator voltage scaler vs. SCALEFAC. T = 25°C. 4 3.6V 3.3V 3.0V 2.7V 3.5 VSCALE [V] 3 2.5 2 1.8V 1.6V 1.5 1 0.5 0 0 7 14 21 28 35 42 49 56 63 SCALEFAC XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 113 Figure 37-43.Analog comparator offset voltage vs. Common mode voltage. High-speed mode. 20 -40°C V OFFSET [mV] 18 16 14 25°C 12 85°C 10 8 6 4 2 0 0.5 0.7 0.9 1.1 1.3 1.5 1.7 1.9 2.1 2.3 2.5 2.7 2.9 3.1 3.3 3.5 VCC [V] Figure 37-44.Analog comparator current source vs. Calibration. VCC = 3.0V, double mode. 12 ICURRENTSOURCE [µA] 11.5 11 10.5 10 9.5 9 -40°C 25°C 85°C 8.5 8 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 CURRCALIBA[3..0] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 114 37.5 Internal 1.0V reference Characteristics Figure 37-45.ADC/DAC Internal 1.0V reference vs. temperature. 1.012 Bandgap Voltage [V] 1.01 1.008 1.006 1.004 1.002 1.8V 1 2.7V 3.0V 0.998 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] BOD Characteristics Figure 37-46.BOD current consumption vs. VCC. Continuous mode, BOD level = 1.6V. 150 85°C 140 25°C IccGlobal [µA] 37.6 130 -40°C 120 110 100 90 80 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 115 Figure 37-47.BOD current consumption vs. VCC. Sampled mode, BOD level = 1.6V. 5 4.5 85°C IccGlobal [µA] 4 3.5 3 2.5 2 1.5 25°C -40°C 1 0.5 0 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-48.BOD thresholds vs. temperature. BOD level = 1.6V. 1.626 1.624 1.622 VBOT [V] 1.62 1.618 Rising Vcc 1.616 1.614 1.612 1.61 1.608 Falling Vcc 1.606 1.604 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 116 Figure 37-49.BOD thresholds vs. temperature. BOD level = 2.2V. 2.35 2.345 2.34 Rising Vcc VBOT [V] 2.335 2.33 2.325 2.32 2.315 Falling Vcc 2.31 2.305 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] Figure 37-50.BOD thresholds vs. temperature. BOD level = 3.0V. 3.07 3.06 Rising Vcc VBOT [V] 3.05 3.04 3.03 3.02 Falling Vcc 3.01 3 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 117 External Reset Characteristics Figure 37-51.Minimum Reset pin pulse width vs. VCC. 140 130 tRST [ns] 120 110 100 85°C 90 25°C -40°C 80 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-52.Reset pin pull-up resistor current vs. reset pin voltage. VCC = 1.8V. 70 60 50 IRESET [µA] 37.7 40 30 20 85°C 25°C -40°C 10 0 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 VRESET [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 118 Figure 37-53.Reset pin pull-up resistor current vs. reset pin voltage. VCC = 3.0V. 140 120 IRESET [µA] 100 80 60 40 85°C 25°C -40°C 20 0 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 2.4 2.7 3 VRESET [V] Figure 37-54.Reset pin pull-up resistor current vs. reset pin voltage. VCC = 3.3V. 140 120 IRESET [µA] 100 80 60 40 85°C 25°C -40°C 20 0 0 0.3 0.6 0.9 1.2 1.5 1.8 2.1 2.4 2.7 3 3.3 VRESET [V] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 119 Figure 37-55.Reset pin input threshold voltage vs. VCC. VIH - Reset pin read as “1”. 1.8 -40°C 25°C 85°C VTHRESHOLD [V] 1.6 1.4 1.2 1 0.8 0.6 0.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] Figure 37-56.Reset pin input threshold voltage vs. VCC. VIL - Reset pin read as “0”. 1.8 -40 °C 25 °C 85 °C VTHRESHOLD [V] 1.6 1.4 1.2 1 0.8 0.6 0.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 120 37.8 Oscillator Characteristics 37.8.1 32.768kHz Internal Oscillator Figure 37-57.32.768kHz internal oscillator frequency vs. temperature. 32.83 1.8V 1.6V 2.2V 3.6V 2.7V 3.0V 32.82 Frequency [kHz] 32.81 32.8 32.79 32.78 32.77 32.76 32.75 32.74 32.73 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] Figure 37-58.32.768kHz ULP internal oscillator frequency vs. temperature. 36000 35500 Frequency [Hz] 35000 34500 34000 33500 3.6V 3.0V 2.7V 1.8V 1.6V 33000 32500 32000 31500 31000 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 121 Figure 37-59.32.768kHz internal oscillator calibration step size. T = -40°C to 85°C, VCC = 3V. 0.01 85°C 25°C -40°C Step size: f [kHz] 0.005 0.000 -0.005 -0.01 -0.015 -0.02 -0.025 -0.03 -0.035 -0.04 -0.045 0 32 64 96 128 160 192 224 256 RC32KCAL[7..0] Figure 37-60.32.768kHz internal oscillator frequency vs. calibration value. VCC = 3.0V, T = 25°C. 55 Frequency [kHz] 50 3.0 V 45 40 35 30 25 20 0 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 RC32KCAL[7..0] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 122 37.8.2 2MHz Internal Oscillator Figure 37-61.2MHz internal oscillator frequency vs. temperature. DFLL disabled. 2.16 Frequency [MHz] 2.14 2.12 2.1 2.08 2.06 2.04 2.02 3.6 V 3.0 V 2.7 V 2.2 V 1.8 V 1.6 V 2.00 1.98 1.96 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] Figure 37-62.2MHz internal oscillator frequency vs. temperature. DFLL enabled. 2.006 1.6 V 2.2 V Frequency [MHz] 2.005 1.8 V 2.7 V 3.0 V 3.6 V 2.004 2.003 2.002 2.001 2.000 1.999 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 123 Figure 37-63.2MHz internal oscillator CALA calibration step size. VCC = 3V. -0.14 -0.15 85 °C -0.16 25 °C Step Error [%] -0.17 -40 °C -0.18 -0.19 -0.2 -0.21 -0.22 -0.23 -0.24 -0.25 -0.26 -0.27 0 10 20 30 40 50 60 70 80 90 100 110 120 130 DFLLRC2MCALA Figure 37-64.2MHz internal oscillator CALB calibration step size. VCC = 3V, DFLL enabled. -0.155 -0.165 85°C Step Error [%] -0.175 25°C -0.185 -40°C -0.195 -0.205 -0.215 -0.225 -0.235 -0.245 -0.255 0 7 14 21 28 35 42 49 56 63 DFLLRC2MCALB XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 124 37.8.3 32MHz Internal Oscillator Figure 37-65.32MHz internal oscillator frequency vs. temperature. DFLL disabled. 35.5 Frequency [MHz] 35 34.5 34 33.5 33 3.6V 3.0V 2.7V 2.2V 1.8V 1.6V 32.5 32 31.5 31 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] Figure 37-66.32MHz internal oscillator frequency vs. temperature. DFLL enabled, from the 32.768kHz internal oscillator. 32.08 1.8V 3.3V 2.2V Frequency [MHz] 32.06 32.04 1.6V 2.7V 32.02 3.0V 32 31.98 31.96 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 125 Figure 37-67.32MHz internal oscillator CALA calibration step size. VCC = 3.0V. -0.1 -0.12 25°C Step Error [%] -0.14 85°C -0.16 -40°C -0.18 -0.2 -0.22 -0.24 -0.26 -0.28 -0.3 0 10 20 30 40 50 60 70 80 90 100 110 120 130 DFLLRC32MCALA Figure 37-68. 32MHz internal oscillator CALB calibration step size. VCC = 3.0V, CALA = mid value. Step size: Step Error [%] 0.60 0.50 0.40 0.30 0.20 -40°C 0.10 0.00 -0.10 25°C -0.20 85°C -0.30 -0.40 0 8 16 24 32 40 48 56 64 DFLLRC32MCALB XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 126 Figure 37-69. 32MHz internal oscillator frequency vs. CALA calibration value. VCC = 3.0V. 56 Frequency [MHz] -40°C 54 52 25°C 50 85°C 48 46 44 42 40 38 36 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120 128 DFLLRC32MCALA Figure 37-70.32MHz internal oscillator frequency vs. CALB calibration value. VCC = 3.0V, DFLL enabled. 70 -40°C 25°C 85°C Frequency [MHz] 65 60 55 50 45 40 35 30 25 20 0 7 14 21 28 35 42 49 56 63 DFLLRC32MCALB XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 127 37.8.4 32MHz internal oscillator calibrated to 48MHz Figure 37-71. 48MHz internal oscillator frequency vs. temperature. DFLL disabled. 53 Frequency [MHz] 52 51 50 49 3.6V 3.0V 2.7V 2.2V 1.8V 1.6V 48 47 46 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] Figure 37-72. 48MHz internal oscillator frequency vs. temperature. DFLL enabled, from the 32.768kHz internal oscillator. 48.12 1.8V 2.2V 3.6V 3.0V 1.6V 2.7V Frequency [MHz] 48.1 48.08 48.06 48.04 48.02 48 47.98 47.96 47.94 47.92 -45 -35 -25 -15 -5 5 15 25 35 45 55 65 75 85 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 128 Figure 37-73. 32MHz internal oscillator CALA calibration step size. Using 48MHz calibration value from signature row, VCC = 3.0V. Step size: Step Error [%] 0.80 0.60 0.40 0.20 -40°C 85°C 0.00 -0.20 25°C -0.40 -0.60 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120 128 CALA Figure 37-74. 48MHz internal oscillator frequency vs. CALA calibration value. VCC = 3.0V. 60 -40°C Frequency [MHz] 58 25°C 56 54 85°C 52 50 48 46 44 42 40 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120 128 CALA XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 129 PDI characteristics Figure 37-75.Maximum PDI frequency vs. VCC. 20.5 20.0 25°C 19.5 fmin [kHz] 37.9 19.0 -40°C 18.5 18.0 85°C 17.5 17.0 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 VCC [V] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 130 37.10 LCD Characteristics Figure 37-76.ICC vs. Frame Rate 32Hz Low Power Frame Rate from 32.768KHz TOSC, w/ and w/o pixel load, VCC = 1.8V, T = 25°C 11 22pF All Pixels ON 10 ICC [µA] 9 8 22pF All Pixels OFF 7 6 5 0pF All Pixels ON 4 0pF All Pixels OFF 3 32 64 96 128 160 192 224 256 Frame Rate[Hz] Figure 37-77.ICC vs. Frame Rate 32Hz Low Power Frame Rate from 32.768KHz TOSC, w/ and w/o pixel load, VCC = 3.0V, T = 25°C 13 12 22pF All Pixels ON 11 ICC [µA] 10 9 22pF 100 Pixels ON 8 7 22pF All Pixels OFF 6 0pF All Pixels ON 5 0pF 100 Pixels ON 4 0pF All Pixels OFF 3 32 64 96 128 160 192 224 256 Frame Rate[Hz] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 131 Figure 37-78.ICC vs. Frame Rate 0pF load 15 85 °C 13 ICC [µA] 25 °C 11 -40 °C 9 7 5 3 32 64 96 128 160 192 224 256 Frame Rate[Hz] Figure 37-79.ICC vs. Contrast 32Hz Low Power Frame Rate from 32.768KHz TOSC, w/o pixel load, VCC = 1.8V 7.5 7 6.5 ICC [µA] 85°C 6 5.5 5 25°C -40°C 4.5 4 3.5 3 -32 -23 -14 -5 4 13 22 31 Contrast XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 132 Figure 37-80.ICC vs. Contrast 32Hz Low Power Frame Rate from 32.768KHz TOSC, w/o pixel load, VCC = 3.0V 7.5 7 85°C ICC [µA] 6.5 6 5.5 5 25°C 4.5 -40°C 4 3.5 3 -32 -23 -14 -5 4 13 22 31 Contrast Figure 37-81.Psave LCD LP 32Hz vs. Temperature IccModuleConsumption [µA] 3.2 3 2.8 2.6 3.6V 2.4 3.0V 2.2V 1.8V 1.6V 2.2 2 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 133 Figure 37-82.Psave LCD LP 32Hz vs. Temperature RTC, WDT, BOD sampled IccModuleConsumption [µA] 3.6 3.4 3.2 3.0 2.8 3.6V 2.6 3.0V 2.2V 1.8V 1.6V 2.4 2.2 2.0 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] Figure 37-83.Psave vs. Temperature RTC, WDT, BOD sampled. IccModuleConsumption [µA] 0.3 0.275 3.6V 0.25 0.225 3.0V 0.2 2.2V 0.175 0.15 -40 1.8V 1.6V -30 -20 -10 0 10 20 30 40 50 60 70 80 Temperature [°C] XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 134 38. Errata 38.1 ATxmega64B3, ATxmega128B3 38.1.1 Rev. C z Device revision number z AWeX fault protection restore is not done correct in Pattern Generation Mode 1. Device revision number is unchanged between rev. B and rev. C 2. AWeX fault protection restore is not done correctly in Pattern Generation Mode When a fault is detected the OUTOVEN register is cleared, and when fault condition is cleared, OUTOVEN is restored according to the corresponding enabled DTI channels. For Common Waveform Channel Mode (CWCM), this has no effect as the OUTOVEN is correct after restoring from fault. For Pattern Generation Mode (PGM), OUTOVEN should instead have been restored according to the DTILSBUF register. Problem fix/Workaround For CWCM no workaround is required. For PGM in latched mode, disable the DTI channels before returning from the fault condition. Then, set correct OUTOVEN value and enable the DTI channels, before the direction (DIR) register is written to enable the correct outputs again. For PGM in cycle-by-cycle mode there is no workaround. 38.1.2 Rev. B Not sampled. 38.1.3 Rev. A z Power down consumption z ADC conversion error when x0.5 gain is used 1. Power Down consumption After reset, when system enters in power down or when ADC is disabled, extra power consumption is drawn. Problem fix/Workaround Set ADC to a configuration different from differential mode. 2. ADC conversion error when x0.5 gain is used When the gain is set to x0.5, the conversion result is similar to the gain setting x1. Problem fix/Workaround There is no workaround. 3. Disabling of USART transmitter does not automatically set the TxD pin direction to input If the USART transmitter is idle with no frames to transmit, setting TXEN to zero will not automatically set the TxD pin direction to input. Problem fix/Workaround The TxD pin direction can be set to input using the Port DIR register. Be advised that setting the Port DIR register to input will be immediate. Ongoing transmissions will be truncated. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 135 39. Datasheet Revision History Please note that the referring page numbers in this section are referred to this document. The referring revision in this section are referring to the document revision. 39.1 39.2 8074E – 07/2014 1. Changed Vcc to AVcc in Section 29. “ADC – 12-bit Analog to Digital Converter” on page 50 and Section 30. “AC – Analog Comparator” on page 52. 2. Added information on USART transmitter in Section 38. “Errata” on page 135. 3. Changed unit notification for tSU;DAT to ns in Table 36-30 on page 91. 8074D – 08/2013 1. 39.3 39.4 64-pad DRQFN package option added for ATxmega128B3: z “Ordering Information” on page 2: New ordering codes for ATxmega128B3 added. z “Pinout – DRQFN” on page 5: Pinout figure and table added. z “Packaging information” : “64P2” on page 70 added. 8074C – 02/2013 1. Updated “Ordering Information” on page 2: Added -AUR option. 2. Updated “Packaging information” : Added package drawing for “64M2” on page 69 3. Updated Table 32-4 on page 58: PDI and RESET pins updated. 4. Updated “External clock with prescaler for system clock” Table 36-26 on page 86 5. Added ESR parameter to the “External 16MHz crystal oscillator and XOSC characteristics.” Table 36-27 on page 86. 6. Updated “Errata” , “Rev. C” on page 132: “JTAG revision” replaced by “Device revision number” 7. Updated template. 8074B – 02/2012 1. Updated the Table 7-2 on page 17. The page size (words) for ATxmega128B3 changed from 256 to 128. 2. Updated all “Electrical Characteristics” on page 71. 3. Updated all “Typical Characteristics” on page 93. 4. Updated “Errata” on page 135. XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 136 39.5 8074A – 10/2011 1. Initial revision. XMEGA B3 [DATASHEET] Atmel-8074E-AVR-ATxmega 128B3 - 64B3_Datasheet–09/2014 137 XMEGA B3 [DATASHEET] Atmel-8074E–AVR-ATxmega 128B3 - 64B3_datasheet–09/2014 138 Table of Contents Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1. Ordering Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Pinout/Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1 2.2 3. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1 4. Pinout – TQFP/QFN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Pinout – DRQFN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 4.1 Recommended reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 5. Capacitive touch sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6. AVR CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 7. Memories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.1 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 7.10 7.11 7.12 7.13 8. Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Flash Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Fuses and Lock bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Data Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 EEPROM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 I/O Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Data Memory and Bus Arbitration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Memory Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Device ID and Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 JTAG Disable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 I/O Memory Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Flash and EEPROM Page Size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 DMAC – Direct Memory Access Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 8.1 8.2 9. Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Architectural Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 ALU - Arithmetic Logic Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Program Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Status Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Stack and Stack Pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Event System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 9.1 9.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 10. System Clock and Clock options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 10.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 XMEGA B1 [DATASHEET] Atmel-8330G-AVR-ATxmega64B1-128B1_Datasheet-09/2014 i 10.2 10.3 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Clock Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 11. Power Management and Sleep Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 11.1 11.2 11.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Sleep Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 12. System Control and Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 12.1 12.2 12.3 12.4 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Reset Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Reset Sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 13. WDT – Watchdog Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 13.1 13.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 14. Interrupts and Programmable Multilevel Interrupt Controller . . . . . . . . . . . . . . . . 29 14.1 14.2 14.3 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Interrupt vectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 15. I/O Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 15.1 15.2 15.3 15.4 15.5 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Output Driver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Input sensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Alternate Port Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 16. T/C – 16-bit Timer/Counter Type 0 and 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 16.1 16.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 17. TC2 –16-bit Timer/Counter Type 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 17.1 17.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 18. AWeX – Advanced Waveform Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 18.1 18.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 19. Hi-Res – High Resolution Extension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 19.1 19.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 20. RTC – 16-bit Real-Time Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 20.1 20.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 21. USB – Universal Serial Bus Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 21.1 21.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 XMEGA B1 [DATASHEET] Atmel-8330G-AVR-ATxmega64B1-128B1_Datasheet-09/2014 ii 22. TWI – Two Wire Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 22.1 22.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 23. SPI – Serial Peripheral Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 23.1 23.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 24. USART . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 24.1 24.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 25. IRCOM – IR Communication Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 25.1 25.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 26. AES and DES Crypto Engine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 26.1 26.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 27. CRC – Cyclic Redundancy Check Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 27.1 27.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 28. LCD - Liquid Crystal Display Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 28.1 28.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 29. ADC – 12-bit Analog to Digital Converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 29.1 29.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 30. AC – Analog Comparator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 30.1 30.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 31. Programming and Debugging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 31.1 31.2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 32. Pinout and Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 32.1 32.2 Alternate Pin Function Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Alternate Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 33. Peripheral Module Address Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 34. Instruction Set Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 35. Packaging information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 35.1 35.2 35.3 64A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 64M2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 64P2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 36. Electrical Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 XMEGA B1 [DATASHEET] Atmel-8330G-AVR-ATxmega64B1-128B1_Datasheet-09/2014 iii 36.1 36.2 36.3 36.4 36.5 36.6 36.7 36.8 36.9 36.10 36.11 36.12 36.13 36.14 36.15 36.16 Absolute Maximum Ratings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 General Operating Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 DC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Wake-up time from sleep modes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 I/O Pin Characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Liquid Crystal Display Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 ADC characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Analog Comparator Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Bandgap and Internal 1.0V Reference Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Brownout Detection Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 External Reset Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Power-on Reset Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Flash and EEPROM Memory Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Clock and Oscillator Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 SPI characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Two-Wire Interface Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 37. Typical Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 37.1 37.2 37.3 37.4 37.5 37.6 37.7 37.8 37.9 37.10 Current consumption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 I/O Pin Characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 ADC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Analog Comparator Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Internal 1.0V reference Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 BOD Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 External Reset Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Oscillator Characteristics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 PDI characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 LCD Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 38. Errata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 38.1 ATxmega64B3, ATxmega128B3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 39. Datasheet Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 39.1 39.2 39.3 39.4 39.5 8074E – 07/2014 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 8074D – 08/2013. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 8074C – 02/2013. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 8074B – 02/2012 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 8074A – 10/2011 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138 Table of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i XMEGA B1 [DATASHEET] Atmel-8330G-AVR-ATxmega64B1-128B1_Datasheet-09/2014 iv XMEGA B1 [DATASHEET] Atmel-8330G-AVR-ATxmega64B1-128B1_Datasheet-09/2014 v XXXXXX Atmel Corporation 1600 Technology Drive, San Jose, CA 95110 USA T: (+1)(408) 441.0311 F: (+1)(408) 436.4200 | www.atmel.com © 2014 Atmel Corporation. / Rev.: Atmel-8330F-AVR-Document-Title-or-Devices-Filename-Datasheet_09/2014. Atmel®, Atmel logo and combinations thereof, Enabling Unlimited Possibilities, and others are registered trademarks or trademarks of Atmel Corporation in U.S. and other countries. Other terms and product names may be trademarks of others. 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 THE ATMEL TERMS AND CONDITIONS OF SALES LOCATED ON THE ATMEL WEBSITE, 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 AND 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 products 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 products are not intended, authorized, or warranted for use as components in applications intended to support or sustain life. SAFETY-CRITICAL, MILITARY, AND AUTOMOTIVE APPLICATIONS DISCLAIMER: Atmel products are not designed for and will not be used in connection with any applications where the failure of such products would reasonably be expected to result in significant personal injury or death (“Safety-Critical Applications”) without an Atmel officer's specific written consent. Safety-Critical Applications include, without limitation, life support devices and systems, equipment or systems for the operation of nuclear facilities and weapons systems. Atmel products are not designed nor intended for use in military or aerospace applications or environments unless specifically designated by Atmel as military-grade. Atmel products are not designed nor intended for use in automotive applications unless specifically designated by Atmel as automotive-grade.