avr单片机全系列选型指南
- 格式:pdf
- 大小:292.48 KB
- 文档页数:17
AVR 工具指南(一)ATMEL 公司的AVR 单片机,是增强型RISC 内载Flash 的单片机,芯片上的Flash 存储器附在用户的产品中,可随时编程,再编程,使用户的产品设计容易,更新换代方便。
AVR 单片机采用增强的RISC 结构,使其具有高速处理能力,在一个时钟周期内可执行复杂的指令,每MHz 可实现1MIPS 的处理能力。
AVR 单片机工作电压为2.7-6.0V,可以实现耗电最优化。
AVR 的单片机广泛应用于计算机外部设备,工业实时控制,仪器仪表,通讯设备,家用电器,宇航设备等各个领域。
今天给大家介绍一下AVR 工具指南,特别针对WIZnet 的AVR 模块编程有详细讲解。
1.WinAVRWinAVR 是Atmel AVR 系列RISC 微处理器在Windows 平台下执行的一款开源开发工具套件。
它包含了GNU GCC 编译器。
最新版本可以从sourceforge/projects/winavr 上面下载。
1.1.安装1)运行CD 中的WinAVR-20050214-install.exe.2)你可以将绝大多数的设置保留为其默认值。
3)为了方便起见,选择默认安装位置为c:WinAVR.图1‑1. WinAVR 目录c:WinAVR in目录包含有适合的软件开发工具集,其中包含有GNU binutils, GNU GCC 和objtool。
c:WinAVRutils in包含有为Windows 准备的各种Unix 或者GNU 程序。
它包含sh(bash)和许多其他的东西。
c:WinAVRavrinclude 包含有AVR-GCC 头文件。
c:WinAVRavrlib 包含有AVR-GCC 库文件。
1.2.编译1.2.1.生成文件有一个程序将所有这一切集中在了一起。
该程序就是GNU make。
该制作程序读取并解释一个生成文件。
生成文件是是一个由你写入的文本文件,列出并控制如何制作。
它常被用来控制软件的制作。
第1章A VR单片机概述A VR单片机是Atmel公司于20世纪90年代中后期开发出的一种8位单片机。
这种单片机采用RISC内核,具有使用灵活、高性能、低功耗等特点。
此外,在某些情况下,A VR 处理器甚至可以独自成为一种片上系统,完成极其复杂的功能。
目前,该型号单片机已经展示出极其强大的生命力,在国防、工业、农业、企业管理、交通运输、日常生活等各个领域得到了广泛应用。
本章主要介绍A VR单片机的发展历史及其主要应用,围绕A Tmega128(L)单片机,分析其结构、主要特点、性能封装和引脚定义。
1.1 AVR与51单片机单片机嵌入式系统的硬件基本构成分为两大部分:单片微控制器芯片和外围的接口电路。
其中,单片微控制器是构成单片机嵌入式系统的核心。
为了强调其控制属性,也可以把单片机称为微控制器MCU。
在国际上,“微控制器”的叫法似乎更通用一些,而我国比较习惯使用“单片机”这一名称。
单片机因将计算机的主要组成部分集成在一个芯片上而得名,具体地说就是把中央处理单元CPU、随机存储器RAM、只读存储器ROM、中断系统、定时器/计数器以及I/O接口电路等主要微型机部件集成在一块芯片上。
因此,一片芯片构成了一个基本的微型计算机系统。
由于单片机芯片的微小体积,极低的成本和面向控制的设计,使得它作为智能控制的核心器件被广泛地应用于嵌入到工业控制、智能仪器仪表、家用电器、电子通信产品等各个领域中的电子设备和电子产品中。
可以说由单片机为核心构成的单片机嵌入式系统已成为现代电子系统中最重要的组成部分。
早期的单片机都是8位或4位的,其中最成功的是Intel的8031,因为其简单可靠而性能不错获得了很大的好评。
此后,在8031上发展出了MCS-51系列单片机系统。
基于这一系统的单片机系统直到现在还在广泛使用。
随着工业控制领域要求的提高,开始出现了16位单片机,但因为性价比不理想并未得到很广泛的应用。
20世纪90年代后随着消费电子产品的大发展,单片机技术得到了巨大的提高。
AVR 开发工具与入门芯片选择,AVR开发工具选型指南AVR 开发工具介绍要开发AVR系统,编写AVR程序,你需要有软件环境【ICC+AVRstudio环境配置】,也需要有硬件环境,本文介绍硬件环境的选择与入门芯片的配备。
硬件环境:主要是有基本系统『最小系统』,编程器,仿真器,下面就这三方面做一些介绍。
推荐的工具:JTAG 仿真器使用AVR Studio 打开*.cof 或*.elf 仿真文件后,就能进行仿真操作。
方便开发时测试与调试。
支持仿真的芯片:ATmega16、ATmega32、ATmega64、ATmega128、ATmega323、ATmega162 、ATmega165,但是这款官方的MKii 价格不菲,2380元每台。
兼容产品:推荐原因:1.这是本网站最新开发的功能小板,考虑到了实际中的不同应用场合的需要。
2.本网站的新手入门系列范例,及即将公布的系列应用范例,均以这块小板作为开发板。
3.这块小板集成了以下的功能:(1).采用3v3/5V 电压,两种电压可随意切换。
供电输入电压7.5V-9V,可使用本网站推荐的9V开关电源。
(2).外晶振7.3728M(3).复位电路与按钮(4).集成串行接口,串行口在各种各样的工程中被广泛使用。
(5).ISP接口(6).JTAG接口(7).小板的输出为标准的M16直插封装,小板可以直接插在普通的IC座上,方便实验。
(8).标准的排针孔,我们提供排针(未焊接)。
你也可以做他用,方便可靠。
4.由于上面的M16功能小板已经集成了许多必须的功能,故真正应用时,大家只需要关心应用线路, 故应用PCB板可以做得很简单。
请点击此处查看本网站提供的详细技术资料(包括电路图等)推荐的开发板:增强版AVR开发板,支持Mega16,Mega32,AT90S8535/AVR_ATmega16_ATmega32_AT90S8535.html增强版AVR mega16/32开发板是AVR与虚拟仪器全新开发的一款AVR开发板,适应芯片AT90S8535,ATmega16,ATmega32。
简易AVR单片机教程简介AVR单片机是一种低功耗、高性能的微控制器,由Atmel公司开发并广泛应用于嵌入式系统的开发中。
本教程将介绍AVR单片机的基本知识以及编程技巧,帮助初学者快速入门。
目录1.AVR单片机概述2.硬件基础– 2.1 芯片选型– 2.2 电路设计– 2.3 连接方式3.编程环境搭建– 3.1 AVR Studio– 3.2 AVR编程语言– 3.3 编译与烧录4.基本功知识– 4.1 GPIO控制– 4.2 定时器与计数器– 4.3 中断处理5.进阶内容– 5.1 PWM控制– 5.2 串口通信– 5.3 ADC模数转换6.实例项目– 6.1 LED灯控制– 6.2 电机控制– 6.3 温湿度监测1. AVR单片机概述AVR(Alf-Egil Bogen, Vegard Wollan, Ragnar Melland)单片机是Atmel公司推出的一款低功耗高性能的微控制器。
它采用RISC架构,具有较高的运算速度和较低的功耗。
由于其易于学习和使用的特点,AVR单片机被广泛应用于嵌入式系统的开发中。
2. 硬件基础2.1 芯片选型在开始使用AVR单片机之前,我们首先需要选择合适的芯片。
Atmel公司生产了多种型号的AVR单片机,各具特色。
在选择芯片时,我们需要考虑以下几个因素:•项目需求:根据项目的具体需求(如GPIO数量、模拟输入输出等),选择适合的芯片型号。
•价格:芯片的价格也是选择的一个重要因素,需要根据项目的预算进行合理选择。
•开发工具支持:确保选择的芯片在目标开发工具中有良好的支持,以便后期开发和调试。
2.2 电路设计在使用AVR单片机之前,我们还需要进行电路设计。
简单的AVR 单片机电路设计包含以下几个关键组成部分:•电源电路:AVR单片机需要稳定的电源来正常工作。
一般使用电源滤波电容、稳压电路等来提供稳定的电压。
•复位电路:AVR单片机上电时需要复位,复位电路可通过连接一个复位电阻和电容实现。
51、AVR、PIC、MSP430、ARM五大单片机全解析时间:11-27 15:25 阅读:2071次51是最老的8为单片机。
avr包含很多mega64/48/128/256是16位。
dsp是专门处理数据的高速信号处理的芯片。
fpga是内部集成了逻辑电路的芯片。
简介:据统计,我国的单片机年容量已达1-3亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。
这说明单片机应用在我国才刚刚起步,有着广阔的前景。
培养单片机应用人才,特别是在工程技术人员中普及单片机知识有着重要的现实意义。
当今单片机厂商琳琅满目,产品性能各异。
针对具体情况,我们应选何种型号呢?首先,我们来弄清两个概念:集中指令集(CI SC)和精简指令集(RISC)。
采用CISC结构的单片机数据线和指令线分时复用,即所谓冯。
诺伊曼结构。
它的指令丰富,功能较强,但取指令和取数据不能同时进行,速度受限,价格亦高。
采用RISC结构的单片机数据线和指令线分离,即所谓哈佛结构。
这使得取指令和取数据可同时进行,且由于一般指令线宽于数据线,使其指令较同类CISC单片机指令包含更多的处理信息,执行效率更高,速度亦更快。
同时,这种单片机指令多为单字节,程序存储器的空间利用率大大提高,有利于实现超小型化。
8051单片微型计算机简称为单片机,又称为微型控制器,是微型计算机的一个重要分支。
单片机是70年代中期发展起来的一种大规模集成电路芯片,是CPU、RAM、ROM、I/O接口和中断系统于同一硅片的器件。
80年代以来,单片机发展迅速,各类新产品不断涌现,出现了许多高性能新型机种,现已逐渐成为工厂自动化和各控制领域的支柱产业之一。
AVR和pic都是跟8051结构不同的8位单片机,因为结构不同,所以汇编指令也有所不同,而且区别于使用CISC指令集的8 051,他们都是RISC指令集的,只有几十条指令,大部分指令都是单指令周期的指令,所以在同样晶振频率下,较8051速度要快。
51、PIC、AVR、16、32-BIT系列单片机区别与特点8031/8051/8751是Intel公司早期的产品。
1、8031的特点8031片内不带程序存储器ROM,使用时用户需外接程序存储器和一片逻辑电路373,外接的程序存储器多为EPROM的2764系列。
用户若想对写入到EPROM中的程序进行修改,必须先用一种特殊的紫外线灯将其照射擦除,之后再可写入。
写入到外接程序存储器的程序代码没有什么保密性可言。
2、8051的特点8051片内有4k ROM,无须外接外存储器和373,更能体现“单片”的简练。
但是你编的程序你无法烧写到其ROM中,只有将程序交芯片厂代你烧写,并是一次性的,今后你和芯片厂都不能改写其内容。
3、8751的特点8751与8051基本一样,但8751片内有4k的EPROM,用户可以将自己编写的程序写入单片机的EPROM中进行现场实验与应用,EPROM的改写同样需要用紫外线灯照射一定时间擦除后再烧写。
由于上述类型的单片机应用的早,影响很大,已成为事实上的工业标准。
后来很多芯片厂商以各种方式与Intel公司合作,也推出了同类型的单片机,如同一种单片机的多个版本一样,虽都在不断的改变制造工艺,但内核却一样,也就是说这类单片机指令系统完全兼容,绝大多数管脚也兼容;在使用上基本可以直接互换。
人们统称这些与8051内核相同的单片机为“51系列单片机”,学了其中一种,便会所有的51系列。
4、AT89C51、AT89S51的特点在众多的51系列单片机中,要算ATMEL 公司的AT89C51、AT89S51更实用,因他不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为ATMEL AT89xx 做的编程器均带有这些功能。
显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。
写入单片机内的程序还可以进行加密,这又很好地保护了你的劳动成果。
AVR MicrocontrollersATMEL® CORPORATIONA VR® Microcontrollers: Product Line ReferenceJanuary 2006 Customer EditionTable of Contents1AVR Product Family (2)1.1P RODUCT S ELECTION G UIDE - TINY AVR® (2)1.2P RODUCT S ELECTION G UIDE - MEGA AVR® (3)1.3P RODUCT S ELECTION G UIDE – PICO P OWER™AVR (4)1.4P RODUCT S ELECTION G UIDE –AVR32 (4)1.5P RODUCT S ELECTION G UIDE – MEGA AVR LCD AND ASSP AVR (5)1.6P RODUCT S ELECTION G UIDE –AVR Z-L INK® (5)1.7P RODUCT S ELECTION G UIDE –A UTOMOTIVE AVR (6)2Application Area in Focus: Comparing power consumption (7)2.1.1AVR BOD vs. TI BOR (7)2.1.2Protection in sleep modes (8)2.2O VERALL POWER CONSUMPTION (8)3AVR Development Tools (9)3.1T OOLS R EFERENCE (9)3.2AVR S TUDIO®T OOLS AND D EVICE S UPPORT (10)4Documentation (12)4.1D ATASHEETS (12)4.2A PPLICATION N OTES (13)2 Application Area in Focus: Comparing power consumptionWritten by: Andreas Eieland, Applications Engineer, System Solutions GroupFigure 1 Atmel picoPower technologyIt is a known fact that there are two main competitors in the ultra low power MCU market. Atmel with the picoPower megaAVRs and Texas Instruments (TI) with the MSP430F2xx series.Lately there has been debate among development engineers, which MCU is the lowest power consumer. In most cases these discussions are based on readouts from datasheets and not real world applications. When using the datasheets to compare parts it is paramount to compare apples to apples to get the numbers right.We will address this and other issues that are important when comparing AVRs to MSP430s in this article. 2.1.1 AVR BOD vs. TI BORMany compare the TI Brown-out reset (BOR) to the AVR Brown-out detect (BOD), based on this they claim that TI have lower power consumption. This is not correct. The TI BOR circuitry is comparable in functionality, power consumption, and protection level to the AVR Power-on-Reset circuitry. The TI BOR and the AVR POR are both considered being “Zero-Power”.To achieve the same level of protection as the AVR BOD, which is present on all picoPower megaAVRs, you have to use the TI Supply Voltage Supervisor (SVS). The SVS is not present on any parts in the ultra low power MSP430F2xx series. It is only available onlarger, more expensive MSP430s. Figure 2: the Atmel picoPower BOD response timeWhen enabled the TI SVS is active in all operating modes. The additional current consumed by the SVS is maximum 15 µA. Though the AVR sleeping BOD has a slightly higher maximum consumption of 20 µA in active mode, power is saved compared to the SVS and other traditional BODs byautomatically disabling the BOD during sleep mode. The BOD is automatically re-enabled when the controller wakes up from sleep mode and is active before the AVR executes any instructions. This approach provides superior protection with substantially less power drain as the majority of the time is normally spent in sleep mode in low power applications – not in active mode.2.1.2Protection in sleep modes.The accuracy of BODs is directly proportional to the current they consume. Low- or zero-power BODs tend to be both slow and inaccurate, while more accurate, faster BODs consume more power. Since BODs usually remain on in sleep mode, they represent a substantial drag on battery life. As a result, most vendors of ultra low power MCUs, sacrifice accuracy and speed to reduce current consumption.In some comparisons it is claimed that the sleeping BOD does not provide sufficient protection in sleep modes since the Brown out detector is turned off. This claim is based on the belief that one cannot predict when a brown out condition occurs. This is not true! In any battery powered system the voltage drops when the current consumption is high. The current consumption is high when the device is in active mode. If the battery voltage drops to below the BOD threshold while the part is in sleep mode, there will be no Flash or EEPROM corruption. The POR is active in all operating modes and will prevent the MCU from performing illegal or undefined operations inside the MCU and on the I/O pins. When the part wakes up, the BOD will trigger immediately if the voltage is to low. This ensures that no code is executed when the system behavior is undefined. With the sleeping BOD the picoPower controllers get the best of both worlds, very good protection while in active mode, and no power consumption penalty in sleep.2.2Overall power consumptionThere is no family of microcontrollers today that will have the lowest power consumption in all possible applications. Power consumption will always be dependent on the suitability of the MCU to the application. We do however claim that the AVR picoPower devices are the market leader in ultra low power technology, as it will give the lowest power consumption in the majority of applications.Comparing total power consumption for an application implemented with different controllers is a complex task. Things one has to take into consideration are energy consumed per instruction, amount of instructions needed to perform the operation, and how long time the application can stay in sleep. Depending on the level of system integration on the MCU, it might be necessary to add extra components to the design. The additional power consumption from these parts must also be added. The MSP430 BOR is an example of this. The BOR has a very slow response time and does not give sufficient protection in many high-speed systems. An external BOD is needed to ensure reliable operation, this adds to the total current consumption. The rule of thumb to reduce power consumption for all MCUs, when not considering external circuitry, is to stay in active mode for the shortest possible time, go to the deepest possible sleep-mode, and stay in the sleep mode for the longest possible time before waking up again. The time spent in active mode is very short for most low-power applications. Hence it is the power consumption in sleep that will make or break the power budget.Figure 3 Average power consumption exampleThe computational performances of the AVR and MSP430 cores are in the same range. For some applications the AVR is better, for other the MSP430 is better. As with power consumption there is no single part, or family of parts, that give the best performance for all applications. The MSP430 is a 16 bit MCU and will be better than the AVR in many applications that use 16 bit arithmetic’s, but the AVR uses fewer cycles in most other applications.AVR MCUs can run up to 25% faster than the MSP430F2xx series. In addition to this the picoPower megaAVRs has lower power consumption than TI in sleep modes and does not require an external BOD. Shorter time in active mode combined with lower power consumption in sleep gives the AVR picoPower devices lower overall power consumption than the MSP430F2xx in most ultra low power applications.Figure 4 Atmel AVR picoPower devicesFor more information about AVR picoPower see: /products/AVR/picopower/3A VR Development ToolsAtmel provides a complete range of development tools for the AVR products.3.1Tools ReferencePart Number DescriptionSoftwareAVR Studio 4.12 Front end software for AVR development toolsStarter KitsSTK500 AVR Starter Kit with AVR Studio InterfaceSTK501 Expansion of STK500 to support 64-pin megaAVR devicesSTK502 Expansion of STK500 for 64-pin LCD AVR devicesSTK503 Expansion of STK500 for 100-pin megaAVR devicesSTK504 Expansion of STK500 for 100-pin LCD AVR devicesSTK505 Expansion of STK500 for 14-pin SOIC and 20-pin PDIP AVR devicesSTK520 Expansion of STK500 for 90PWM devicesSTK525 Starter Kit for AT90USB devicesSTK1000 Starter Kit for AVR32AP7xxx devicesEvaluation Kits90EIT1 AVR Embedded Internet Tool KitAVRBFLY ATmega169 Demo Board with LCD and SpeakerAVRMC100 BLDC Motor Control with AT90PWM3AVRMC200 AC Induction Motor KitAVRMC201 Induction Motor for ATAVRMC200AVRFBKIT DALI Dimmable Fluorescent Ballast KitAVRRTOS AVR Real Time Operating System development kitPart Number Description90USBKEY AVR USB Key Demonstration KitAVRRZ200 Z-Link Demonstration KitAKSTK512-3 RemoteAccessControl – Unidirectional Kit 315 MHzAKSTK512-4 RemoteAccessControl – Unidirectional Kit 434 MHzDevelopment KitsDVK90CAN1 DVK90CAN1 Development Kit for AT90CAN devicesAVRSB100 Smart Battery Development Kit for Atmega406AVRISP2 ISP programmer for all AVR ISP devicesAVRRZ502 Z-Link RF Accessory KitAVRDRAGON Starterkit supporting On-Chip Debugging and programming for AVR. (AVR Dragon will support OCD for all AVRs with 32 kB or less Flash memory and programming for all AVRs. Sesection “AVR Studio Tools and Device Support” for current device support. More devicesupport will be available soon )EmulatorsICE50 AVR In-Circuit Emulator for all megaAVR and new tinyAVR devices.JTAGICE2 JTAGICE mkII On-Chip Debugger supporting all AVR and AVR32 with debugWIRE or JTAG interfaceJTAGPROBE JTAGICE mkII Probe including Flex CablesADAPTEST ICE50 Test AdapterADAPMEGA8 ICE50 Mega8 PDIP personality adapterADAPMEGA32 ICE50Mega8535/16/32PDIP personality adapterADAP128_TOP ICE50 Mega64/128 TQFP personality adapter (top module); requires one AT64PSKT_BOT as the bottom moduleADAP169_TOP ICE50 Mega169 TQFP personality adapter (top module); requires one AT64PSKT_BOT as the bottom moduleADAPMEGA162 ICE50 Mega8515/162 PDIP personality adapterADAPTINY26 ICE50 Tiny26 PDIP personality adapterADAPTINY13 ICE50 Tiny13 PDIP personality adapterADAPT2313 ICE50 Tiny2313 PDIP personality adapterATADAPCAN01 STK500/501 90CAN128 CAN adapterICE50MEM ICE50 memory extension card for mega2560/2561ICE50PROBE ICE40/50 Probe including Flex CablesICE50POD ICE40 and ICE50 POD replacement kit3.2AVR Studio® Tools and Device SupportAVR Studio 4.12 with the latest Service Pack supports all new Atmel debug platforms and devices. Some of the old devices are not supported. See below for a table of currently supported tools and devices in AVR Studio. This support is in progress, and the table below is not guaranteed to be complete when this is read. This information can also be found in the AVR Studio online help and on /avrThe latest AVR Studio SW can be found on: /dyn/products/tools_card.asp?tool_id=2725Device Simulator/AssemblerJTAGICEmkII Starter kitAVRDragonAVR ISPmkIIATtiny11 • STK500ATtiny12 • STK500 •ATtiny13 ••STK500 ••ATtiny15 • STK500 •ATtiny24 ••STK500 + STK505 •ATtiny25 ••STK500 ••ATtiny26 •STK500 (+ STK505) •Device Assembler mkII Starter kit Dragon mkII ATtiny261 ••STK500 (+ STK505) •ATtiny28 • STK500ATtiny44 ••STK500 + STK505 •ATtiny45 ••STK500 ••ATtiny461 ••STK500 (+ STK505) •ATtiny84 ••STK500 + STK505 •ATtiny85 ••STK500 ••ATtiny861 ••STK500 (+ STK505) •ATtiny2313 ••STK500 ••ATmega48 ••STK500 ••ATmega8 • STK500 •(Programmingonly)•ATmega88 ••STK500 ••ATmega8515 • STK500 •ATmega8535 • STK500 •ATmega16 ••STK500 ••ATmega162 ••STK500 •ATmega164P ••STK500 •ATmega165 ••STK500 + STK502 •ATmega165P ••STK500 + STK502 •ATmega168 ••STK500 ••ATmega169 ••STK500 + STK502 •ATmega169P ••STK500 + STK502 •ATmega32 ••STK500 ••ATmega324P ••STK500 •ATmega325 ••STK500 + STK502 •ATmega325P ••STK500 + STK502 ••ATmega3250 ••STK500 + STK504 •ATmega3250P ••STK500 + STK504 ••ATmega329 ••STK500 + STK502 •ATmega329P ••STK500 + STK502 ••ATmega3290 ••STK500 + STK504 •ATmega3290P ••STK500 + STK504 ••ATmega64 ••STK500 +STK501 •ATmega640 ••STK500 + STK503 •ATmega644 ••STK500 •ATmega644P ••STK500 •ATmega645 ••STK500 + STK502 •ATmega6450 ••STK500 + STK504 •ATmega649 ••STK500 + STK502 •ATmega6490 ••STK500 + STK504 •ATmega128 ••STK500 + STK501•(Programmingonly)•ATmega1280 ••STK500 + STK503 •ATmega1281 ••STK500 + STK501 •ATmega2560 ••STK500 + STK503 •ATmega2561 ••STK500 + STK501 •ATmega406 ••AT90CAN32 ••STK500 + STK501 +ATADAPCAN1•AT90CAN64 ••STK500 + STK501 +ATADAPCAN1•Device Assembler mkII Starter kit Dragon mkIIAT90CAN128 ••STK500 + STK501 +ATADAPCAN1•AT90PWM2 ••STK500 + STK520 •AT90PWM3 ••STK500 + STK520 •AT90USB646 ••STK500 + STK525 •AT90USB647 ••STK500 + STK525 •AT90USB1286 ••STK500 + STK525 •AT90USB1287 ••STK500 + STK525 •AT32AP7000 •STK1000AT32AP7001 •STK1000AT32AP7002 •STK10004DocumentationAll documents listed can be downloaded from Atmel Corporation’s web site: underthe product section. For other documentation, please send your request to avr@.4.1DatasheetsThe datasheets of all AVR devices can be downloaded.AVR: /dyn/products/datasheets.asp?family_id=607.AVR32: /dyn/products/datasheets.asp?family_id=682Family Devices LanguagePreliminary Summary Complete LastUpdate Auto AVR ATtiny25/45/85 Automotive English X X 09/2006 Auto AVR ATmega48/88/168 Automotive English X 09/2006 Auto AVR ATmega88 Automotive - 150°CSpecification - Appendix AEnglish X 09/2006 Auto AVR AT90CAN128 Automotive English X X 09/2006 CAN AVR AT90CAN32/64/128 English X X X 11/2006 CAN AVR AT90CAN128 English X X 05/2006 LCD AVR ATmega169(V English X X 07/2006 LCD AVR ATmega169(V) Chinese X X 9/04 LCD AVR ATmega329/3290/649/6490 English X X X 11/2006 USB AVR AT90USB1287/1286/646/647 English X X 02/06 Lighting AVR AT90PWM2, AT90PWM3 English X X 12/2006AVR Z-Link AT86RF230 ZigBee™/IEEE802.15.4-Transceiver English X X06/2006megaAVR ATmega48/88/168 EnglishXXX12/2006 megaAVR ATmega48/88/168 ChineseX X02/05 megaAVR ATmega8(L) English X X10/2006 megaAVR ATmega8(L) Chinese X7/04 megaAVR ATmega8515(L) English X X10/2006 megaAVR ATmega8515(L) Chinese X9/04 megaAVR ATmega8535(L) EnglishX X X10/2006 megaAVR ATmega8535(L) ChineseX X9/04 megaAVR ATmega16(L) English X X10/2006 megaAVR ATmega16(L) Chinese X10/04 megaAVR ATmega162(V) English X X 04/06 megaAVR Atmega164P/324P/644P EnglishX X X10/2006 megaAVR ATmega165(V) English X X X08/2006 megaAVR ATmega32(L) English X X10/2006 megaAVR ATmega32(L) ChineseX X09/04 megaAVR ATmega325/3250/645/6450 English X X X 11/2006Family Devices LanguagePreliminary Summary Complete LastUpdate megaAVR ATmega64(L) English X X10/2006 megaAVR ATmega64(L) ChineseX X09/04megaAVR ATmega640/1280/1281/2560/2561 English X X X09/2006megaAVR ATmega644 EnglishX X X09/2006 megaAVR ATmega128(L) English X X10/2006 megaAVR ATmega128(L) Chinese X05/04 picoPower megaAVR ATmega164P/324P/644P English X X X09/2006 picoPower megaAVR ATmega165P(V) EnglishXXX11/2006 picoPower megaAVR ATmega325P/3250P English X X X 12/2006picoPower LCD megaAVR ATmega169P(V) EnglishXXX11/2006picoPower LCD megaAVR ATmega329P/3290P EnglishXXX12/2006Smart Battery AVR ATmega406 English X X X 07/2006 tinyAVR ATtiny11/12 English XX07/2006 tinyAVR ATtiny13 EnglishXXX10/04 tinyAVR ATtiny13 ChineseX X04/04 tinyAVR ATtiny15L English XX06/05 tinyAVR ATtiny2313 EnglishXXX04/2006 tinyAVR ATtiny2313 ChineseX X07/04 tinyAVR ATtiny24/44/84 EnglishXXX09/2006 tinyAVR ATtiny25/45/85 EnglishXXX12/2006 tinyAVR ATtiny26(L) English XX10/2006 tinyAVR ATtiny26(L) ChineseX X12/03 tinyAVR ATtiny261/461/861 EnglishXXX11/2006 tinyAVR ATtiny28(L)(V) English XX07/2006USB AVR AT90USB1286, AT90USB1287,AT90USB646, AT90USB647 English X X07/2006USB AVR USB DFU Bootloader Datasheet English 04/06 AVR32 AT32AP7000 EnglishXXX10/2006 AVR32 AVR32 Architecture Manual English X X 02/06AVR32 AVR32 Technical ReferenceManual English X X06/2006AVR32 AVR32 Java Technical ReferenceManual English X X10/20064.2Application NotesThe application notes for all AVR devices can be downloaded.AVR: /dyn/products/app_notes.asp?family_id=607AVR32: /dyn/products/app_notes.asp?family_id=682Note Number Description Last Update AVR000 Register and Bit-Name Definitions for the AVR Microcontroller 4/98 AVR001 Conditional Assembly and Portability Macros 3/05 AVR030 Getting Started with IAR Embedded Workbench for Atmel AVR 10/04 AVR031 Getting Started with ImageCraft C for AVR 5/02 AVR032 Linker Command Files for the IAR ICCA90 Compiler 5/02 AVR033 Getting Started with the CodeVision AVR C Compiler 5/02 AVR034 Mixing C and Assembly Code with AVR Embedded Workbench for AVR 4/03 AVR035 Efficient C Coding for AVR 1/04 AVR040 EMC Design Considerations 06/2006 AVR042 AVR Hardware Design Considerations 06/2006 AVR053 Calibration of the Internal RC Oscillator 05/2006Note Number Description Last Update AVR054 Run-time calibration of the internal RC oscillator 02/2006 AVR055 Using a 32kHz XTAL for run-time calibration of the internal RC 02/2006 AVR060 JTAGICE 01/04 Protocol 4/03 AVR061 STK500AVR063 LCD Driver for the STK®504 04/2006 AVR064 STK502 – A Temperature Monitoring System with LCD Output 02/2006 AVR065 LCD Driver for the STK502 02/2006 AVR067 JTAGICE mkII Communication Protocol 04/2006 AVR068 STK500 Communication Protocol 06/2006 AVR069 AVRISP mkII Communication Protocol 02/2006 AVR070 Modifying AT90ICEPRO to Support Emulation of AT90 5/02 AVR072 Accessing 16-bit I/O Registers 5/02 AVR073 Accessing 10- and 16-bit registers in ATtiny261/461/86112/2006 AVR074 Upgrading AT90ICEPRO to ICE10 5/02 AVR080 ATmega103 Replaced by ATmega128 01/04 AVR081 ReplacingAT90S4433 by ATmega8 7/03ATmega161 by ATmega162 01/04 AVR082 ReplacingATmega163 by ATmega16 09/05 AVR083 ReplacingAVR084 ReplacingATmega323 by ATmega32 7/03AT90S8515 by ATmega8515 1/04 AVR085 ReplacingAVR086 ReplacingAT90S8535 by ATmega8535 7/03 AVR087 Migrating between ATmega8515 and ATmega162 7/03 AVR088 Migrating between ATmega8535 and ATmega16 1/04 AVR089 Migrating between ATmega16 and ATmega32 6/03 AVR090 Migrating between ATmega64 and ATmega128 6/03 AVR091 Replacing AT90S2313 by ATtiny2313 10/03 AVR092 Replacing ATtiny11/12 by ATtiny13 10/03 AVR093 Replacing AT90S1200 by ATtiny2313 10/03 ATmega8 by ATmega88 4/05 AVR094 ReplacingAVR095 Migrating between ATmega48, ATmega88 and ATmega168 2/04 AVR096 Migrating from ATmega128 to AT90CAN128 3/04 AVR097 Migration between Atmega128 and ATmega2561 07/2006 AVR098 Migration between ATmega169, ATmega329 and ATmega649 04/2006 AT90S4433 by ATmega48 07/04 AVR099 ReplacingEEPROM 09/05 AVR100 AccessingtheAVR101 High Endurance EEPROM Storage 9/02 AVR102 BlockRoutines 5/02 AVR103 Using the EEPROM Programming Modes 3/05 AVR104 Buffered Interrupt Controlled EEPROM Writes 7/03 AVR105 Power Efficient High Endurance Parameter Storage in Flash Memory 9/03 AVR106 C functions for reading and writing to Flash memory 08/2006 AVR107 Interfacing AVR serial memories 3/05 AVR108 Setup and Use of the LPM Instructions 5/02 AVR109 Self-programming 6/04 AVR120 Characterization and Calibration of the ADC on an AVR 02/2006 AVR121 Enhancing ADC resolution by oversampling 09/05 AVR128 Setup and Use the Analog Comparator 5/02 AVR130 Setup and use the AVR Timers 2/02 AVR131 Using the AVR’s High-speed PWM 9/03 AVR132 Using the Enhanced Watchdog Timer 11/03 AVR133 Long Delay Generation Using the AVR Microcontroller 2/04 AVR134 Real-Time Clock using the Asynchronous Timer 08/2006 AVR135 Using Timer Capture to Measure PWM Duty Cycle 10/2005 AVR136 Low-jitter Multi-channel Software PWM05/06 AVR137 Writing Software Compatible for AT90PWM2/3 and AT90PWM2B/3B12/2006family run-time calibration of the Internal RC oscillator09/2006 AVR140 ATmega48/88/168Note Number Description Last Update AVR151 Setup and use of the SPI 09/05 AVR155 Accessing I2C LCD Display Using the AVR 2-Wire Serial Interface 09/05 AVR180 External Brown-Out Protection 5/02 AVR182 Zero Cross Detector 1/04 AVR191 Anti-Pinch Algorithm for AVR Adaptation Procedure11/2006 AVR200 Multiply and Divide Routines 05/2006 AVR201 Using the AVR Hardware Multiplier 6/02 Arithmetic 5/02 AVR202 16-BitArithmetic 1/03 AVR204 BCDAVR220 BubbleSort 5/02 AVR221 Discrete PID controller 05/2006 AVR222 8-Point Moving Average Filter 5/02 AVR223 Digital Filters with AVR 9/02 Bootloader 4/05 AVR230 DESBootloader 08/2006 AVR231 AESAVR236 CRC Check of Program Memory 5/02 AVR240 4x4 Keypad-Wake Up on Keypress 06/2006 AVR241 Direct driving of LCD display using general I/O 5/04 AVR242 8-bit Microcontroller Multiplexing LED Drive & a 4x4 Keypad 5/02 AVR243 Matrix Keyboard Decoder 1/03 AVR244 UART as ANSI Terminal Interface 11/03 AVR245 Code Lock with 4x4 Keypad and I2C™ LCD 10/2005 AVR270 USB Mouse Demonstration 02/2006Demonstration 02/2006 KeyboardAVR271 USBAVR272 USB CDC Demonstration UART to USB Bridge 04/2006 AVR273 USB Mass Storage Implementation 04/2006 AVR301 C Code for Interfacing AVR® to AT17CXX FPGA Configuration Memory 1/04Gateway 3/05 AVR303 SPI-UARTAVR304 Half Duplex Interrupt Driven Software UART 8/97 AVR305 Half Duplex Compact Software UART 09/05 AVR306 Using the AVR UART in C 7/02 AVR307 Half Duplex UART Using the USI Module 10/03 AVR308 Software LIN Slave 5/02 AVR309 Software Universal Serial Bus (USB) 02/2006 AVR310 Using the USI Module as a I2C Master 9/04 AVR311 Using the TWI Module as a I2C Slave 10/04 AVR312 Using the USI Module as a I2C Slave 09/05 AVR313 Interfacing the PCAT Keyboard 09/05 AVR314 DTMFGenerator 5/02 AVR315 Using the TWI Module as a I2C Master 10/04 AVR316 SMBus Slave Using the TWI Module 10/2005 AVR317 Using the USART on the ATmega48/88/168 as a SPI master 11/04 AVR318 Dallas 1-Wire® Master 10/04 AVR319 Using the USI module for SPI communication 11/04 AVR320 Software SPI Master 09/05 AVR322 LIN v1.3 Protocol Implementation on Atmel AVR Microcontrollers 12/05 AVR323 Interfacing GSM modems02/2006 AVR325 High-Speed Interface to Host EPP Parallel Port 2/02 AVR328 USB Generic HID Implementation 1/06 AVR329 USB Firmware Architecture 02/2006 AVR335 Digital Sound Recorder with AVR and Serial Data Flash 4/05 AVR336 ADPCMDecoder 1/05Utility for AVR 09/05ReceiveAVR350 XmodemCRCAVR360 Step Motor Controller 4/03 AVR400 Low Cost A/D Converter 5/02 AVR401 8-Bit Precision A/D Converter 2/03Note Number Description Last Update AVR410 RC5 IR Remote Control Receiver 5/02 AVR411 Secure Rolling Code Algorithm for Wireless Link04/06 AVR414 User Guide - ATAVRRZ502 - Accessory Kit12/2006 AVR415 RC5 IR Remote Control Transmitter 5/03 AVR433 Power Factor Corrector (PFC) with AT90PWM2 Re-triggable High Speed PSC 03/2006 AVR434 PSC Cookbook 10/2006 AVR435 BLDC/BLAC Motor Control Using a Sinus Modulated PWM Algorithm 09/2006 AVR440 Sensorless Control of Two-Phase Brushless DC Motor 09/05 AVR441 Intelligent BLDC Fan Controller with Temperature Sensor and Serial Interface 9/05 AVR442 PC Fan Control using ATtiny13 9/05 AVR443 Sensor-based control of three phase Brushless DC motor 02/2006 AVR444 Sensorless control of 3-phase brushless DC motors 10/2005 AVR446 Linear speed control of stepper motor06/200606/2006 AVR447 Sinusoidal driving of three-phase permanent magnet motor usingATmega48/88/168AVR448 Control of High Voltage 3-Phase BLDC Motro 05/2006 AVR449 Sinusoidal driving of 3-phase permanent magnet motor using ATtiny261/461/86110/2006 AVR450 Battery Charger for SLA, NiCd, NiMH and Li-ion Batteries 09/2006 AVR452 Sensor-based Control of Three Phase Brushless DC Motors Using CAN128 64 3203/2006 or mega128 64 usiAVR453 Smart Battery Reference Design 02/2006 AVR454 Users Guide – ATAVRSB100 – Smart Battery Development Board 06/2006Server 5/02 WebAVR460 EmbeddedAVR461 Quick Start Guide for the Embedded Internet Toolkit 5/02 AVR462 Reducing the Power Consumption of ATEIT1 3/02 meter 7/04 AVR465 EnergyAVR480 Anti-Pinch System for Electrical Window 12/2006 AVR492 Brushless DC Motor Control using AT90PWM3 7/0507/2006 AVR493 Sensorless Commutation of Brushless DC Motor (BLDC) using AT90PWM3 andATAVRMC10012/05 AVR494 AC Induction Motor Control Using the constant V/f Principle and a Natural PWMAlgorithm02/2006 AVR495 AC Induction Motor Control Using the Constant V/f Principle and a Space-vectorPWM AlgorithmAVR500 Migration between Atmega64 and Atmega645 9/04 AVR501 Replacing ATtiny15 with ATtiny25 3/05 AVR502 Migration between Atmega165 and ATmega325 11/04 AVR503 Replacing AT90S/LS2323 or AT90S/LS2343 with ATtiny25 09/05 AVR504 Migrating from ATtiny26 to ATtiny261/461/861 10/2006 AVR505 Migration between Atmega16/32 and ATmega164/324/644 06/2006Atmega169 to ATmega169P 06/2006 AVR506 MigrationfromAVR507 Migration from ATmega329 to ATmega329P 11/2006ATmega644 to ATmega644P 07/2006 AVR508 MigrationfromAVR509 Migration between ATmega169P and ATmega329P 11/2006 AVR510 Migration between ATmega329/649 and ATmega3290/649007/2006 AVR511 Migration from ATmega3290 to ATmega3290P11/2006 AVR910 In-SystemProgramming 11/00 AVR911 AVR Open-source Programmer 7/0405/2006 AVR914 CAN & UART based Bootloader for AT90CAN32, AT90CAN64, &AT90CAN128AVR32000Introduction to AVR32 header files05/2006 AVR32100 Using the AVR32 USART 4/06 AVR32101 Configuring the AVR32 Interrupt Controller 4/06 AVR32102Using the AVR32 SDRAM Controller05/2006 AVR32105Master and Slave SPI Driver05/2006 AVR32107 Using TWI as a master on the AVR32 4/06Note Number Description Last Update AVR32108Peripheral Direct Memory Access Driver05/2006 AVR32110Using the AVR32 Timer/Counter05/2006 AVR32111Using the AVR32 PIO Controller05/2006 AVR32113Configuration and Use of the Memory Management Unit09/2006© 2007 Atmel Corporation. All Rights Reserved. Atmel®, logo and combinations thereof, Everywhere You Are®,AVR® , Z-Link® and others,are registered trademarks, picoPower™ and others are trademarks of Atmel Corporation or its subsidiaries. Other terms and product names may be trademarks of others.。