当前位置首页 > 百科> 正文

AVR单片机

2019-08-18 20:31:38 百科
AVR单片机

AVR单片机

AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC(Reduced Instruction Set CPU) 精简指令集高速8位单片机。可以广泛套用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。AVR单片机是 Atmel 公司 1997 年推出的 RISC 单片机。RISC(精简指令系统计算机)是相对于CISC(複杂指令系统计算机)而言的。RISC 并非只是简单地去减少指令,而是通过使计算机的结构更加简单合理而提高运算速度的。

基本介绍

  • 中文名:AVR单片机
  • 特点:高可靠性、功能强、低功耗
  • 起源时间:1997年
  • 种类:3
  • 结构:哈佛结构
  • 别名:高速嵌入式单片机
  • 套用範围:计算机设备、通讯设备、家用电器

发展起源

名字由来

1997年,由ATMEL公司挪威设计中心的A先生与V先生利用ATMEL公司的Flash新技术,共同研发出RISC精简指令集的高速8位单片机,简称AVR。

功能特点

RISC 优先选取使用频率最高的简单指令,避免複杂指令:并固定指令宽度,减少指令格式和定址方式的种类,从而缩短指令周期,提高运行速度。由于 AVR 採用了 RISC 的这种结构,使AVR系列单片机都具备了1MIPS/MHz(百万条指令每秒/兆赫兹)的高速处理能力。
早期单片机主要由于工艺及设计水平不高、功耗高和抗干扰性能差等原因,所以採取稳妥方案:即採用较高的分频係数对时钟分频,使得指令周期长,执行速度慢。以后的CMOS单片机虽然採用提高时钟频率和缩小分频係数等措施,但这种状态并未被彻底改观(51以及51兼容)。此间虽有某些精简指令集单片机(RISC)问世,但依然沿袭对时钟分频的作法。
AVR单片机的推出,彻底打破这种旧设计格局,废除了机器周期,抛弃複杂指令计算机(CISC)追求指令完备的做法;採用精简指令集,以字作为指令长度单位,将内容丰富的运算元与操作码安排在一字之中(指令集中占大多数的单周期指令都是如此),取指周期短,又可预取指令,实现流水作业,故可高速执行指令。当然这种速度上的升跃,是以高可靠性为其后盾的。
AVR单片机硬体结构採取8位机与16位机的折中策略,即採用局部暂存器存堆(32个暂存器档案)和单体高速输入/输出的方案(即输入捕获暂存器、输出比较匹配暂存器及相应控制逻辑)。提高了指令执行速度(1Mips/MHz),克服了瓶颈现象,增强了功能;同时又减少了对外设管理的开销,相对简化了硬体结构,降低了成本。故AVR单片机在软/硬体开销、速度、性能和成本诸多方面取得了最佳化平衡,是高性价比的单片机。
AVR单片机
AVR单片机内嵌高质量的Flash程式存储器,擦写方便,支持ISP和IAP,便于产品的调试、开发、生产、更新。内嵌长寿命的EEProm可长期保存关键数据,避免断电丢失。片内大容量的RAM不仅能满足一般场合的使用,同时也更有效的支持使用高级语言开发系统程式,并可像MCS-51单片机那样扩展外部RAM。
AVR单片机的I/O线全部带可设定的上拉电阻、可单独设定为输入/输出、可设定(初始)高阻输入、驱动能力强(可省去功率驱动器件)等特性,使的得I/O口资源灵活、功能强大、可充分利用。
AVR单片机片内具备多种独立的时钟分频器,分别供URAT、I2C、SPI使用。其中与8/16位定时器配合的具有多达10位的预分频器,可通过软体设定分频係数提供多种档次的定时时间。
AVR单片机独有的“以定时器/计数器(单)双向计数形成三角波,再与输出比较匹配暂存器配合,生成占空比可变、频率可变、相位可变方波的设计方法(即脉宽调製输出PWM)更是令人耳目一新。
增强性的高速同/异步串口,具有硬体产生校验码、硬体检测和校验侦错、两级接收缓冲、波特率自动调整定位(接收时)、禁止数据帧等功能,提高了通信的可靠性,方便程式编写,更便于组成分散式网路和实现多机通信系统的複杂套用,串口功能大大超过MCS-51/96单片机的串口,加之AVR单片机高速,中断服务时间短,故可实现高波特率通讯。
面向位元组的高速硬体串列接口TWI、SPI。TWI与I2C接口兼容,具备ACK信号硬体传送与识别、地址识别、汇流排仲裁等功能,能实现主/从机的收/发全部4种组合的多机通信。SPI支持主/从机等4种组合的多机通信。
AVR单片机有自动上电复位电路、独立的看门狗电路、低电压检测电路BOD,多个复位源(自动上下电复位、外部复位、看门狗复位、BOD复位),可设定的启动后延时运行程式,增强了嵌入式系统的可靠性。
AVR单片机具有多种省电休眠模式,且可宽电压运行(5-2.7V),抗干扰能力强,可降低一般8位机中的软体抗干扰设计工作量和硬体的使用量。
AVR系列单片机的选型
AVR单片机系列齐全,可适用于各种不同场合的要求。
AVR单片机有3个档次:
AVR单片机
低档Tiny系列:主要有Tiny11/12/13/15/26/28等;
中档AT90S系列:主要有AT90S1200/2313/8515/8535等;(正在淘汰或转型到Mega中)
高档ATmega:主要有ATmega8/16/32/64/128(存储容量为8/16/32/64/128KB)以及ATmega8515/8535等。
AVR器件引脚从8脚到64脚,还有各种不同封装供选择。

优势特徵

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

最大特点

与其它8-Bit MCU相比,AVR 8-Bit MCU最大的特点是:
  1. 哈佛结构,具备1MIPS / MHz的高速运行处理能力;
  2. 超功能精简指令集(RISC),具有32个通用工作暂存器,克服了如8051 MCU採用单一ACC进行处理造成的瓶颈现象;
  3. 快速的存取暂存器组、单周期指令系统,大大最佳化了目标代码的大小、执行效率,部分型号FLASH非常大,特别适用于使用高级语言进行开发;
  4. 作输出时与PIC的HI/LOW相同,可输出40mA(单一输出),作输入时可设定为三态高阻抗输入或带上拉电阻输入,具备10mA-20mA灌电流的能力;
  5. 片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠;
  6. 大部分AVR片上资源丰富:带E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等;
  7. 大部分AVR除了有ISP功能外,还有IAP功能,方便升级或销毁应用程式。

结构分类

型号标识

⒈型号紧跟的字母,表示电压工作範围。带“V”:1.8-5.5V;若预设,不带“V”:2.7-5.5V。
例:ATmega48-20AU,不带“V”表示工作电压为2.7-5.5V。
⒉后缀的数字部分,表示支持的最高系统时钟。
例:ATmega48-20AU,“20”表示可支持最高为20MHZ的系统时钟。
⒊后缀第一(第二)个字母,表示封装。“P”:DIP封装,“A”:TQFP封装,“M”:MLF封装。
例:ATmega48-20AU,“A”表示TQFP封装。
⒋后缀最后一个字母,表示套用级别。“C”:商业级,“I”:工业级(有铅)、“U”工业级(无铅)。
例:ATmega48-20AU,“U”表示无铅工业级。ATmega48-20AI,“I”表示有铅工业级。

接口设计

USB接口以其数据传输快、连线简单、易于扩展、支持热插拔等特点已成为外设与PC通信的主要方式之一。随着嵌入式系统的发展,嵌入式微处理器需增加通用的USB接口,以便实现与PC等USB主机系统的通信。针对这样的需求,这里採用PHILIPS公司的USB接口器件PDIUSBD12和Atmel公司的AVR系列单片机ATmega8设计一种通用的USB接口模组。该模组可方便为各种嵌入式微处理器增加USB接口,从而实现与USB主机系统的高速通信。

系统硬体设计

该系统模组的控制核心是AVR高速单片机ATmega8。AVR单片机是新一代基于哈佛结构的高速RISC微控制器,具有速度快、价格低、可靠性高,I/O口线驱动能力强和片内集成外设资源丰富等特点,其内部集成有可进行ISP下载编程的Flash,EEPROM、熔丝位和锁定位。AVR单片机的ISP下载电缆製作简单、成本低廉,还有免费的下载软体(例如PonyProg)支持。PDIUSBD12是一款高性价比USB接口器件,完全符合USB1.l规范,易于与各种微处理器接口。
系统模组AVR单片机与PDIUSBD12的电路连线如图1所示。
由图1看出,由于AVR单片机具有高速性,可利用I/O连线埠线以软体方式模拟PDIUSBD12的时序,对其读写。这种方式可根据不同的微处理器速度灵活控制PDIUSBD12的时序和地址,无需解码电路,从而简化硬体设计,降低成本。
由于ATmega8片内集成了UART,SPI,I2C等接口,该接口模组可利用这些接口与其他系统通信,使得该接口模组成为通用的接口转换器。其系统硬体结构框图如图2所示。

USB固件程式

USB固件程式设计
本系统模组的USB固件程式採用符合ANSI C标準的GCC编译器设计,结合分层次的模组化结构,可移植性强,只需稍微修改硬体接口层即可将其移植到别的硬体平台,可重複利用代码。USB固件程式设计是基于状态机和标準的前后台式程式架构。整个同件程式的模组化层次结构如图3所示。首先编写硬体接口层hal.c和PDIUSBD12器件的命令接口层,以供上层模组调用。硬体接口层含有对PDIUSBD12写指令和读写数据的函式,以供上层模组调用。当CPU不同时,只需修改这些函式即可。由于CPU访问PDIUS-BD12与普通存储器一样,只需根据硬体连线关係,在硬体抽象层中编写对PDIUSBD12写指令、写读数据的函式,供上层调用即可。实现PDIUSBD12的命令接口层需调用硬体抽象层函式,供上层模组调用。再设计前后台程式及标準设备请求程式模组。

用途套用

市场角度

  • 性价比:AVR大部分型号的性价比较高,性价比表现突出的型号有:atmega48、atmega8、atmega16、atmega169P。
  • 供货方面:通用型号的AVR供货较为稳定,非常规型号的AVR样品及供货仍存在问题。
  • 市场占有率:AVR的市场占有率还是不如PIC与51,但AVR的优点使得AVR的市场占有一直在扩展,AVR的年用量也一直在上涨。

套用区域

AVR已被广泛用于:
  • 空调控制板
  • 印表机控制板
  • 智慧型电錶
  • 智慧型手电筒
  • LED控制屏
  • 医疗设备
  • GPS

注意问题

写用PORTx,读取用PINx
实验时,儘量不要把管脚直接接到GND/VCC,当设定不当,IO口将会输出/灌入 80mA(Vcc=5V)的大电流,导致器件损坏。
作输入时:
1通常要使能内部上拉电阻,悬空(高阻态)将会很容易受干扰。(表面看好像是51的抗干扰能力强,是因为51永远有内部电阻上拉,)
2儘量不要让输入悬空或模拟输入电平接近VCC/2,将会消耗太多的电流,特别是低功耗套用场合------CMOS电路的特点
3读取软体赋予的引脚电平时需要在赋值指令out 和读取指令in 之间有一个时钟周期的间隔,如nop 指令。
4功能模组(中断,定时器)的输入可以是低电平触发,也可以是上升沿触发或下降沿触发。
5用于高阻模拟信号输入,切记不要使能内部上拉电阻,影响精确度。例如ADC数模转换器输入,模拟比较器输入
作输出时:
採用必要的限流措施,例如驱动LED要串入限流电阻
复位时:
复位时内部上拉电阻将被禁用。如果套用中(例如电机控制)需要严格的电平控制,请使用外接电阻固定电平
休眠时:
作输出的,依然维持状态不变
作输入的,一般无效,但如果使能了第二功能(中断使能),其输入功能有效。例如 外部中断的唤醒功能。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net