0% found this document useful (0 votes)
10 views

AVR Introduction

The document provides an introduction to AVR microcontrollers from Atmel. It discusses the growing AVR family which includes Tiny, Mega, and application specific AVRs. The AVR architecture is scalable, has a RISC design with single cycle execution, 32 working registers, and high code density. An example C function shows compact code size. Benchmarks demonstrate AVR's competitive code size and execution speed compared to other microcontrollers. AVR offers high levels of integration and in-system programming/debugging capabilities.

Uploaded by

pajedrez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

AVR Introduction

The document provides an introduction to AVR microcontrollers from Atmel. It discusses the growing AVR family which includes Tiny, Mega, and application specific AVRs. The AVR architecture is scalable, has a RISC design with single cycle execution, 32 working registers, and high code density. An example C function shows compact code size. Benchmarks demonstrate AVR's competitive code size and execution speed compared to other microcontrollers. AVR offers high levels of integration and in-system programming/debugging capabilities.

Uploaded by

pajedrez
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

AVR Introduction

© Atmel Norway 2005


AVR Microcontrollers

www.atmel.com AVR Introduction 1


The Growing AVR Family

• TINY
TheAVR family AVR Family
Growing
• 8 - 32 pin general purpose microcontrollers
• 16 family members

• MEGA AVR family


• 32 - 100 pin general purpose microcontrollers
• 23 family members

• ASSP AVRs
• USB, CAN and LCD
• Motor Control and Lighting
• Automotive
• Battery Management
• 8 family members

www.atmel.com AVR Introduction 2


Scalable

• Devices range from 1 to 256KB

• Pin count range from 8 to 100

• Full code compatibility

• Pin/feature compatible families

• One set of development tools

www.atmel.com AVR Introduction 3


AVR Architecture

• RISC architecture with CISC instruction set


• Powerful instruction set for C and Assembly

• Scalable
• Same powerful AVR core in all devices

• Single cycle execution


• One instruction per external clock
• Low power consumption

• 32 Working Registers
• All Directly connected to ALU!

• Very efficient core


• 20 MIPS @ 20MHz

• High System Level Integration


• Lowest total system cost
www.atmel.com AVR Introduction 4
Single Cycle Execution

Register File

Register operations
take ONE clock pulse
on the EXTERNAL clock ALU
input

20MIPS @ 20MHz
www.atmel.com AVR Introduction 5
High Code Density

• Architecture designed for C

• 32 general registers

• C-like addressing modes

• 16- and 32-bit arithmetic support

• Linear address maps

www.atmel.com AVR Introduction 6


AVR Influenced by IAR

• Architecture and Instruction Set co-designed with IAR systems


through several iterations:
• Compiler development project initiated before architecture and instruction
set frozen
• Compiler experts’ advice implemented in hardware
• Potential HLL bottlenecks identified and removed

Auto Increment/Decrement Example:

C Source:
unsigned char *var1, *var2;
*var1++ = *--var2;

Generated assembly code:


LD R16,-X
ST Z+,R16

www.atmel.com AVR Introduction 7


Example: A Small C Function

/* Return the maximum value of


a table of 16 integers */

int max(int *array)


{
char a;
int maximum=-32768;

for (a=0;a<16;a++)
if (array[a]>maximum)
maximum=array[a];
return (maximum);
}

www.atmel.com AVR Introduction 8


Code Size and Execution Time

Max Speed Code Size Execution Time


Device [MHz] [Bytes]
Cycles [uS]
ATmega16 16 32 227 14.2
MSP430 8 34 246 30.8
T89C51RD2 20 57 4200 210.0
PIC18F452 40 92 716 17.9
PIC16C74 20 87 2492 124.6
68HC11 12 59 1238 103.2

• MSP430 and AVR are running a close race


• But max speed on MSP430 is only 8MHz

• The C51 would have to run at 296 MHz to match the 16 MHz AVR

• PIC18 seems fast but require 3 times as much code space.

www.atmel.com AVR Introduction 9


Benchmark: Real-life Applications

• Complete navigation application

• C bitfields

• Car Radio control

• DES encryption / decryption

• Three different modules from analog telephones

• Reed-Solomon (error correction) encoder/decoder

• Pager protocol

• Refridgerator control

• Battery charger

• Embedded web server

• Label/recite printer
www.atmel.com AVR Introduction 10
Benchmark – Code size

ST five

COP8

PICmicro® 16, 17

68HC16

PICmicro® 18

MAXQ

c80xx251

8051

68HC08

78K4

H8/300

SAM8

TMP68HC11

eZ80

M16C/1x-3x, M16C/6x

ST7

68HC12

MSP430

mega128

0,0 % 50,0 % 100,0 % 150,0 % 200,0 % 250,0 % 300,0 %

www.atmel.com AVR Introduction 11


High Integration

NV-memory

Analog
AVR core

Serial
Interfaces

Digital

www.atmel.com AVR Introduction 12


AVR – Single-Chip Solution

TWI USART SPI


EEPROM
Analog Hardware
OTP Memory
Reference Multiplier
Analog
CPU CORE SRAM
Temperature Comparator
Sensor
A/D Converter Register File I/O pins

Brown Out
Detector Output
Driver

Watchdog
Many uC
In- Circuit only give you this
Emulator Programming
Circuitry

Test LCD driver


Fixtures

www.atmel.com AVR Introduction 13


AVR – Single-Chip Solution

TWI USART SPI

Hardware
Flash EEPROM
Multiplier
Analog
CPU CORE SRAM
Temperature Comparator
Sensor
A/D Converter Register File I/O pins

Brown Out Analog Pull-Ups


Detector Reference On Demand
Reset High Current Output
Circuitry Outputs Driver
Programmable Calibrated
Watchdog Oscillator
On-Chip In System
Debug Programming
Boundary LCD
JTAG
Scan Interface

LCD driver
AVR Integrates Much More!

www.atmel.com AVR Introduction 14


Highest System Level Integration

www.atmel.com AVR Introduction 15


In-System Development

• In-System Programming

• In-System Debugging

• In-System Verification

www.atmel.com AVR Introduction 16


AVR Self-Programming

• Redefining ISP Self-Programming


• The AVR reprograms itself
• Any existing communication interface
• Any voltage
• Any frequency

• Critical functions still operating


• Run code during programming (Read-While-Write)

• Software controlled programming


• Firmware updates
• Parameter updates

www.atmel.com AVR Introduction 17


Boot Loader and Application Section
• The Flash program memory

• is divided into two sections


• Application Section
• Boot Loader Section

• The two sections enables the AVR to


handle two independent applications
• The Application section contain the main
application
• The Boot Loader section contain a Flash
programming application

• Note that small AVRs does not divide


the Flash
• The whole Flash can be considered as a Boot
Loader
• Only on devices with 4K Flash or less

www.atmel.com AVR Introduction 18


Self-Programming Flexibility

• AVR Self-Programming is controlled by SW


• SPM instruction controls self-programming
• SPM is an AVR core feature
• Not a hard-coded firmware, but a part of the customer application

• The AVR updates its own Flash while running


• Similar to AVR EEPROM access
• Critical functions in the customers application can be maintained

• The upgrade data can be received from any interface


• No restricted communication protocol or interface
• No external hardware

• No restrictions to Vcc or Clock frequency

www.atmel.com AVR Introduction 19


All AVRs have In System Debugging

• JTAG interface • debugWIRE interface


• On High pin-count devices • On Low pin-count devices

• Uses 4 general I/O pins • Uses only Reset pin

Compared to JTAGs four pins, debugWIRE uses only one; Reset.


This is a big advantage on low pin count devices
www.atmel.com AVR Introduction 20
Development Tools

• AVR Studio - front end for all AVR tools


• Free

• Starter kits and evaluation boards


• From $19

• On-Chip Debuggers and Emulators


• From $299

www.atmel.com AVR Introduction 21


Support

• Fully updated product web

• Highly skilled Field Application Engineers

• Support mail handled by AVR experts

• Reference designs

• Application notes

• AVRfreaks community website

www.atmel.com AVR Introduction 22


Summary

• High performance

• Low power consumption

• High code density

• Advanced memory technology

• High integration

www.atmel.com AVR Introduction 23

You might also like