完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
AVR、51 系列、PIC 单片机的对比
1、51 系列单片机的优缺点分析。 51 系列是应用最广泛的单片机, 由于产品硬件结构合理, 指令系统规范, 加之生产历 史 “悠久” ,有先入为主的优势。世界有许多著名的芯片公司都购买了 51 芯片的核心专利技 术, 并在其基础上进行性能上的扩充, 使得芯片得到进一步的完善, 形成了一个庞大的体系, 直到现在仍在不断翻新,把单片机世界炒得沸沸扬扬。 51 系列优点之一是它从内部的硬件到软件有一套完整的按位操作系统, 称作位处理器, 或布尔处理器。它的处理对象不是字或字节而是位。它不光能对片内某些特殊功能寄存器的 某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备, 使用起来得心应手。虽然其他种类的单片机也具有位处理功能,但能进行位逻辑运算的实属 少见。51 系列在片内 RAM 区间还特别开辟了一个双重功能的地址区间,十六个字节,单 元 地址20H~2FH,它既可作字节处理,也可作位处理(作位处理时,合 128 个位,相应位 地 址为OOH~7FH),使用极为灵活。这一功能无疑给使用者提供了极大的方便,因为一个 较复杂的程序在运行过程中会遇到很多分支,因而需建立很多标志位,在运行过程中,需要 对有关的标志位进行置位、清零或检测,以确定程序的运行方向。而实施这一处理(包括前 面 所有的位功能),只需用一条位操作指令即可。 51 系列的另一个优点是乘法和除法指令,这给编程也带来了便利。八位除以八位的除 法指令,商为八位,精度嫌不够,用得不多。而八位乘八位的乘法指令,其积为十六位,精 度还是能满足要求的,用的较多。作乘法时,只需一条指令即可。很多的八位单片机都不具 备乘法功能,作乘法时还得编上一段子程序调用,十分不便。 51 系列的 I/O 脚的设置和使用非常简单,但高电平时无输出能力,可谓有利有弊。故 其他 系列的单片机(如 PIC 系列、AVR 系列等)对 I/O 口进行了改进,增加了方向寄存器以 确定输 入或输出,但使用也变得复杂。 同时, 原 51 系列也有许多值得改进之处, 如运行速度过慢等。 当晶振频率为 12MHz 时, 机器周期达1μs, 显然适应不了现代高速运行的需要。 华邦公司(Winbond)生产的产品型 号 为 W77 系列和 W78 系列,W78 系列与 AT89C 系列完全兼容。W77 系列为增强型,对原 有的8051 的时序作了改进,每个机器周期从12 个时钟周期改为4 个周期,使速度提高了 三 倍,同时,晶振频率最高可达40MHz。W77 系列还增加了看门狗WatchDog、两组 uART、 两组DVTR 数据指针、ISP 等多种功能。 2、PIC 单片机的优缺点分析。 PIC 单片机CPU 采用RISC 结构, 分别有33、 35、 58 条指令(视单片机的级别而定), 属 精简指令集。而 51 系列有 111 条指令,AVR 单片机有 118 条指令,都比前者复杂。采用 Haryard 双总线结构,运行速度快(指令周期约160~200nS),它能使程序存储器的访问和数 据存储器的访问并行处理,这种指令流水线结构,在一个周期内完成两部分工作,一是执行 指令, 二是从程序存储器取出下一条指令, 这样总的看来每条指令只需一个周期(个别除外), 这也是高效率运行的原因之一。此外,它还具有低工作电压、低功耗、驱动能力强等特点。 PIC 系列单片机的I/O 口是双向的, 其输出电路为 CMOS 互补推挽输出电路。 I/O 脚 增加了用于设置输入或输出状态的方向寄存器,从而解决了 51 系列 I/O 脚为高电平时同 为输入和输出的状态。当置位 1 时为输入状态,且不管该脚呈高电平或低电平,对外均呈 高 阻状态;置位0 时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能 力, 低电平吸人电流达25mA,高电平输出电流可达20mA。相对于51 系列而言,这是一 个很大 的优点,它可以直接驱动数码管显示且外电路简单。它的 A/D 为 10 位,能满足 精度要求。 具有在线调试及编程功能。 该系列单片机的专用寄存器)并不像 51 系列那样都集中在一个固定的地址区间内(80~ FFH),而是分散在四个地址区间内,即存储体0(Bank0:00-7FH)、存储体1(Bankl:80-FFH)、 存储体2(Bank2: 100-17FH)、 存储体3(Bank3: 180-1FFH)。 只有5 个专用寄存器PCL、 STATUS、 FSR、PCLATH、INTCON 在4 个存储体内同时出现。在编程过程中,少不了要与专用寄存 器 打交道,得反复地选择对应的存储体,也即对状态寄存器 STATUS 的第 6 位(RPl)和第 5 位 (RPO)置位或清零。这多少给编程带来了一些麻烦。对于上述的单片机,它的位指令操作 通 常限制在存储体 0 区间(00~7FH)。 数据的传送和逻辑运算基本上都得通过工作寄存器 w(相 当于 5l 系列的累加器 A)来进行,而 51 系列的还可以通过寄存器相互之间直接传送(如: MOV30H,20H;将寄存器 20H 的内容直接传送至寄存器 30H 中),因而 PIC 单片机的瓶颈 现象比51 系列还要严重,这在编程中很有感受。 综合来说PIC 单片机应该说有三个主要特点: (1)总线结构:MCS-51 单片机的总线结构是冯-诺依曼型,计算机在同一个存储空间取指 令和数据,两者不能同时进行;而 PIC 单片机的总线结构是哈佛结构,指令和数据空间是完全 分开的,一个用于指令,一个用于数据,由于可以对程序和数据同时进行访问,所以提高了数据 吞吐率。 正因为在 PIC 单片机中采用了哈佛双总线结构, 所以与常见的微控制器不同的一 点 是:程序和数据总线可以采用不同的宽度。数据总线都是 8 位的,但指令总线位数分别位 12、14、16 位。 (2)流水线结构:MCS-51 单片机的取指和执行采用单指令流水线结构,即取一条指令,执行 完后再取下一条指令;而 PIC 的取指和执行采用双指令流水线结构,当一条指令被执行时,允 许下一条指令同时被取出,这样就实现了单周期指令。 (3)寄存器组:PIC 单片机的所有寄存器,包括 I/O 口,定时器和程序计数器等都采用 RAM 结构形式,而且都只需要一个指令周期就可以完成访问和操作;而 MCS-51 单片机需要两个或 两个以上的周期才能改变寄存器的内容。 3、AVR 单片优缺点分析。 AVR 单片机其显著的特点为高性能、 高速度、 低功耗。 它取消机器周期, 以时钟周期 为 指令周期, 实行流水作业。 AVR 单片机指令以字为单位, 且大部分指令都为单周期指令。 而 单周期既可执行本指令功能, 同时完成下一条指令的读取。 通用寄存器一共 32 个 (RO-R31), 前 16 个寄存器(R0~R15)都不能直接与立即数打交道,因而通用性有所下降。 而在5l 系列 中,它所有的通用寄存器(地址00-7FH)均可以直接与立即数打交道,显然要优 于前者。 AVR 系列没有类似累加器A 的结构, 它主要是通过R16~R31 寄存器来实现A 的功能。 在 AVR 中,没有像5l 系列的数据指针 DPTR,而是由X(由 R26、R27 组成)、Y(由R28、. R29 组成)、 z(由R30、 R31 组成)三个16 位的寄存器来完成数据指针的功能(相当于有三组 DPTR), 而且还能作后增量或先减量等的运行。 在 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. 和其他外设芯片放在一起的综合考虑。 |
|
相关推荐
7个回答
|
|
比较的挺详细的
|
|
|
|
赞一个。。。。。。。。。。。。
|
|
|
|
赞一个赞一个赞一个
|
|
|
|
简直不能再赞了
|
|
|
|
下载收藏,回来仔细研究一下昂。
|
|
|
|
本帖最后由 friend0720 于 2015-8-7 22:02 编辑
51有100多个通用寄存器吗?这个还真不知道,不过如果真的有只能说明51的设计落后。现在高级一点的ARM处理器也不过30几个通用寄存器。如果30几个通用寄存器还不够你用!只能说明你的程序设计能力有问题。 |
|
|
|
全部看完了。。。。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-网络编程示例之网络socket程序编程
492 浏览 0 评论
飞凌嵌入式-ELFBOARD-RGB LCD屏接口的PCB设计要点
755 浏览 0 评论
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-spi编程示例之spi编写程序
848 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第三十七章 image图像对比实验
814 浏览 0 评论
1056 浏览 1 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11697 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-14 14:17 , Processed in 0.815839 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号