网站地图
zenghuilan.com
生活小窍门 解释生活中的一切名词
avr(单片机类型) 发布于:

通常来讲,AVR单片机指的是1997年由ATMEL公司研发出的增强型内置Flash的RISC(Reduced Instruction Set Computer) 精简指令集高速8位单片机。AVR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。 但AVR的诞生颇有传奇色彩,1992年Alf-Egil Bogen和Vegard Wollan在瑞典理工学院的毕业论文中提到了一种使用闪存程序存储器的,使用RISC指令集的微控制器。在接下来的几年里, Alf-Egil和Vegard不断完善设计, 并加入一些集成外设,1997年,加入Atmel公司挪威设计中心的A先生和V先生,利用Atmel公司的Flash新技术,共同研发出RISC精简指令集高速8位单片机,简称AVR。随着2016年,Atmel被Microchip收购,AVR随即成为Microchip的主力8位单片机产品之一。

高可靠性、功能强、高速度、低功耗和低价位,一直是衡量单片机性能的重要指标,也是单片机占领市场、赖以生存的必要条件。

早期单片机主要由于工艺及设计水平不高、功耗高和抗干扰性能差等原因,所以采取稳妥方案:即采用较高的分频系数对时钟分频,使得指令周期长,执行速度慢。以后的 CMOS单片机虽然采用提高时钟频率和缩小分频系数等措施,但这种状态并未被彻底改观(51以及51兼容)。此间虽有某些精简指令集单片机(RISC)问世,但依然沿袭对时钟分频的作法。

AVR单片机的推出,彻底打破这种旧设计格局,废除了机器周期,抛弃复杂指令计算机(CISC)追求指令完备的做法;采用精简指令集,以字作为指令长度单位,将内容丰富的操作数与操作码安排在一字之中(指令集中占大多数的单周期指令都是如此),取指周期短,又可预取指令,实现流水作业,故可高速执行指令。当然这种速度上的升跃,是以高可靠性为其后盾的。

AVR单片机硬件结构采取8位机与16位机的折中策略,即采用局部寄存器存堆(32个寄存器文件)和单体高速输入/输出的方案(即输入捕获寄存器、输出比较匹配寄存器及相应控制逻辑)。提高了指令执行速度(1Mips/MHz),克服了瓶颈现象,增强了功能;同时又减少了对外设管理的开销,相对简化了硬件结构,降低了成本。故AVR单片机在软/硬件开销、速度、性能和成本诸多方面取得了优化平衡,是高性价比的单片机。

AVR单片机内嵌高质量的Flash程序存储器,擦写方便,支持ISP和IAP,便于产品的调试、开发、生产、更新。内嵌长寿命的EEProm可长期保存关键数据,避免断电丢失。片内大容量的RAM不仅能满足一般场合的使用,同时也更有效的支持使用高级语言开发系统程序,并可像MCS-51单片机那样扩展外部 RAM。

AVR单片机的I/O线全部带可设置的上拉电阻、可单独设定为输入/输出、可设定(初始)高阻输入、驱动能力强(可省去功率驱动器件)等特性,使的得I/O口资源灵活、功能强大、可充分利用。

AVR单片机片内具备多种独立的时钟分频器,分别供UART、I2C、SPI使用。其中与8/16位定时器配合的具有多达10 位的预分频器,可通过软件设定分频系数提供多种档次的定时时间。AVR单片机独有的“以定时器/计数器(单)双向计数形成三角波,再与输出比较匹配寄存器配合,生成占空比可变、频率可变、相位可变方波的设计方法(即脉宽调制输出PWM)”更是令人耳目一新。

增强性的高速同/异步串口,具有硬件产生校验码、硬件检测和校验侦错、两级接收缓冲、波特率自动调整定位(接收时)、屏蔽数据帧等功能,提高了通信的可靠性,方便程序编写,更便于组成分布式网络和实现多机通信系统的复杂应用,串口功能大大超过MCS-51/96单片机的串口,加之AVR单片机高速,中断服务时间短,故可实现高波特率通讯。

面向字节的高速硬件串行接口TWI、SPI。TWI与I2C接口兼容,具备ACK信号硬件发送与识别、地址识别、总线仲裁等功能,能实现主/从机的收/发全部4种组合的多机通信。SPI支持主/从机等4种组合的多机通信。

AVR单片机有自动上电复位电路、独立的看门狗电路、低电压检测电路BOD,多个复位源(自动上下电复位、外部复位、看门狗复位、BOD复位),可设置的启动后延时运行程序,增强了嵌入式系统的可靠性。

AVR单片机具有多种省电休眠模式,且可宽电压运行(5-1.8V),抗干扰能力强,可降低一般8位机中的软件抗干扰设计工作量和硬件的使用量。

AVR单片机技术体现了单片机集多种器件(包括FLASH程序存储器、看门狗、EEPROM、同/异步串行口、TWI、SPI、A/D模数转换器、定时器/计数器等)和多种功能(增强可靠性的复位系统、降低功耗抗干扰的休眠模式、品种多门类全的中断系统、具输入捕获和比较匹配输出等多样化功能的定时器/计数器、具替换功能的I/O端口…… )于一身,充分体现了单片机技术的从“片自为战”向“片上系统SoC”过渡的发展方向。

综上所述,AVR单片机博采众长,又具独特技术,不愧为8位机中的佼佼者。

● 哈佛结构,具备1MIPS / MHz的高速运行处理能力;

● 超功能精简指令集(RISC),具有32个通用工作寄存器,克服了如8051 MCU采用单一ACC进行处理造成的瓶颈现象;

● 快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号FLASH非常大,特别适用于使用高级语言进行开发;

● 作输出时与PIC的HI/LOW相同,可输出40mA(单一输出),作输入时可设置为三态高阻抗输入或带上拉电阻输入,具备10mA-20mA灌电流的能力;

● 片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠;

● 大部分AVR片上资源丰富:带E2PROM,PWM,RTC,SPI,USART,TWI,ISP,AD,Analog Comparator,WDT等;

● 大部分AVR除了有ISP功能外,还有IAP功能,方便升级或销毁应用程序

AVR系列单片机的选型

AVR单片机系列齐全,可适用于各种不同场合的要求。AVR单片机有3个档次:

低档Tiny系列AVR单片机: 主要有Tiny11/12/13/15/26/28等;

中档AT90S系列AVR 单片机: 主要有AT90S1200/2313/8515/8535等; (正在淘汰或转型到Mega中)

高档ATmega系列AVR单片机: 主要有ATmega8/16/32/64/128( 存储容量为8/16/32/64/128 KB)以及ATmega8515/8535等。

MicrochipMPLAB X Microchip在完成对Atmel的收购之后, 令原有的IDE工具MPLAB可支持Atmel产品的开发。

Atmel Studio 7 Microchip/Atmel的单片机集成开发环境,完全免费,包括了编译,调试和下载功能,内部集成ASF3代码框架集,并支持导入由在线代码图形化生成器Atmel START(ASF4)输出的代码。

AVR StudioATMEL的AVR单片机的集成环境汇编级开发调试软件,完全免费。ATMEL AVR Studio集成开发环境(IDE),包括了AVR Assembler编译器、AVR Studio调试功能、AVR Prog串行、并行下载功能和JTAG ICE仿真等功能。

SL ISP 双龙公司开发的ISP下载软件。之前的版本都比较普通,最新版本1.423引入了STK500的熔丝位界面,让操作比较简易,并且不容易出错。是国产的老牌下载器。

PnoyProg 经典的ISP下载软件。但这个版本有一个缺陷:该软件读出的时钟校正值只有1MHZ的校正,其他频率的校正值无法读出。这是一个很好用的免费软件。一年多没有更新了,2005.05更新了一个新版本,支持了 tiny2313,mega8515,mega8535,但奇怪的是,仍不支持 M48/88/168.

VMLAB Vmlab是AVR系列单片机的一个纯软件模拟仿真工具。从V3.12开始,它变成了免费的版本。Vmlab还能仿真ST62系列的单片机

GCCAVR(WinAVR) GCC是Linux的唯一开发语言。就嵌入系统应用来说,几乎所有市面上有一定市场份额的8bit以上MCU都有爱好者移植GCC在其上。

GCC的编译器优化程度可以说是世界上民用软件中做的最好的,完全用ANSI?C规范写出的超过一万行代码的程序,还没有任何一种编译器产生的目标代码能比GCC产生的代码速度更快,同时它的bug数量却也可以算作所有民用C编译器中最少的

被移植到WINDOWS平台上,整合了各个组件后的Windows版GCCAVR就是WinAVR。不是IDE,自己定制IDE的时候就要用到makefile,makefile重要作用就是:指定所用的单片机类型,指定编译的文件,设定编译优化条件等。

ICC ICC是用来给AVR单片机编写C语言程序的,比较专业,但需要付费。

IARAVR IAR是公认全世界最好的嵌入式开发软件,IARAVR集成了高效的C编译器,是开发代码效率最高的开发工具,也是AVR开发工具当中唯一支持64bit数据的的开发工具,其代码优化效率也是最高的,软件售价比较昂贵,国内使用的人较少。

Atmel-ICE编程/下载器当前标准的开发工具,外观上为白色带蓝条的扑克牌大小的盒子。Atmel-ICE 提供了两组编程接口,分别支持SAM系列和AVR系列。Atmel-ICE可以支持在Atmel Studio 7中对包括AVR在内的Atmel所有单片机产品进行烧录和开发。

stk500下载线STK500是 ATmel 官方唯一推荐的下载烧录方式。在 AVR Studio中,它保持不断的升级与更新,可以支持、AVR芯片。下载速度比并口ISP快,并且更加稳定。

JTAG 仿真器 使用 AVR Studio 打开 *.cof 或 *.elf 仿真文件后,就能进行仿真操作。方便开发时测试与调试。

支持仿真的芯片:ATmega16、ATmega32、ATmega64、ATmega128、ATmega323、ATmega162 、ATmega165

ATTiny1616

推荐原因:

目前最新的性价比最高的AVR芯片,零售价不到0.5美金,内置16KFlash, 除了传统串行外设,还集成PTC触摸控制器和5位DAC。可满足从消费类,工业级,甚至汽车级别的各类应用。封装小巧,支持udpi仿真。ATtiny1616的超低功耗设计, 使得在运行触摸应用时,能达到不超过20uA的平均功耗。

ATMEGA4809

推荐原因:

功能强大的进阶单片机, 拥有最高20Mhz主频, 48K片上Flash, 6K SRAM和256Bytes的片上EEPROM,支持多个集成串行接口, 多达16路ADC输入,同样出众的低功耗设计。4809采用较大的48pin封装,既包括可以在试验阶段采用的双列直插封装或是四边引脚扁平封装,也支持在紧凑的布局中使用的扁平无引脚封装。

ATmega16

推荐原因:

1. AVR,性价比最高的AVR芯片之一,货源充足。零售价仅为20元,100片以上批量可降至14元。2. 16K的FLASH,满足绝大部分的实验需要。3. 内置丰富、强大的功能。几乎涉及AVR芯片的所有功能。详情请参考中文数据手册。4. 支持JTAG仿真,不需要购买较昂贵的仿真器。5. 有直插封装,方便实验焊接。AVR芯片分类AVR单片机系列齐全,可适用于各种不同场合的要求。AVR单片机有3个档次:低档Tiny系列AVR单片机: 主要有Tiny11/12/13/15/26/28等;中档AT90S系列AVR 单片机: 主要有AT90S1200/2313/8515/8535等; (正在淘汰或转型到Mega中,详情请参考:AVR宣布到期的芯片清单) 高档ATmega系列AVR单片机: 主要有ATmega8/16/32/64/128( 存储容量为8/16/32/64/128 KB)以及ATmega8515/8535。新的型号还有 ATmega48/88/168 (存储容量为4/8/16K) 等。

LGT8F0XA系列

LGT8F0XA

于2012-4-6提及并发布的一种极低成本的8位通用单片机,基于RISC(精简指令集),其指令集和总线结构类似于AVR单片机。

3级流水线设计,131条指令, 大多数指令执行时间为单个时钟周期,32个8位通用工作寄存器,工作于16MHz时性能高达16MIPS,单周期的硬件乘法器(8×8),芯片可以跑到32MIPS@32Mhz 外部晶振,零售价是1.99元。..............


相关文章推荐:
AVR单片机 | ATMEL公司 | Flash | 精简指令集 | 单片机 | 仪器仪表 | 通讯设备 | 家用电器 | 程序存储器 | RISC指令集 | 微控制器 | 挪威 | 精简指令集 | AVR单片机 | AVR单片机 | 程序存储器 | 高阻 | 定时器 | 分布式网络 | 看门狗 | I/O端口 | RC振荡器 | Microchip | AVR Studio | 集成开发环境 | 编译器 | 免费软件 | 单片机 | AVR单片机 |