AVR单片机3个档次
低档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脚,还有各种不同封装供选择。
性价比:AVR大部分型号的性价比较高,性价比表现突出的型号有:atmega48、atmega8、atmega16、atmega169P。
供货方面:通用型号的AVR供货较为稳定,非常规型号的AVR样品及供货仍存在问题。
市场占有率:AVR的市场占有率还是不如PIC与51,但AVR的优点使得AVR的市场占有一直在扩展,AVR的年用量也一直在上涨。
特点
与其它8-Bit MCU相比,AVR 8-Bit MCU最大的特点是:
- 哈佛结构,具备1MIPS / MHz的高速运行处理能力;
- 超功能精简指令集(RISC),具有32个通用工作寄存器,克服了如8051 MCU采用单一ACC进行处理造成的瓶颈现象;
- 快速的存取寄存器组、单周期指令系统,大大优化了目标代码的大小、执行效率,部分型号FLASH非常大,特别适用于使用高级语言进行开发;
- 作输出时与PIC的HI/LOW相同,可输出40mA(单一输出),作输入时可设置为三态高阻抗输入或带上拉电阻输入,具备10mA-20mA灌电流的能力;
- 片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,外围电路更加简单,系统更加稳定可靠;
- 大部分AVR片上资源丰富:带E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等;
- 大部分AVR除了有ISP功能外,还有IAP功能,方便升级或销毁应用程序。
型号标识
⒈ 型号紧跟的字母,表示电压工作范围。 “P” 低电压、节能技术,紧跟着表示电压工作范围:带“ V”表示 1.8V-5.5V,不带“V”表示 2.7-5.5V,L表示低频率;带“L”与不带“L”的区别;L表示它可以支持低电压,它支持的电压范围为:2.7-5.5V。不带“L”的则表示支持电压范围为:4.5-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”表示有铅工业级。
注意问题
写用PORTx,读取用PINx
实验时,尽量不要把管脚直接接到GND/VCC,当设定不当,IO口将会输出/灌入 80mA(Vcc=5V)的大电流,导致器件损坏。
作输入时:
1通常要使能内部上拉电阻,悬空(高阻态)将会很容易受干扰。(表面看好像是51的抗干扰能力强,是因为51永远有内部电阻上拉,)
2尽量不要让输入悬空或模拟输入电平接近VCC/2,将会消耗太多的电流,特别是低功耗应用场合------CMOS电路的特点
3读取软件赋予的引脚电平时需要在赋值指令out 和读取指令in 之间有一个时钟周期的间隔,如nop 指令。
4功能模块(中断,定时器)的输入可以是低电平触发,也可以是上升沿触发或下降沿触发。
5用于高阻模拟信号输入,切记不要使能内部上拉电阻,影响精确度。例如ADC数模转换器输入,模拟比较器输入
作输出时:
采用必要的限流措施,例如驱动LED要串入限流电阻
复位时:
复位时内部上拉电阻将被禁用。如果应用中(例如电机控制)需要严格的电平控制,请使用外接电阻固定电平
休眠时:
作输出的,依然维持状态不变
作输入的,一般无效,但如果使能了第二功能(中断使能),其输入功能有效。例如 外部中断的唤醒功能。