elektor live 2013 avr microcontroller

Propaganda
ELEKTOR live 2013 – AVR Microcontroller
AVR® Microcontroller
Andreas Riedenauer
Ineltek Mitte GmbH
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
Agenda
 Warum gerade die? Die AVR Familie kurz vorgestellt.
 Neue Bausteine. Neue Features.
 Die Spezialisten: AVRs mit Sonderausstattung.
 A-Note für A-Typen
 Randgebiete: Die Peripherie.
 42: die Antwort auf mehr als eine Frage. Hardware Design.
 13 Jahre FAE – und ein bisschen weiser. Tipps und Stolperfallen.
 Gut versteckt im Datenblatt.
 Rechenleistung statt elektrische Leistung.
 Doppelte Sicherheit – Security und Safety
 Touch me – kapazitiv.
 Werkzeugkasten: Was brauche ich für den Start?
 Was jetzt – Assembler oder C?
 Wir fangen an: ein erstes Projekt mit Studio6
 Wieso „Entwanzen“?
 Wie geht´s weiter?
 Quiz mit Preisverleihung
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
WARUM GERADE DIE?
DIE AVR FAMILIE KURZ VORGESTELLT.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR Flash Microcontrollers
32-bit AVR UC3
The highest performance AVR in the world
8/16-bit AVR XMEGA
Peripheral Performance
8-bit megaAVR
The world’s most successful MCU family
8-bit tinyAVR
Small packages, big performance
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
AVR CPU
 AVR CPU
 Harvard architecture
 True single cycle execution
 Up to 20 MIPS at 20 MHz
 32 General Purpose registers
 Xmega…
 Up to 32 MHz CPU / 128 (256) MHz T/C
 Adds DMA Controller
 Adds flexible Event System
 Adds Programmable Multi level Interrupt Controller
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
Atmel 10/16/2013
ELEKTOR live 2013 – AVR Microcontroller
Leading 8-bit Architecture
 RISC architecture with CISC instruction set
 Single cycle execution
 Harvard Architecture
 Simultaneous, fast access to registers
 Separate memories and buses for program and data
 32 Working Registers (8 bit GPR)
 16-bit Stack Pointer
 22-bit Program Counter
 Up to 20MHz System clock (Xmega: 32 MHz)
8
ELEKTOR live 2013 – AVR Microcontroller
32x8-bit General Purpose Registers
 32 Accumulator Registers with 8 bit
 3 register pairs for16-bit data pointers
 Instructions with auto increment, decrement and displacement of pointers
 Z Pointer suited for look up tables and indirect jump (Flash)
 Direct address of up to 64K
R0
R1
R2
X Pointer
Y Pointer
Z Pointer
R26
R27
R28
R29
R30
R31
XL
XH
YL
YH
ZL
ZH
9
ELEKTOR live 2013 – AVR Microcontroller
General Purpose IO Registers - GPIOR
 IO mapped variable registers
 Bit variables
 General variables
 Status Flags
 ...
 Up to three registers per device
 Fast access through SBI, CBI, SBIS, and SBIC instructions
 GPIOR within the address range 0x00 - 0x1F only
10
ELEKTOR live 2013 – AVR Microcontroller
Single Cycle Instruction Execution
Register File
Register operations
take ONE clock pulse
on the EXTERNAL clock
input
ALU
11
ELEKTOR live 2013 – AVR Microcontroller
Common for all standard AVRs
 Self-programming FLASH program memory
 In-System Programming within the whole voltage range
 Internal calibrated RC Oscillator
 Internal SRAM and EEPROM
 debugWIRE or JTAG OCD support
12
ELEKTOR live 2013 – AVR Microcontroller
AVR - Designed for C Programming
 Architecture and instruction set co-designed with C-Compiler vendor
 Compiler development project initiated before architecture and instruction set
frozen
 Compiler experts’ advice implemented in hardware
 Potential HLL bottlenecks identified and removed
 The design process resulted in
 Instruction set support for 16-bit arithmetic operations
 32 working registers which eliminate move to and from SRAM
 Single Cycle execution
13
ELEKTOR live 2013 – AVR Microcontroller
Program Memory and Data Pointers
 Stack Pointer + Three Data pointers
 One or two pointers + SP is common for 8-bit
 Code efficient memory to memory copy
 Pointer handling similar to C- language
 Auto Increment/Decrement
 Indirect with Displacement
- Efficient for accessing arrays and structs
- Efficient when placing local variables on Software Stack
C Source code
unsigned char *var1, *var2;
*var1++ = *--var2;
Assembly code
LD
ST
R16,-X
Z+,R16
14
ELEKTOR live 2013 – AVR Microcontroller
Interrupt System Features
 All AVR peripherals are handled through IO registers (SFR)
 Automatic interrupt flag clearing
 Automatic disable of other interrupts inside the interrupt routine
 Each interrupt has its own vector and interrupt handler
 Short response time
 4 Clock Cycles + RJMP to interrupt handler
Interrupt Routine 2
Interrupt Routine 1
Normal Mode
INT2 flag
INT1 flag
I flag
15
TIME
ELEKTOR live 2013 – AVR Microcontroller
NEUE BAUSTEINE.
NEUE FEATURES.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Some New Features
 Modern Attiny Controllers with Features like
 Pico Power Technology
 Hardware USART
 Self Programming
 Precisio n RC Oscillator
 HW Support für Cap. Touch / Proximity Detection
 32 Pin ATxmega E5 Series (see also Xmega chapter)
 ADC with up to16 Bit Oversampling Hardware Support
 Asynchoronous Event System
 Glue Logic
18
ELEKTOR live 2013 – AVR Microcontroller
DIE SPEZIALISTEN:
AVRS MIT SONDERAUSSTATTUNG.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Application Specific Processors (ASSPs)
 USB
 CAN
 PWM
 Battery Management
 MCU Wireless
20
ELEKTOR live 2013 – AVR Microcontroller
CAN Introduction
 ISO standard (ISO 11898) for serial communication
 developed 1980 by BOSCH for automotive applications
 Asynchronous Serial Bus
 Absence of node addressing





Message identifier specifies contents and priority
Lowest message identifier has highest priority
Non-destructive arbitration system by CSMA with collision detection
Multi-master / Broadcasting concept
Sophisticated error detection & handling system
*
 CAN has gained widespread use
 Industrial Automation
 Automotive, …etc.
22
ELEKTOR live 2013 – AVR Microcontroller
Why CAN?
 Mature Standard
 Hardware implementation of the protocol
 Simple Transmission Medium
 Excellent Error Handling (CRC)
 Fault Confinement
 Most used protocol in industrial and automotive world
 Best Performance / Price ratio
23
ELEKTOR live 2013 – AVR Microcontroller
Motor Control: PWM3 Focus
 3 Phase Brushless DC Motor

HVAC (Heating, Ventilating, Air
Conditioning)

Refrigerators

Fans

Pumps

High tech Industrial, constant speed
applications

Traction elevator

Medical equipment

Hard disk, CD drives

Automotive
 3 Phase Induction AC Motor

HVAC

Washing machine

Blowers

Fans

Pumps

Industrial control
27
ELEKTOR live 2013 – AVR Microcontroller
AT90PWMx Family
 ATmega AVR with enhanced features for light ballast and motor control
 Power Stage Controller (PSC)
 synchronized PWM channels for 3 phase motors
 Fast emergency shut down of PWM outputs (only few 10 ns)
 Adjustable dead-band control
 Over current protection
 64 MHz PLL, providing 12-bit PWM accuracy up to 16 KHz
 Analog synchronized with PSC
 DALI - Digital Addressable Lighting Interface
 Integrated Power Factor Correction (PFC)
 10 Bit D/A with output driver (impedance < 1KOhm)
 3 comparators for Back EMF for Sensorless motors
28
ELEKTOR live 2013 – AVR Microcontroller
From PWM Channels
BLDC Motor Application
Hall sensors to INT (sensor)
Back EMF to ADC (sensor-less)
0
1
2
3
4
5
D
R
I
V
E
R
S
0
2
4
C
U
+
C
V
1
3
N S
5
C
W
To amplifier and ADC for regulation
To comparator for emergency stop
29
ELEKTOR live 2013 – AVR Microcontroller
3 Phases Induction AC Motor Application
Hall sensors to INT
From PWM Channels
Tachometer to ADC
0
1
2
3
4
5
D
R
I
V
E
R
S
0
2
4
C
U
+
C
V
1
3
5
C
W
To amplifier and ADC for regulation
To comparator for emergency stop
30
ELEKTOR live 2013 – AVR Microcontroller
Requirements for a 3-phase AC Motor Control MCU
PWM cycle
PWM cycle
0
2
4
U
0
+
U
V
W
-
1
V
2
3
1
3
5
W
4
5
Mandatory min. Dead Time
 Up to 6 Synchronous PWM channels (12 bit precision or more)
 PWM Timer Min clock frequency = 64MHz for 12 bit precision, 12KHz
 Minimum dead time controlled by hardware for all 6 channels
 All PWM must be disabled by hardware (Input) when overcurrent
 Capability to support Scalar Algorithm and Space Vector Algorithm
 10 to 16 MIPS for 3 phase AC induction with Space Vector Algorithm
31
ELEKTOR live 2013 – AVR Microcontroller
Sensorless control of two-phase fan
 AVR440 - sensorless control of two-phase BLDC fan
 Patent filed – method can only be used with AVR microcontrollers
 B-EMF voltage over passive winding used to time commutation.
 Advantage
 Hall-sensor can be eliminated to reduce fan cost
 Disadvantage
 Difficult to run the fan a very low speed
 Requirements
 Up-down PWM counter
 PWM triggered ADC
33
ELEKTOR live 2013 – AVR Microcontroller
Sensor based control of two-phase fan
 AVR441 - two-phase BLDC fan with two speed references
 E.g. Host and temperature sensor
 Autonomous fan speed
 Temperature sensor in
 AVR442 - two-phase BLDC fan with TWI




Also uses integrated temp sensor
Autonomous fan speed
TWI/SMBus control multiple fans
Advanced fan feedback
34
ELEKTOR live 2013 – AVR Microcontroller
Sensor based control of 3-phase BLDC motor
 AVR443, AVR448 – Three-phase BLDC motor
 GPIO/PWM controls high side driver
 PWM controls low side driver
 Current sensing
 Requirements
 3/6 PWM channels and PWM triggered ADC
35
ELEKTOR live 2013 – AVR Microcontroller
Sensor based control of 3-phase BLDC motor
 AVR492 – sensor based control of three-phase BLDC motor




PWM on both high and low side driver
Current control: ADC
Overcurrent detection via on-chip comparator
Adaptive fault detection using DAC possible
 Performance
 CPU: 18% @ 8 MHz, 14K RPM
 Code: 3175 bytes (38%)
 RAM: 285 bytes (55%)
36
ELEKTOR live 2013 – AVR Microcontroller
Sensorless control of 3-phase BLDC motor
 AVR444 – sensorless control of three-phase BLDC motor


PWM on both high and low side driver
Current control
 Advantage



Low cost microcontroller
Low cost motor without sensors
Automotive qualified (ATmega48 fam)
 Disadvantage


Very low speed not possible
Startup routine requires
known load
 Requirements


6 PWM channels
PWM triggered ADC
37
ELEKTOR live 2013 – AVR Microcontroller
Sensorless control of 3-phase BLDC motor
 AVR493 – sensorless control of three-phase BLDC motor

PWM on both high and low side driver

Current control using ADC

Zero Crossing Back-EMF using three on-chip comparators
 Advantage

No ADC polling gives faster zero
cross detection for Back-EMF

Hardware emergency shutdown

Communication: UART/SPI/LIN
 Target devices

AT90PWM3
38
ELEKTOR live 2013 – AVR Microcontroller
Sine wave driving of permanent magnet motor
 AVR447 – Sine wave driving of permanent magnet motor
 Uses three hall sensors for sine wave synchronization / speed control
 No encoder / tacho needed
 Advantages
 Low torque ripple
 Low cost microcontroller
 Speed control
 Full featured solution
- Safe startup w/synchronisation
- Turning
- Reverse rotation detection
 Disadvantages
 More CPU intensive than block
commutation
39
ELEKTOR live 2013 – AVR Microcontroller
Control of 3-phase AC Induction Motor
 AVR494 / AVR495 – control of three-phase ACIM
 V/f control
 Space vector modulation
 Complex algorithms
 Speed PID control
 Advantage
 Hardware shutdown
 Hardware deadband
 Comm.: UART/SPI/LIN
 Target devices
 AT90PWM3
40
ELEKTOR live 2013 – AVR Microcontroller
AUTOMOTIVE AVR
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR für Automotive
CMOS Process for Automotive µC
 35K5 (AVR8)
 0.35µm NVM CMOS
 1.8V to 5V
 Qualified up to 85°C, 105°C, 125°C and now 150°C
 35K7 (AVR8)
 0.35µm NVM CMOS
 40V Breakdown voltage
 18V operation
 58K8/58K85 (ARM & AVR32)




0.18µm NVM CMOS
Core at 1.8V - I/O at 3V – I/O 5V tolerant
Qualification in progress up to 105°C
58K as ROM version
42
ELEKTOR live 2013 – AVR Microcontroller
Automotive versus Industrial
 Main difference between Automotive parts and Industrial parts is the Quality
Level (EFR in PPM and LFR in FIT) and traceability
 Parts have to be designed for automotive
 Specific libraries
 Specific analog IPs
 Specific NV Memories
 Simulated on the full temperature range
 Guaranteed margin by process corner simulation
 Parts have to be characterized for automotive
 To know the robustness of the design versus process variation
 Parts have to be screened during manufacturing
 To remove any outliers
 To bring PPM level from 100 to Sub-1
 PPAPs on request (Production Part Approval Process)
43
ELEKTOR live 2013 – AVR Microcontroller
Industrial versus Automotive Screening
 Qualification
Industrial
Automotive
Reference to Standard
ATMEL CPQ-2001
AEC*-Q100 Grade 2
Electrical Distribution
1 Wafer Lot
3 Wafer Lots with
Corner Lots
3 lots of 300 pieces
3 lots of 800 pieces
1 lot of 77 pieces
3 lots of 77 pieces at 3
Temperatures
Wafer Level Data Retention
No
168h at 250oC long
term aging
Post Thermal Cycle Wire Pull
No
Cpk** > 1.33
Industrial
Automotive
> 20PPM
1PPM
85PPM
1PPM
8 FIT
1 FIT***
ELFR: Early Life Failure Rate
NVM Program/Erase Endurance test
 Quality Targets
AOQ: Average Outgoing Quality
ELFR
LFR: Latent Failure Rate (Long Term)
*AEC = Automotive Electronics Council
** Cpk = Critical Parameter Index
*** FIT = Failure In Time (10 -9/Oper. Hours)
44
ELEKTOR live 2013 – AVR Microcontroller
Automotive Quality Requirement
 AEC-Q100



STRESS TEST QUALIFICATION FOR INTEGRATED CIRCUITS
Defined by the Automotive Electronics Council
5 grades
-
Grade 0: -40°C to +150°C
Grade 1: -40°C to +125°C
Grade 2: -40°C to +105°C
Grade 3: -40°C to +85°C
Grade 4: 0°C to +70°C
ambient operating temperature range
 0 PPM – Zero Defect
 ISO TS16949 certification
 FMEA (Failure Mechanism and Effect Analysis)
 APQP (Advanced Product Quality Planning)
 PPAP/PSW (Production Part Approval Process / Part Submission Warrant )
Specific Methodology, Specific Products, Specific Production Flow (Screening), Specific Qualified plants
and subcontractors
45
ELEKTOR live 2013 – AVR Microcontroller
Microcontroller - Overview
 AVR-8
 Subset of products qualified according to
- AECQ100-Grade1 from –40°C up to 125°C
- AECQ100-Grade0 from –40°C up to 150°C
 AVR-32
 Preliminary targets
- Vision/Image processing for Safety Application
- Flexray application (Backbone and XbyWire)
 Secondary target: Multimedia & Infotainment
46
ELEKTOR live 2013 – AVR Microcontroller
High Temperature operating AVRs
 Up to 150°C ambient temperature
 Unique on the Market
 Thanks to very stable Non Volatile Memory cell (E2Prom)
 Qualification according to AEC-Q100 Grade 0
 Many applications in engine management and gear box
 Interface to Sensors or Actuators
 Throttle/Valve management, Torque sensor, Turbo Charger, Injectors, Fan
control
47
ELEKTOR live 2013 – AVR Microcontroller
A-NOTE FÜR A-TYPEN
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Why process migration?
 Atmel used proprietary 35k5 process
 New 35k4 process compatible to manufacturing at foundry
 Improve manufacturing and product sourcing flexibility
 Yield optimization and parameter tuning
 Reduced Active and Idle mode current by optimized routing
October 13
4
ELEKTOR live 2013 – AVR Microcontroller
Technology of the New Process
 Metal shrink
 Transistors identical to existing process
 Standard cell library redesigned
 Transistors placed closer in new process
 Signal lines takes less space
October 13
5
ELEKTOR live 2013 – AVR Microcontroller
Part name and ordering codes
 Devices in new process has Suffix ”A” (if old process device in 35k5)
 Migration Notes available
 One speed and voltage range on A-devices
Old:

ATmega128-16xU = 4.5 - 5.5V 0 - 16MHz

ATmega128L-8xU = 2.7 - 5.5V 0 - 8MHz
New:

ATmega128A-xU= 2.7 - 5.5V 0 - 16MHz
 Functionally compatible products has only one new device
Old:

ATmega48-20xU = 4.5 – 5.5V, 0 – 20 MHz

ATmega48P-20xU = 4.5 – 5.5V, 0 – 20 MHz

ATmega48V-10xU = 1.8 – 5.5V, 0 – 10 MHz

ATmega48PV-10xU = 1.8 – 5.5V, 0 – 10 MHz
New:

ATmega48PA-xU = 1.8 – 5.5V, 0 – 20 MHz

ATmega48 A-xU = 1.8 – 5.5V, 0 – 20 MHz
October 13
5
ELEKTOR live 2013 – AVR Microcontroller
RANDGEBIETE: DIE PERIPHERIE.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR –Single Chip Solution
TWI
Temperature
Sensor
USART
SPI
Flash
EEPROM
CPU CORE
SRAM
A/D Converter Register File
I/O pins
Hardware
Multiplier
Analog
Comparator
Brown Out
Detector
Reset
Circuitry
Programmable
Watchdog
On-Chip
Debug
Analog
Reference
JTAG
Boundary
Scan
AVR Integrates Much More!
Pull-Ups
On Demand
High Current
Outputs
Calibrated
Oscillator
In System
Programming
LCD
Interface
Output
Driver
LCD driver
53
ELEKTOR live 2013 – AVR Microcontroller
I/O Ports
 Push-Pull Drivers with High Current Drive

Sinks/Sources up to 20 mA (40mA)
 Pin-wise Controlled Data Direction and Pull-Up Resistors
 Fully Synchronized Inputs
 Three Control/Status Bits per Bit/Pin
 Real Read-Modify-Write
DDRx
0
Pull-Up
PORTx
0
PINx
?
Physical Pin
?
54
ELEKTOR live 2013 – AVR Microcontroller
Faster IO PORT toggling
 PINx Register toggles PORTx Register
 Writing a ”1” to bit in PINx Register will toggle that bit in the PORTx Register
 Faster IO toggle access
 Dual cycle toggling
 Toggle multiple pins in one operation
55
ELEKTOR live 2013 – AVR Microcontroller
Timer/Counter
 Wide range of 8- and 16-bit Timer/Counters
 The AVR Timer/Counters can use various clock sources
 Main CPU clock
 Internal High speed PLL
- High speed, 64MHz
 By external clock source
Relevant Application Notes
AVR130 AVR133
- Max speed XTAL/2
 External 32kHz asynchronous crystal
 All clock sources can be pre-scaled before being fed to the Timer/Counters
 AVR’s Timer/Counters are
interrupt driven and controlled
through the AVR IO registers
 Special T/C versions on PLL/PWM AVR and Xmega
 E.g. dead time generation
56
ELEKTOR live 2013 – AVR Microcontroller
Analog Comparator
 Compares the input values on pins AIN0 and AIN1
 Dedicated Analog Comparator interrupt
 Selectable trigger on Rise, Fall or Toggle
 Output connectable to Input Capture of Timer/Counter1
 Pulse-width measurement of analog signals
 Easy Implementation of dual slope ADC
 Bandgap reference available
 ADC inputs can be used as AIN1
57
ELEKTOR live 2013 – AVR Microcontroller
ADC Features
 Almost all AVRs have ADC
 Accuracy:
 10bits ±0.5LSB  65 us conversion time*.
 8bits ± 0.5LSB down to 12 us conversion time.
 Up to 11 single ended channels and up to 7 differential channels
 Programmable Gain Stage (1x, 10x, 100x, 200x)
 Free-run, single conversion and timed modes
 Interrupt on conversion complete
 Internal Voltage reference
*conversion
Relevant Application Notes
AVR120 AVR400
time is 6.5µs on AT90PWM Family
58
ELEKTOR live 2013 – AVR Microcontroller
SPI - Serial Peripheral Interface
 3 pin serial communication interface
 Shift register type serial communication
 Full duplex interface
 AVR enables interrupt driven SPI communication
 Master and Slave mode
 Transmit at bit rates up to XTAL/2
 Receive at bit rates up to XTAL/4
 AVR supports industrial standard SPI interfaces
 Memories
 IO expanders
 Other CPUs in system
 SPI used for In System Programming (ISP)
59
ELEKTOR live 2013 – AVR Microcontroller
TWI – Two Wire Interface
 2 pin serial communicantion interface
 Master and slave
 Fully interrupt driven
 Fast Mode support
 Wake-up from power down mode on address recognition
 Slave Address
 General Call
 Peripheral device interface
 Philips I2C compatible
60
ELEKTOR live 2013 – AVR Microcontroller
USI – Universal Serial Interface
 Hardware support for software SPI and TWI drivers
 Still a software driver but less resources required
 Higher transfer rates than pure software interfaces
- fkc/16 as TWI master and slave
- fkc/4 as SPI master or slave
 Polling and Interrupt support for
 Data reception
 Wakeup from sleep
- In TWI mode also from PWD
 TWI start condition detector
61
ELEKTOR live 2013 – AVR Microcontroller
Memory Overview and Interconnection
 General purpose registers manage all data transfer
 Direct Program memory access
 Direct SRAM access
 EEPROM access via IO registers
 EEAR,EEDR,EECR
 Secure Program memory and
EEPROM access
 Timed sequence
Register
File
SRAM
I/O
Registers
EEPROM
Program
Memory
62
ELEKTOR live 2013 – AVR Microcontroller
Flash Program Memory
 All AVR uses Flash program memory
 In-system (re-)programmable
 Both by programmer and application
 From 1.8 to 5.5V
 More flexibility compared to ROM, PROM and EPROM
 No external high voltage required
 Internal charge pump
 20 years retention time
 Minimum 10K erase/write cycles, typical 100K
63
ELEKTOR live 2013 – AVR Microcontroller
Internal EEPROM Data Storage
 All AVRs with internal EEPROM for data storage
 Linear address space
 Size from 64B to 8K
 Byte accessible
 3 – 8ms Write time
 Including erase
 Instant read
 Interrupt controlled
 Handled through dedicated IO registers
 20 years retention time
 Minimum 100K erase/write cycles, typical 1M
64
ELEKTOR live 2013 – AVR Microcontroller
Enhanced EEPROM Operation
 Split erase & program cycle to save time
 Traditionally erase and write one byte in one operation
 Enables pre-erasing of locations
 Faster interrupt handlers etc.
 Available on ATtiny13 and all newer devices
Exe. Time
Operation
3.4 ms
Erase and Write in one operation
1.8 ms
Erase only
1.8 ms
Write only
65
ELEKTOR live 2013 – AVR Microcontroller
SRAM Data Memory
32 Registers
IO Registers
64 to 224
 Most AVR MCUs feature internal SRAM for data memory
 Linear address space
 Size from 64B to 16K (new!)
Internal
SRAM
64B to 8K
 Program and parameter stack in SRAM
 Five different addressing modes
 Direct
 Indirect
 Indirect with Displacement, Pre-dec and Post-inc
 Indirect addressing handled X,Y and Z pointer
 Data memory map
External
SRAM
up to 64K
 SRAM
 32x8 General Register File
 IO registers
 External SRAM through XRAM interface
 up to 64K
66
ELEKTOR live 2013 – AVR Microcontroller
External Memory Interface
 Parallel Interface for external devices or peripherals
 Memory map linear with the internal SRAM
 Parallel bus with 8 data and 16 address lines
 Up to 64K memory map
 Dynamic pin allocation to release unused address pins
 4 Wait-state settings
D7:0
 Flexible timing settings
 Integrated Bus-keeper
 Lower power consumption
AD7:0
D
ALE
G
AVR
A15:8
Q
A7:0
SRAM
A15:8
/RD
/RD
/WR
/WR
67
ELEKTOR live 2013 – AVR Microcontroller
Flexible Clock Options
 Crystal Oscillator
 Low Power Crystal Oscillator
 Full Swing Crystal Oscillator
 32kHz Low Frequency Crystal Oscillator
 Internal RC Oscillator
 Can be calibrated within ±1% for most devices
 Internal 128 kHz RC Oscillator (WDT)
 External Clock
 System Clock Prescaler (1 to 256)
 Lower system clock frequency while running
 Controlled by application
68
ELEKTOR live 2013 – AVR Microcontroller
Internal EEPROM Data Storage
 Most AVR MCUs feature internal EEPROM for data storage

Linear address space
 Byte accessible
 3 – 8ms write time

Including erase
 Interrupt controlled
 Handled through dedicated IO registers
 20 years data retention time
 Minimum 100K erase/write cycles, typical 1M
Relevant Application Notes
AVR335, AVR104
69
ELEKTOR live 2013 – AVR Microcontroller
ISP -
In-System Programming
 FLASH, EEPROM, Fuses and Lock Bits programmed in-system
 At all Frequencies
 At all supply voltages
1.8V – 5.5V
MISO
VTG
SCK
MOSI
RST
 SPI interface used for ISP
GND
ISP6PIN
MOSI
VTG
NC
GND
RST
GND
SCK
GND
MISO
 Exc.: ATmega128 !
ISP10PIN
 Only four pins + VCC and Ground required Relevant Application Note
 RESET
AVR109 AVR042
 MISO
 MOSI
 SCK
70
GND
ELEKTOR live 2013 – AVR Microcontroller
Redefining ISP - Self-Programming
 The CPU can read and write its own program memory
 Enabling reprogramming while running an application
 Critical functions are still operating
 Any communication interface, including software-implemented interfaces
 Parameters can be stored in program memory
 In addition to EEPROM
71
ELEKTOR live 2013 – AVR Microcontroller
LCD Controller/Driver
 Integrated segment LCD controller/driver

For monochrome passive liquid crystal display

No external LCD driver required
A
F
 100 and 160 segments

COM0
 Interrupt driven
Start Of Frame Interrupt
 Internal contrast voltage generator

SEG1
Unused LCD pins can be used as general IO
External capacitor as power reservoir
 Own AVR LCD family

100Segment : ATmega169P, ATmega329, ATmega649

160Segment : ATmega3290, ATmega6490...
SEG2
G
SEG0

B
E
C
COM1
D
COM2
Relevant Application Notes
AVR064 AVR065
72
ELEKTOR live 2013 – AVR Microcontroller
42:
DIE ANTWORT AUF MEHR ALS EINE FRAGE.
HARDWARE DESIGN.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AppNote AVR042
AVR Hardware Design Considerations
AppNote AVR4100
Selecting and testimg 32 kHz Xtal…
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
13 JAHRE FAE – UND EIN BISSCHEN WEISER.
TIPPS UND STOLPERFALLEN.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Ports
 Doppelfunktionen bestimmter Pins beachten, zum Programmieren,
zum Debuggen, Analogfunktionen, ext. Interrupts,..
 Programmierung über SPI:
MOSI
MISO
SCK
Achtung: Beim ATmega128 und Pin-kompatiblen Bausteinen liegen die
Programmierpins NICHT an der SPI, sondern an der UART-Schnittstelle !
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Manche Ports sind nur teilweise ausgeführt: beim 2313 fehlt
PortD.7, bei Ausführungen im PDIP (DIL) Gehäuse teilweise weniger
IO-Pins.
Konfiguration beim Einschalten ist INPUT. Ausgänge durch „1“ im
DDRx einstellenRS232:
RxD = PD0
TxD = PD1
JTAG-Debug-/Programmierschnittstelle
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
 Floating Inputs vermeiden: Ausgang oder Pullup (PORTx)
 Ausgabe über PORTx
 Pin Toggeln durch Schreiben einer „1“ nach PINx bei OUTPUT
 RESET Pin nach Bedarf beschalten: HV-Programming?
DebugWire? (siehe AVR042)
 RESET Pin darf während Debugging über DebugWire oder bei
Nutzung des PDI (Xmega) nicht mit Kondensator belastet sein
 Große Streuung bei Pullups (bis 500KOhm)
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
 Höhere Eingangsspannung als Vcc möglich, wenn Vorwiderstand
zur Begrenzung des Stroms durch die Schutzdioden (Beispiel
Nullspannungsdetektor) vorhanden
 Mehrere Ausgangspins innerhalb desselben Ports können
zusammengeschaltet werden, um Treiberleistung zu erhöhen. Dabei
Maximalbelastung von Port und Chip beachten!
 Nicht alle AVRs haben die 20mA Belastbarkeit der Ausgänge.
Ausnahmen sind einige ATtinys und die Xmegas.
20mA bei Einhaltung der Logikpegel, sonst 40mA
 Maximalbelastbarkeit ist abhängig von Betriebsspannung
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
 Bei Verwendung desselben Pins als Eingang für Taste und LED
Ausgang: Durchlass-Spannung der LED, Vcc und Logikpegel beachten!
 LEDs haben verschiedene Durchlass-Spannungen je nach Farbe
 Tasten in der Regel gegen Masse schalten und Pullups nutzen
 Bei induktiven Lasten zusätzliche Schutzdiode direkt an der Induktivität
(1N4148 besser als 1N4001, da schneller)
 Externe Interrupts: Ältere AVRs (z.B. ATmega32) haben nur wenige
INTx Pins, neuere (z.B. ATmega324P) haben externe Interrupts an allen
IO-Pins. Unterschiedliche Handhabung beachten.
 Ggf. Analogkomparator-Interrupt nutzen.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
 BOD und POR sind unterschiedlich robust, z.B. Mega88P(V) besser als
ATmega88(V). Fußnoten im Datenblatt beachten - Table 28.3 Page 306
(M88) vs. Table 28.5 Page 318 (M88PA).
 Interne RC-Oszillatoren haben unterschiedlich ausgeprägten Jitter.
 Interne RC-Oszillatoren bei älteren Typen stärker temperaturabhängig.
 RC-Kalibrierung gilt nur bei der jeweiligenTemperatur.
 RC Oszillator angeblich durch Metall/Magnet von außen beeinflussbar
 UART braucht 2% genauen Takt, USB noch deutlich genauer
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
 Keine (unbenutzten) Komponenten an Quarzanschlüssen
 Full Swing nur bei 2.7 Volt und mehr
 „Sägezahn-Effekt“ bei parasitärer Speisung über externe Komponenten
und Schutzdioden.
 Programmierkabel nicht zu lang! Ggf. 10-Pin statt 6-Pin Belegung
 TWI-Kabel (I2C) nicht zu lang!
 Port-Erweiterungen über spezielle I2C-Chips, Schieberegister, ATF15xx
 Treiber für LEDs oder Induktive Lasten über I2C oder SPI mit
Schutzfunktionen bei Unterbrechung Kurzschluss, Übertemperatur.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
 Low Cost Alternative zu MAX232: siehe Butterfly
 RC-Oszillator Kalibrierung bei UART Kommunikation: siehe Butterfly
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
GUT VERSTECKT IM DATENBLATT.
ATMEGA48
ATMEGA48PA
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
RECHENLEISTUNG
STATT
ELEKTRISCHE LEISTUNG.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR Oscillator Types
External high
frequency crystal
External low
frequency (32kHz)
crystal
External ceramic
resonator
External R/C
oscillator
Calibrated Internal
R/C oscillator
External clock
Cost
Accuracy
Startup time
High
High
(10-50 ppm)
High
(10-50 ppm)
Long
(16k cycles)
Long
(16k-32k
cycles)
Medium
(0.5-1%)
Depending on
R and C
Medium (2001k cycles)
Short
(6 cycles)
Medium
Medium
Low
±1% after
calibration
Depending on other
circuits in the system
NONE
Short
(6 cycles)
Short
(6 cycles)
Notes
Additional timer
oscillator on some
devices
May be re-calibrated by
application at any time
Use the internal RC for fast startup time and low power consumption
86
ELEKTOR live 2013 – AVR Microcontroller
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR Sleep Modes
 Idle mode

CPU Stopped, but oscillators and most
I/O modules active

Allows fast wakeup (immediate) from
sleep
 ADC Noise Reduction mode

Like Idle mode, but fewer I/O modules
active
 Power Down mode
 Power Save mode

Like Power-down mode, but 32kHz
timer oscillator running
 Standby mode

Like Power-down mode, but main
crystal/resonator oscillator running

Allows fast wakeup (6 cycles) from
sleep
 Extended Standby

Oscillator stopped, CPU stopped, most
functions inactive

Both main crystal/resonator oscillator
and 32kHz timer oscillator running

Slow wakeup from sleep, oscillator must
be restarted

Allows fast wakeup (6 cycles) from
sleep
88
ELEKTOR live 2013 – AVR Microcontroller
AVR Sleep Modes - Example
 By using sleep modes, power consumption can be reduced by a factor
100
 Ideal for periods of inactivity – waiting for interrupts!
 Power Saving Example: Using the ATmega48

Use sleep modes and wait for wake-up condition

Internal RC @ 1MHz, 1.8 volt @ 25°C
mega48 Internal RC 1Mhz @ 1,8V 25'C
1000
250
ICC (uA)
100
10
Active
40
Idle
7,2
Power Save WDT
4,2
3
Power Save no WDT
Power Down WDT
1
Power Down no WDT
0,1
0,1
89
ELEKTOR live 2013 – AVR Microcontroller
PicoPowerTM Technology
Key elements:
 (Almost) Zero current 32kHz oscillator
 Sleeping BOD
 Power Reduction Register (PRR)
 Digital Input Disable Register (DIDR)
 Flash sampling
 Low leakage process
 1.8V operation
 Power Save mode now 0.6 uA vs 10uA
 PicoPower AVR is #1 in Power Consumption & Performance
90
ELEKTOR live 2013 – AVR Microcontroller
Low Current 32kHz Oscillator
 Power Save is the most highlighted ultra low power number
 Time in active is insignificant compared to time in PS for ULP
 The new 32kHz oscillator brings Power Save current almost to Power
Down.....
 0.6uA Power Save mode @ 2.2V
 ATmega165P: Typical 0.6uA
 32kHz running
 PicoPower Power Save mode is industry leading
 Less current consumption than MSP430F2 in PowerSave
91
ELEKTOR live 2013 – AVR Microcontroller
Sleeping BOD (SBOD)
 SBOD enter sleep together with the AVR
 No need for BOD in sleep
 Wakeup from sleep first starts the SBOD, then the AVR
 Enabled by application
 Secure two step operation
 Automated operation when enabled
 No SBOD power consumption penalty while in sleep, full protection while
in active mode
92
ELEKTOR live 2013 – AVR Microcontroller
Power Reduction Register - PRR
 Stop clock to individual peripherals
 Peripheral is in PWD sleep while rest of device is running
 Reduces overall power consumption
 PRR accessible by application while running
 When stopping the clock to a peripheral...
 The current state of the peripheral is frozen
 All I/O registers are inaccessible
 When re-starting a module...
 It continues in the same state as before shutdown
93
ELEKTOR live 2013 – AVR Microcontroller
Digital Input Disable Registers - DIDR
 DIDR decreases overall
power consumption
 Shut off digital input buffers
on individual pins
 Enable DIDR on all ADC
pins
 Not required in Power-save,
Power-Down and Standby
94
ELEKTOR live 2013 – AVR Microcontroller
PicoPowerTM AVRs
 Existing high volume megaAVRs will be upgraded
to PicoPower megaAVRs
 Special naming by the use of the letter ‘P’
 Example: ATmega169P
95
ELEKTOR live 2013 – AVR Microcontroller
ATtiny23V/43V
 Operate from a single cell battery (1.4 V)
 Integrated Boost Regulator
 Autonomous analog block that is NOT controlled by the MCU
 Fixed 3.0V Vcc for the MCU from an external supply of 0.9V to 1.7V
 Starts up automatically when the voltage at the BATS pin is greater than 0.6V
(± 0.15V).
 Output voltage rises above POR and BOR levels (if enabled), the MCU will
start up
 Shuts down automatically when the voltage drops below 0.6V avoiding battery
drainage
 Alternatively the device can be operated directly from supply of 1.8 to 5.5
volts (LSW and BATS grounded)
96
ELEKTOR live 2013 – AVR Microcontroller
DOPPELTE SICHERHEIT
SECURITY UND SAFETY
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Internal Brown-Out Detection
 Reset when voltage level is below specification
 Preventing CPU run-away and EEPROM corruption.
 Flexible BOD levels
 Extremely fast detection (7 µs)
 BOD status bit set after reset
 MCUSR IO register
 BOD is optional
 BODEN fuse
98
ELEKTOR live 2013 – AVR Microcontroller
WDT - WatchDog Timer
 Free running timer used to generate a System Reset allowed to time out
 Time-out period between 16ms and 8s set by prescaler
 Timer is reset by WDR instruction
 Prevents device from being trapped in dead loops
 WDT runs from it’s own clock source (RC Oscillator)
 WDT enabling through IO bits or Fuses
 Timed IO sequence for enabling and changes
 Safe WDT enabling through WDTON fuse
 Watchdog reset detectable by reading the WDRF flag
 Enganced WDT with WDT interrupt
 Interrupt instead of or prior to System Reset
 Suited for timing sequences, wake up from sleep etc.
Relevant Application Note
AVR132
99
ELEKTOR live 2013 – AVR Microcontroller
Fuses and Lock Bits
 Fuses
 Programmable bits not accessible by application software for device settings
- Clock settings, BOD settings, Boot-Loader settings, etc.
 Not affected by chip erase
 Lock Bits
 Programmable security bits to secure IP stored in Flash and EEPROM
 Disables read and write access to Flash and EEPROM
 Only removed by chip erase
- Chip erase will also clear Flash and EEPROM
 Flexible settings for level of security and area to secure
- Own set of lock bits for self-programming
100
ELEKTOR live 2013 – AVR Microcontroller
TOUCH ME – KAPAZITIV.
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Atmel Touch Solutions
Buttons, Sliders, Wheels
Touch Software
Touchscreens
Application Specific
(“ready-to-use”)
Add touch functionality to your
general purpose Atmel MCU
Revolutionary Unlimited
Touchscreen Technology
1 – 48 Channels
Buttons, Proximity & Sliders
Self- & Mutual- Capacitance
No programming required
Limited Flexibility
1 – 64 Channels
Buttons, Proximity & Sliders
Self- & Mutual- Capacitance
Fully programmable
Excellent Flexibility
Excellent Integration
Single-Touch & Dual-Touch
devices also offered
ELEKTOR live 2013 – AVR Microcontroller
QTouch
QMatrix
 Self-Capacitance
 Mutual-Capacitance

Robust and simple electrode design

Well defined key area for detection

Ideal for low node count

Ideal for high note count (>10 nodes)

Good proximity, providing better
sensing distance

Very resilient to moisture & environment

Passive tracking – longer tracks possible

Very resilient to noise and ground loading

Virtually any electrode shape possible

Easy to tune sensitivity
- Flooded X design
Vdd
SENSE
ELECTRODE
MCU
Xn
Cx
Ykn
Cs
Yn
GND
ELEKTOR live 2013 – AVR Microcontroller
Evaluation and Development Kit
Ordering Code: ATQT600
3 Sensor boards
• 8 channel QTouch board
• 16 channel QTouch board
• 64 channel QMatrix board
3 MCU boards
• ATtiny88 (QTouch)
• ATmega324PA (QMatrix)
• ATxmega128A1 (QTouch)
Interface board
• 2-way debug data
• ISP Programmer
• Supports AVR / AVR32
ELEKTOR live 2013 – AVR Microcontroller
WERKZEUGKASTEN:
WAS BRAUCHE ICH FÜR DEN START?
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
WAS JETZT – ASSEMBLER ODER C?
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
WIR FANGEN AN:
EIN ERSTES PROJEKT MIT STUDIO6
www.atmel.com
October 13
Atmel Studio 6
Integrating ARM and AVR Design
Copyright 2012 Atmel Corporation
Atmel Studio 6/SAM3 Press Presentation
2/28/12
ELEKTOR live 2013 – AVR Microcontroller
Atmel Studio 6 – IDE
 Intelligent editor
 New Project Wizard with over 1,000 project examples
 Integrated GNU C/C++ Compiler
 Seamless connection to all
in-system debuggers
 Cycle accurate chip and peripheral simulator
ELEKTOR live 2013 – AVR Microcontroller
Atmel Studio 6 – Atmel Software Framework
 Software Library
 Peripheral drivers
 Hardware abstraction
 Communication
 Graphics
 Standard APIs
 Easy code migration
 Support for ARM + AVR MCUs
 Common 8/32-bit platform
 ASF Explorer
 Manage ASF components
 Trace driver dependencies
 Easy access to documentation
ELEKTOR live 2013 – AVR Microcontroller
Atmel Studio 6 – QTouch Composer
 QTouch Project Wizard
 Configure QTouch project
 Optimized QTouch library code
 Automatic power management
 Touch Wizard
 Automatic performance tests
 Optimal design recommendations
 Power Analyzer
 Real-time monitoring of MCU power
consumption
 Profiling and visualization
ELEKTOR live 2013 – AVR Microcontroller
JTAGICE3
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR Dragon
 Low cost development tool
 High performance
 Easy to use
 USB Connection
 USB Powered
 Combination of
 JTAGICE mkII ( $299)
 AVRISP mkII ($34)
 STK500 ($79)
 Programs all devices
 Debug support for devices <=32K
 Price: €49!
115
ELEKTOR live 2013 – AVR Microcontroller
XPLAINED KIT
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
STK600
117
ELEKTOR live 2013 – AVR Microcontroller
WIESO „ENTWANZEN“?
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR JTAG interface
 The AVR JTAG interface is a integrated hardware module for:



In-System Programming
On-Chip Debugging
PCB test through Boundary-Scan
 Dedicated hardware module

All AVR resources present while debugging
- Except 4 pins for JTAG communication
 Supports all Vcc levels and Frequencies
 Complies to IEEE std 1149.1 (JTAG)

Joint Test Action Group (JTAG)
 JTAG interface in all AVRs with
16K program memory or more
119
ELEKTOR live 2013 – AVR Microcontroller
AVR debugWIRE interface
 On-Chip Debugging via single wire interface
 Program flow control
 EEPROM and Flash memory access
 Peripheral access
 debugWIRE is a hardware module
1.8 - 5.5V
Vcc
JTAGICE MKII
dW(/RESET)
 Not a ROM monitor!
 All AVR resources present while debugging
AVR
 Supports all Vcc levels and Frequencies
GND
120
ELEKTOR live 2013 – AVR Microcontroller
Enabling debugWIRE
 debugWIRE functionality is enabled by DWEN fuse
 Set by ISP or HV programming
 Cleared by debugWIRE or HV programming
 debugWIRE is disabled by default from Atmel
 debugWIRE require system clock in all sleep modes
 No PowerSave/PowerDown mode current consumption possible as long as
the DWEN fuse is set
121
ELEKTOR live 2013 – AVR Microcontroller
WIE GEHT´S WEITER?
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA Technical Walk-Through
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA
 Extraordinary Low Power
 2nd generation picoPower ®
 True 1.6 V operation
 Exceptional Performance
 Up to 32 MIPS
 DMA Controller
 Event System
 Extreme Peripherals
 Leading Analog Integration
 Fast Crypto engine
 Rich feature set
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA AVR core
 Code compatible with existing tinyAVR and megaAVR
 True RISC architecture
 True single cycle execution
 32 MIPS at 32 MHz
- 32 MHz 2.7V – 3.6V
- 12 MHz 1.8V – 2.7V
 32 GPR
 Harvard architecture
 DMA Controller
 Flexible Event System
 Programmable Multi level Interrupt Controller – PMIC
125
ELEKTOR live 2013 – AVR Microcontroller
EBI- External Bus Interface
 2-port, 3-port or 4-port interface selectable in SW
 All external memories are directly mapped in AVR
 No banking
 Stack and variables anywhere
 Simultaneous support of SRAM and SDRAM possible
 Ex: memory mapped devices
 Up to 128 Mbit SDRAM
126
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Interrupt Controller
 4 interrupt levels
 NMI - Non Maskable Interrupts
 High, Medium and Low level
 Round robin priority possible for low level interrupts
 Ensures all interrupts are serviced
 All peripherals can also be controlled by polling
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Event system
 CPU and DMA independent Inter-peripheral communication
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
Event System
AVR CPU
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Event System
 8 Event Routing Channels
 Peripherals specify how to generate events
 Everything that can generate an interrupt
 Ex: Pin change, Timer overflow, ADC complete, Comparator toggle
 Peripherals specify how to use events
 Ex: Increment Timer, Output signal, Start ADC conversion
 Reduce the use of interrupts
 Event system ensures control of critical function
 Predictable reaction time of 2 chip clock cycles
 Safe fault protection
 Reduces power consumption – no CPU needed
 Works in Active and Idle mode
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA DMA Controller
 Allows high-speed data transfer
 From memory to peripheral
 From memory to memory
 From peripheral to memory
 From peripheral to peripheral
 Main features
 4 channels
 From 1 byte to 16 Mbyte transfers
 Optional interrupt at end of transaction
 Multiple addressing modes
- Static, Increment, Decrement
 1, 2, 4 or 8 byte bursts
 Programmable priority between channels
http://www.atmel.com
CPU Load, SPI Communication
Data rate With DMA No DMA
250 kbps
0%
8%
500 kbps
0%
16 %
1 Mbps
1%
30 %
2 Mbps
1%
57 %
4 Mbps
2%
98 %
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Memories
 Flash
 Memory setup
 Application area for main program
Flash
16K + 4K
32K + 4K
64K + 4K
128K + 8K
256K + 8K
 Boot area for bootloader
 Application Table area for fail safe
EEPROM emulation
 EEPROM
SRAM
2K
4K
4K
8K
16K
EEPROM
1K
1K
1K
2K
4K
 EEPROM on all devices
 Byte and page accessible
 Optional memory mapped
 SDRAM
 SRAM
 Internal on all devices
 Optional external on some devices
- Up to 16 MB directly addressable
- Optional multiplexed address and data
http://www.atmel.com
 Optional external on some
devices
- Up to 128 Mbit directly
addressable
- 4-bit and 8-bit supported
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Analog to Digital Converter
 Features
 12 bit resolution
 2 MSPS ADC in XMEGA A
 200 kSPS ADC in XMEGA D
 Single or continuous conversion modes
 Connected to Event System
 Connected to DMA Controller
 Internal and External reference voltages
 Interrupt/event on compare result
 Interrupt if lower or equal
 Interrupt if higher or equal
 Interrupt/event on conversion complete
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA ADC – Pipelined Conversion Channels




4 ADC conversion channels
8 – 16 external single-ended inputs per ADC
8 x 4 external differential inputs per ADC
4 internal inputs
 VCC, Bandgap, Temperature, DAC output
 1x, 2x, 4x, 8x, 16x, 32x or 64x gain
 Synchronous sampling in dual ADC devices
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Digital to Analog Converter
 Features:
 12 bit resolution
 Up to 1 MSPS conversion rate, 1 µs settling time
 Connected to Event System
 Connected to DMA Controller
 Two independent output channels per DAC
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Analog Comparators
 Selectable hysteresis
 0, 20mV, 50mV selectable
 Flexible input selections
 Any analog input pin
 Output from DAC
 Bandgap voltage reference
 64-level VCC scaler
 Flexible interrupts and events generation
 Window compare function by combining 2 comparators
 Possible to have comparator output on a pin
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Timer/Counter
 Multiple 16-bit Timer/Counters in each device







Counts chip clock (Timer) or events (Counter)
4 or 2 Output Compare on each Timer/Counter
4 or 2 Input Capture on each Timer/Counter
Programmable Top Value
Direction control
Flexible interrupts and events generation
Split option: 2 x 8 instead of 1 x 16 Bit
 High-Resolution Extension
 4x of chip clock = up to 128 MHz (256 MHz) operation
 Advanced Waveform Extension




Inverted and Non-inverted PWM Outputs
Dead Time Insertion
Fault protection mechanism
Available in all devices, but on 1-2 timer/counters only
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Real Time Counter
 Separate Timer for Asynchronous Clock
 Independent of other Timer/Counters
 Works in Power Save, Idle and Active mode
 16-bit timer with Programmable Prescaler
 Prescaler provides 1 Hz – 32 kHz input
 Programmable top value
 Compare register
 Max timeout 65 536 seconds (= more than 18 hours)
 Can generate Events and Interrupts
 Both overflow and compare match
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Clock Options
 32- and 2 MHz internal RC osc.
 +/- 1% accuracy over temp and
voltage with automatic run-time
calibration
 32.768 kHz internal RC osc.
 +/- 2% accuracy over temp and
voltage
 400 kHz – 16 MHz Crystal osc.
 For accurate timing in application
 32.768 kHz Crystal oscillator
 for 32 kHz watch crystal
 500 nA current consumption
 32 kHz ULP RC oscillator
 For WDT and BOD
 1A power consumption
 Internal PLL for high-freq clock
generation
 400 kHz – 32 MHz input
 8 – 128 MHz output
 Max 32 MHz output to main
system clock
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Serial Communication Modules
 USART
 Full duplex asynchronous or synchronous operation
 Can also be SPI master
 Baud Rate Generator with fractional divider
- UART frequency crystals not needed
 SPI – Serial Peripheral Interface
 Full duplex, three-wire synchronous data transfer
 TWI – Two Wire Interface
 I2C compatible
 SMbus compatible
 Fast data rate on slow chip clock
- Clock / 10 for master operation
- Asynchronous slave operation
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA A USB Device
 USB added to all XMEGA A products
 New ordering codes for all XMEGA A with USB
 ATxmega128A1-AU -> ATxmega128A1U-AU
 USB 2.0 Compliant Device
 Low and Full speed operation
 32 configurable endpoints
 High throughput with minimim CPU load
 Support DMA and large transactions without interrupt
 Free device class software library
 CDC, DFU, HID, Mass Storage, Audio, ...
141
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Crypto engine
 AES
 128-bit key length
 Encryption of 16 bytes in 375 clock cycles
 Decryption of 16 bytes in 375 clock cycles
 DES
 56-bit key length
 Encryption of 8 bytes in 16 clock cycles
 Decryption of 8 bytes in 16 clock cycles
 Supports up to 4 Mbps AES encrypted communication
 Supports up to 3.2 Mbps Tripple-DES encrypted communication
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
Crypto Performance
 AES an DES crypto for high speed encrypted communication
 Offload CPU and reduce power
Max encrypted
communication rate
UART
SPI
Vs. Software
128-bit AES
4 Mbps
3.2 Mbps
10x faster
Tripple-DES
3.2 Mbps
2.3 Mbps
100x faster
 XMEGA with crypto is authorized for export to all contries
 ECCN 5A002A.1
 XMEGA enables crypto communication for low power applications
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA I/O Pins
 IN, OUT and DIR registers for safe read modify write operations
 Virtual registers for easy pin manipulation


Move IN, OUT and DIR control to bit addressable memory area
Port Toggle, Clear and Set registers for easy and glitch free pin manipulation
 Advanced pin configurations
Push-pull
Push-pull w/ buskeeper
http://www.atmel.com
Push-pull w/pull-up
Wired AND w/ optional pull-up
Push-pull w/pull-down
Wired OR w/ optional pull-down
October 13
ELEKTOR live 2013 – AVR Microcontroller
2nd generation picoPower
 All picoPower features included
 New sampled BOD
 New low power Watchdog Timer
 New Event system controls peripherals in Idle mode
 New DMA moves data in Idle mode
 Lowest power consumption
 100 nA Power Down (RAM retention)
 550 nA Power Save (Real Time Counter)
 5 µs wake-up from sleep
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
2nd generation picoPower
 Industry leading in low power applications
 True 1.6V operation
 Flash, Analog, EEPROM, Oscillators down to 1.6V
 Enable 1.8V +/-10% power supply
 Lowest power 32 kHz Crystal Oscillator
 550nA RTC
 Low leakage Process Technology
 100nA for all devices
 1 µA Watchdog and Brown-Out
146
146
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Special Features
 Calibration memory
 Oscillator failure detection
 Readable from application
 Memory lock bits
 Factory calibration
 Brown-Out Detector
 User calibration
- Can be modified by customer
 Not affected by Chip Erase or
SPM
 Serial numbers
 Unique identifier
 Random number seed
 Dynamic Clock Switching
 Very fast
 Low power
 Off, 1 kHz sampled or On
 Watchdog Timer
 Separate oscillator
 Clock generation
 Clock output
 CRC checksums
 Available on locked devices
http://www.atmel.com
ELEKTOR live 2013 – AVR Microcontroller
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
XMEGA B Family Overview
 Adds LCD to XMEGA family
 Reuse modules from XMEGA A
and XMEGA D
 XMEGA B family:





64 – 100 pins
64 – 256 KB Flash
6 – 32 KB SRAM
LCD driver
1.6 – 3.6V operation
- 12 MHz from 1.6V
- 32 MHz from 2.7V
 XMEGA B Features








Segment LCD driver
USB Device + Host
Up to 3 16-bit Timer/Counter
Up to 2 USART, 1 SPI, 1 TWI
12-bit 200 ksps ADC w/gain
2 Analog Comparators
Event System
CRC-16/32 support
150
150
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
XMEGA C Family Overview
 Adds USB Host to XMEGA family
 Compatible to XMEGA D, but adds
USB Device and Host
 XMEGA C family:
 XMEGA C Features
 64 pins
 USB Device + Host
 64 – 256 KB Flash
 5 16-bit Timer/Counter
 4 – 16 KB SRAM
 3 USART, 2 SPI, 1 TWI
 1.6 – 3.6V operation
 12-bit 200 ksps ADC w/gain
- 12 MHz from 1.6V
 2 Analog Comparators
- 32 MHz from 2.7V
 Event System
- USB from 2.7 to 3.3V
 CRC-16/32 support
153
153
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
XMEGA C USB Module
 USB 2.0 Compliant Device and Host
 Low and Full speed operation, up to 12 Mbps
 32 Endpoints - maximum number in USB specification
 Easy to use
 High throughput
 Ping-pong mode to increase bandwidth
 Multi-packet feature to reduce number of interrupts
 Data buffers and endpoint configuration in SRAM
 Low cost with maximum flexibility
 Only the amount of SRAM needed will be allocated
 USB pins multiplexed with I/O pins, no dedicated pins
 3.0 to 3.6V VCC during USB communication
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
XMEGA D Family Overview
 Lowest cost XMEGA family
 Compatible to XMEGA A with
reduced feature set
 XMEGA D family:
 XMEGA D Features
 44 – 64 pins
 Up to 5 16-bit Timer/Counter
 16 – 256 KB Flash
 Up to 3 USART, 2 SPI, 1 TWI
 2 – 16 KB SRAM
 12-bit 200 ksps ADC w/gain
 1.6 – 3.6V operation
 2 Analog Comparators
- 12 MHz from 1.6V
 Event System
- 32 MHz from 2.7V
155
155
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E target specification





Sixteen-channel 12-bit 300 ksps ADC
Two-channel 12-bit 300ksps DAC
Two Analog Comparators
Two standard 16-bit Timer/Counters
One high-end 16-bit Timer/Counter







Optimized for ballast, LED, induction control, DC/DC supply/converter, motors,
buck/boost converter, wireless charger, battery charger
RTC with digital calibration and correction for XTAL error
Two USARTs with master SPI
I2C master and slave, up to 1MHz support
One SPI
4-channel peripheral DMA controller
Device
Flash
8-channel event system

Asynchronius event routing
 32-pin packages

26 I/O pins
RAM
EEPOM
ATxmega32E5
32KB
4KB
1KB
ATxmega16E5
16KB
2KB
1KB
ATxmega8E5
8KB
1KB
512b
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E Analog to Digital Converter
 300 ksps
 12 bit resolution
 Single or continuous conversion modes
 Connected to Event System
 Connected to DMA Controller
 Internal and External voltage references
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E Digital to Analog Converter
 12 bit resolution
 Up to 300 ksps conversion rate
 Connected to Event System
 Connected to DMA Controller
 Two independent output channels
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E Analog Comparators
 Selectable hysteresis
 0, ~20mV, ~50mV selectable
 Flexible input selections
 Any analog input pin
 Bandgap voltage reference
 64-level VCC scaler
 Interrupts and events generation
 Window compare function by combining 2 comparators
 Detect level inside or outside window
 Possible to have comparator output on a pin
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E Timer/Counter
 One 16-bit timer/counter type 4 (high end)
 4 Output Compare Channels with 8 outputs
- 4 non-inverted output (High Side)
- 4 inverted output (Low Side)
 Dead-time insertion between high- and low-side
 Fault protection with asynchronous PWM shut-down
- Multiple and selectable triggers and restart conditions
 High-resolution extension
- Increase PWM resolution up to eight times (4 nS period)
 Two 16-bit timer/counters type 5 (standard)
 2 Output Compare or Input Capture Channels
 High-resolution extension
ELEKTOR live 2013 – AVR Microcontroller
Serial Communication Modules
 USART
 Full duplex asynchronous or synchronous operation
 SPI master mode
 Baud Rate Generator with fractional divider
- UART frequency crystals not needed
 SPI – Slave Serial Peripheral Interface
 Full duplex, three-wire synchronous data transfer
 Double buffered receive and transmit
 TWI – Two Wire Interface
 One master operation interface
 One slave operation interface
 100kHz, 400Khz and 1MHz operation
 I2C and SMbus compatible
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E Real Time Counter
 Separate Timer for Asynchronous Clock
 Independent of other Timer/Counters
 Works in Power Save, Idle and Active mode
 16-bit timer with Programmable Prescaler




Prescaler provides 1 Hz – 32 kHz input
Programmable top value
Compare register
Max timeout 65 536 seconds (= more than 18 hours)
 Can generate Events and Interrupts
 Overflow and compare match
 Digital calibration and correction for 32-768kHz XTAL error
 Correction of mount error down to +/- 1 ppm accuracy
ELEKTOR live 2013 – AVR Microcontroller
XMEGA Custom Logic Overview (XCL)
 Two independent units including:
 8-bit timer/counter
 Glue logic with programmable look up table (LUT)
- Defines a truth table of logical condition between inputs
- Delay elements for filter and synchronistaion
 Can be cascaded for more powerful features
 16-bit timer/counter, larger LUT
CPLD
CPLD0
Timer/Counter
Control Logic
Timer Period
Counter
Delay
Glue Logic
I
N
T
E
R
C
O
N
N
E
C
T
CPLD1
Timer/Counter
Control Logic
Timer Period
Counter
Delay
Glue Logic
Prescaler
I/O Pins
Event System
USARTs
Interrupts
Events
CLKPER
ELEKTOR live 2013 – AVR Microcontroller
AVR XMEGA E XCL - 8-bit Timer/Counters
 Two 8-bit timer/counter, with 16-bit cascade otion




Normal operation
Single-slope PWM
Input capture and frequency capture
LUT input
 Peripheral configuration:
 Receive events from selectable USART
- For count and restart actions,
 Provide event to USART
 Applications:
 UART, USART, master SPI with variable data length in
- 1 – 256-bit data lenght wthout software and I/O pin overhead
 Enables LIN and DALI communication
 Sensor applications: no IO pin need to signalize slot where data is
valid
ELEKTOR live 2013 – AVR Microcontroller
AVR® XMEGATM – Basics
XMEGA Training: Basics
ELEKTOR live 2013 – AVR Microcontroller
Introduction (1/2)
 AVR XMEGA datasheet information is divided in two parts:
Family Manual
Device datasheets
ATxmega A manual
ATxmega64A1 / 128A1 / ...
ELEKTOR live 2013 – AVR Microcontroller
Introduction (2/2)
 AVR XMEGA has more advanced header files for C programming than
previous AVRs.
 Slightly different syntax
 More advanced, not more complicated
 Better use of the features in the C language
ELEKTOR live 2013 – AVR Microcontroller
The header file differences
 What is different?
 structs are used for registers of a peripheral
 Bit masks, bit positions, group masks, group configurations for configuring
bits in each register
 Why the change?
 Easier to configure registers correctly
 Much easier to write generic drivers
ELEKTOR live 2013 – AVR Microcontroller
Register Names
 Longer descriptive names preferred over complex short forms
 DDRA is now PORTA.DIR
 PINA is now PORTA.IN
 UCSR0A is now USARTC0.CTRLA (This is USART 0 on port C)
 Try to avoid control-and-status registers
 Easier to read, write, and remember
 Application Note AVR1000
ELEKTOR live 2013 – AVR Microcontroller
Register configuration
 Bit position
 PORT_SLREN_bp = 7
 Bit mask
 PORT_SLREN_bm = 0b1000 0000 = 0x80
 Group mask
 PORT_OPC_gm = 0b0011 1000 = 0x38
 Group configuration
 PORT_OPC_PULLUP_gc = 0b0001 0000 = ( 0x02 << 3)
ELEKTOR live 2013 – AVR Microcontroller
Bit mask/bit position
 Use bit mask directly for setting a bit:
 PORTD.PIN0CTRL |= PORT_SRLEN_bm
 Or alternatively use bit position (like Mega/Tiny AVR):
 PORTD.PIN0CTRL |= ( 1 << PORT_SRLEN_bp )
 XMEGA header file definition:
#define PORT_SRLEN_bm 0x80 // Slew Rate Enable bit mask
#define PORT_SRLEN_bp 7 // Slew Rate Enable bit position
ELEKTOR live 2013 – AVR Microcontroller
Register Bits usage
 Single control and status bits
 Mask PORT_INVEN_bm and position PORT_INVEN_bp
 Set bit:
- PORTA.PIN0CTRL |= PORT_INVEN_bm;
PORTA.PIN0CTRL |= (1 << PORT_INVEN_bp);
 Clear bit:
- PORTA.PIN0CTRL &= ~PORT_INVEN_bm;
PORTA.PIN0CTRL &= ~(1 << PORT_INVEN_bp);
ELEKTOR live 2013 – AVR Microcontroller
Group mask
 Useful for clearing all bits of a specific configuration in a register
 Example:
 PORT_OPC_gm
 XMEGA header file definition:
 #define PORT_OPC_gm 0x38 // Output/Pull Configuration
group mask
 #define PORT_OPC_bp 3 // Output/Pull Configuration group
position
ELEKTOR live 2013 – AVR Microcontroller
Group configuration
 Group configuration
 One specific configuration of a group of bits
 Group configurations defined as enum in header file
 typedef enum PORT_OPC_enum { … } PORT_OPC_t;
 Value something defined as PORT_OPC_something_gc
 Enumerator types useful as function parameters – automatic checking
ELEKTOR live 2013 – AVR Microcontroller
Group configuration
 Example:
 PORT_OPC_PULLDOWN_gc
 All available configurations are shown in the XMEGA manual
ELEKTOR live 2013 – AVR Microcontroller
Group mask and group configuration usage
 Changing configuration – compact and efficient
 Clear all bits of previous configuration and set new configuration:
 PORTA.PIN0CTRL = ( PORTA.PIN0CTRL &
~PORT_OPC_gm ) |
PORT_OPC_PULLDOWN_gc;
ELEKTOR live 2013 – AVR Microcontroller
XMEGA header files
 If the definitions on the previous slides do not make sence to you:
 Don’t need to know how the peripherals are defined, but how to use it:
 PORTA.OUT = 0xff
 unsigned char value = PORTB.IN
ELEKTOR live 2013 – AVR Microcontroller
XMEGA I/O Ports
 Direction control
 PORTx.DIR
 Input and output
 PORTx.IN and PORTx.OUT
 Manipulation of direction register bits
 PORTx.DIRSET, PORTx.DIRCLR, and PORTx.DIRTGL
 Manipulation of output register bits
 PORTx.OUTSET, PORTx.OUTCLR, and PORTx.OUTTGL
 Application Note AVR1313
ELEKTOR live 2013 – AVR Microcontroller
XMEGA I/O Ports
ELEKTOR live 2013 – AVR Microcontroller
Output and Pull Configuration
 Individual pin control
 Pull-up or pull-down
 PORT_OPC_PULLUP_gc or PORT_OPC_PULLDOWN_gc
 Wired-AND or wired-OR
 PORT_OPC_WIREDAND_gc or PORT_OPC_WIREDOR_gc
 Bus keeper support
 PORT_OPC_BUSKEEPER
 Application Note AVR1313
ELEKTOR live 2013 – AVR Microcontroller
Configuring multiple pins
 Several pins can be configured at the same time
 MPCMASK register sets which pins are affected
 The following configuration of a pin is applied to all pins set in
MPCMASK
 Example:
 PORTA.MPCMASK = 0x0F;
 PORTA.PIN0CTRL =
( PORTA.PIN0CTRL & ~PORT_OPC_gm ) |
PORT_OPC_PULLUP_gc ;
→ All pins configured as pullup
ELEKTOR live 2013 – AVR Microcontroller
Pointers to Peripheral Modules
 Allows for generic code and drivers
 Access modules through pointers
 Some overhead when dereferencing pointers
 Great flexibility, saves code space
 Module struct allows for pointer referencing
 PORT_t * ledPort = &PORTD;
 void SetLEDs( PORT_t * port, unsigned char value );
ELEKTOR live 2013 – AVR Microcontroller
Timer/Counter
 Wide range of 8- and 16-bit Timer/Counters (TCNT)
 The AVR Timer/Counters can use various clock sources
 Main CPU clock
 Internal High speed PLL
- High speed, 64MHz
 By external clock source
- Max speed XTAL/2
 External 32kHz asynchronous crystal
 All clock sources can be pre-scaled before being fed to the Timer/Counters
 T/C are interrupt driven and controlled through the AVR IO memory
184
ELEKTOR live 2013 – AVR Microcontroller
Timer/Counter Features
 Overflow detection with interrupt
 Compare match detection with Interrupt



Own compare value registers
Pin change on compare match
TCNT clear on compare match
 Input Capture with Interrupt and Noise Canceller


Own capture counter value register
Input capture by the Analog comparator
 Real Time Counter with 32 kHz oscillator

Asynchronous to the main clock; separate 32kHz Crystal
 Pulse width Modulation (PWM) functionality




Selectable 2-Bit to 16-Bit Resolution on devices with 16-Bit Timer
High speed, up to 250kHz
Phase and Frequency Correct
PWM mode
Variable TOP value
Relevant Application Notes
AVR134 AVR304
185
ELEKTOR live 2013 – AVR Microcontroller
ERGÄNZUNGEN ZU UC3A3 (AUDIO) & UC3L
www.atmel.com
October 13
AVR and AVR32 TMM Call 4. May 2009
EVK1105 Digital Audio Gateway
ELEKTOR live 2013 – AVR Microcontroller
EVK1105 Digital Audio Gateway
Reference Design
 EVK1105 demonstrates the full potential of AVR32 AT32UC3A0512 in
digital audio applications
 Software audio decoders

Be prepared for changes in digital audio formats
 Complete HW and SW Reference Design





Play MP3 and WMA from a USB Mass Storage device
Control your iPod
Prepared for Internet radio
Prepared for Bluetooth®
Prepared for IEEE 802.15.4 / Zigbee PRO
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
EVK1105 Digital Audio Gateway
Target Applications
 USB Docking Station
 MP3 Player / iPod
 Mobile Phone / PDA
 Camera
 SD Card Player
 Car Radio
 Home Stereo
 Internet Radio
 Speaking appliances
Mar 2009
1
AVR and AVR32 TMM Call 4. May 2009
AT32UC3A3
ELEKTOR live 2013 – AVR Microcontroller
Introducing the new AVR32 AT32U3A3
 Audio playback

Single chip solution

Software audio decoding

High quality playback

iPod docking
 High speed communication

Hi-Speed USB

Dual SD card

NAND w/MLC ECC

Distributed SRAM
 Target Markets

Audio Playback

USB to SD Card Bridges

USB Dongles

USB Tokens
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
AVR32 UC3A3 – It is all about true performance
Instr.
MemIF
SRAM
64 KB
Data
 Improved DMA transfer speed
 Peripheral DMA
6-layer High Speed Bus Matrix
 Memory to Memory DMA
Peripheral Bridge
Peripheral DMA
Controller: 18 channels
USB
On-The-Go
 Eliminate on-chip
communication bottleneck
 Avoid DMA collision
 Remove delay and latency
PDC
PDC
PDC
PDC
USART
SPI
x2
TWI
x2
SSC
x1
x4
Timer PWM
3 ch 3 ch
PDC
PDC
ADC
8 ch
Audio
DAC
User Peripherals
Mar 2009
1
EBI / ECC
MPU
SRAM 32 KB
 2 x 32 KB BUS SRAM
AVR32 CPU
66 MHz
Flash
 64 KB dual port CPU RAM
JTAG/
Nexus
OCD
SRAM 32 KB
 128 KB SRAM on-chip SRAM
split into 3 regions
ELEKTOR live 2013 – AVR Microcontroller
EVK1104 – AVR32 UC3A3 Evaluation Kit
Mar 2009
1
AVR and AVR32 TMM Call 4. May 2009
AT32UC3L - picoPower
ELEKTOR live 2013 – AVR Microcontroller
UC3L
 picoPower™ Technology

Industry’s lowest power consumption

Down to 0.5 mW/MHz

1.6µA with RTC running

100nA in Shutdown mode

SleepWalking™

1.62 – 3.6V operation
 Integrated Hardware QTouch

Use QTouch as any other peripheral

Wake up from sleep with a touch button
 FlashVault™ code protection

Partially program and lock the flash

Protect your software IP
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
UC3L – Further Cutting Edge Innovations
Improved Reliability and Reduced Cost
 Peripheral Event System
 PWM on all GPIO pins
 High precision clock system







Digital frequency lock loop
Crystal osc. precision tuner
Clock failure protection
Ultra low power oscillators
Frequency meter
RTC with calendar mode
Windowed watchdog timer
 9 channel 12 bits ADC
 8 channel Analog Comparator
 Advanced Debug Functionality
 Advanced Trace
Mar 2009
1
ELEKTOR live 2013 – AVR Microcontroller
QUIZ MIT PREISVERLEIHUNG
www.atmel.com
October 13
ELEKTOR live 2013 – AVR Microcontroller
www.atmel.com
October 13
Download