AVR、51系列、PIC单片机的对比分析
在51系列中,所有的逻辑运算都必须在A中进行;而AVR却可以在任两个寄存器之间进行,省去了在A中的来回折腾,这些都比51系列强。
AVR的专用寄存器集中在$00~$3F地址区间,无需像PIC那样得先进行选存储体的过程,使用起来比PIC方便。AVR的片内RAM的地址区间为$0060~$00DF(AT90S23131)和$0060~$025F(AT90S85l5、AT90S8535),它们占用的是数据空间的地址,这些片内RAM仅仅是用来存储数据的,通常不具备通用寄存器的功能。当程序复杂时,通用寄存器R0一R31就显得不够用;而51系列的通用寄存器多达128个(为AVR的4倍),编程时就不会有这种感觉。
AVR的I/O脚类似PIC,它也有用来控制输入或输出的方向寄存器,在输出状态下,高电平输出的电流在10mA左右,低电平吸入电流20mA。虽不如PIC,但比51系列强。
综合来看,AVR与51、PIC单片机相比具有一系列的优点,用通俗的说法主要体现在这几个方面:
(1)、在相同的系统时钟下AVR运行速度最快;
(2)、所有AVR单片机的FLASH、EEPROM蓄存器都可以反复烧写、支持在ISP在线编程(烧写),入门费用非常少;
(3)、片内集成多种频率的RC振荡器、上电自动复位、看门狗、启动延时等功能,使得电路设计变得非常简单;
(4)、每个IO口作输出时都可以输出很强的高、低电平,作输入时IO口可以是高阻抗或者带上拉电阻;
(5)、片内具有丰富实用的资源,如AD模数器、DA数模器,丰富的中断源、SPI、USART、TWI通信口、PWM等等;
(6)、片内采用了先进的数据加密技术,大大的提高了破解的难度;
(7)、片内FLASH空间大、品种多,引脚少的有8脚,多的有64脚等各种封装
(8)、部分芯片的引脚兼容51系列,代换容易,如ATtiny2313兼容AT89C2051,ATmega8515/162兼容AT89S51等
四、单片机的选择。
各种单片机都有各自的优缺点,应根据需要选择。选择单片机原则如下:
1. 单片机的基本参数例如速度,程序存储器容量,I/O引脚数量
2. 单片机的增强功能,例如看门狗,双指针,双串口,RTC(实时时钟),EEPROM,扩展RAM,CAN接口,I2C接口,SPI接口,USB接口。
3. Flash和OTP(一次性可编程)相比较,最好是Flash。
4. 封装IP(双列直插),PLCC(PLCC有对应插座)还是贴片。DIP封装在做实验时可能方便一点。
5. 工作温度范围,工业级还是商业机。如果设计户外产品,必须选用工业级。
6. 功耗,比如设计并口加密狗,信号线取电只能提供几个mA,用PIC就是因为低功耗,后来出了MSP430也不错。
7. 工作电压范围。例如设计电视机遥控器,2节干电池供电,至少应该能在1.8-3.6V电压范围内工作。
8. 供货渠道畅通。能申请样片,小批量购买有现货。最好像标准51,中发里随便找个柜台就能买到(我在北京)
9. 价格低。
10. 有服务商,像周立功公司推Philips,双龙公司推AVR,都提供了很多有用的技术支持,起码烧写器有地方买。
11. 烧录器价格低,如果是ICP(把单片机放在烧录器上编程)能否利用现有的烧录器,如果是表贴封装,买一个转接座也很贵,至少得一二百元。能否ISP(在系统编程,即把芯片先焊到板子上再通过预留的ISP接口编程),一般ISP编程器比较便宜大约一二百元甚至几十元。
12. 仿真器便宜。对于FLASH型单片机,仿真器不是必备的。但是对于OTP(一次性可编程)型单片机,必须购买或者租用仿真器。
13. 单片机汇编语言是自己熟悉的,并且能支持C语言。编程环境要像keil一样好用,并且还是免费的。
14. 网站速度快,资料丰富。包括芯片手册,应用指南,设计方案,范例程序。最好有中文,像Atmel就不错。
15. 保密性能好,查一下专业解密网站上的黑名单,再发个mail咨询一下解密价格。
16. 抗干扰性能好。我曾经把XXC52改为S52后发现抗干扰性能下降,只好改回去。
17. 和其他外设芯片放在一起的综合考虑
评论