联系我们
Leave Your Message

单片机的优点和缺点是什么?

2025-01-07

单芯片微控制器的优点和缺点是什么?微处理器特斯?

单芯片微型计算机.webp.png
51型单片机的优点和缺点
51系列是目前应用最广泛的单片机。凭借其合理的硬件结构、标准化的指令系统以及悠久的生产历史,它拥有市场先发优势。世界各地许多知名芯片公司都购买了51芯片的核心专利技术,并扩展了其应用范围。射频在此基础上进行优化,进一步改进芯片,形成庞大的系统。

优势 1
51 系列的优势之一是它拥有从内部硬件到软件的完整位操作系统集,这被称为位处理器或布尔处理器。
它处理的对象不是字或字节,而是位。它不仅可以处理芯片内部某些特殊功能寄存器的特定位,例如发送、置位、清除、检测等,还可以执行位逻辑运算。它的功能非常齐全,而且易于使用。虽然其他类型的单片机也具有位处理功能,但能够执行位逻辑运算的却非常罕见。
51系列芯片还在片上RAM区域专门开辟了一个双功能地址区,该地址区由16字节组成,单元地址从20H到2FH。它可以按字节或位进行处理(按位处理时,总共128位,对应的位地址从00H到7FH),使用起来极其灵活。这一功能无疑为用户带来了极大的便利。由于较为复杂的程序在运行过程中会遇到许多分支,因此需要设置许多标志位。在运行过程中,需要设置、清除或检测相关的标志位来确定程序的运行方向。而要实现所有这些处理(包括之前提到的所有位操作功能),只需要一条位操作指令即可。

优势 2
51系列芯片的另一个优点是其乘法和除法指令,这为编程带来了便利。8位除法指令(将一个8位数除以另一个8位数)的商为8位,精度不足,因此不常用。而8位乘法指令(将一个8位数乘以另一个8位数)的乘积为16位,精度足以满足要求,因此使用更为频繁。执行乘法运算时,只需一条指令即可。许多8位单片机没有乘法功能,执行乘法运算时需要编写并调用子程序,非常不方便。

优势 3
51系列单片机的I/O引脚设置和使用非常简单,但引脚处于高电平时没有输出功能,这既有优点也有缺点。因此,其他系列的单片机(例如PIC系列、AVR系列等)通过增加方向寄存器来区分输入和输出,从而改进了I/O端口,但使用起来也变得更加复杂。

缺点
原有的51系列也存在诸多需要改进的地方,例如运行速度过慢。当晶体振荡器频率为12MHz时,机器周期仅为1μs,显然无法满足现代高速运行的需求。


PIC单片机的优点和缺点
PIC单片机的CPU采用RISC架构,根据单片机级别的不同,分别拥有33、35或58条指令,属于精简指令集。而51系列单片机拥有111条指令,AVR单片机拥有118条指令,后两者的指令集都比前者复杂。

优势 1
它采用哈佛双总线结构,运行速度快,指令周期约为160-200纳秒。它可以并行处理对程序存储器和数据存储器的访问。这种指令流水线结构可以在一个周期内完成两项工作:一是执行指令,二是从程序存储器中取出下一条指令。一般来说,每条指令只需要一个周期(少数特殊指令除外),这也是其高效运行的原因之一。此外,它还具有工作电压低、功耗低、驱动能力强等特点。

优势 2
PIC系列单片机的I/O端口是双向的,其输出电路采用CMOS互补推挽输出电路。I/O引脚增加了方向寄存器,用于设置输入或输出状态,从而解决了51系列单片机I/O引脚在高电平时同时处于输入和输出状态的问题。
当设置为 1 时,处于输入状态,无论引脚为高电平还是低电平,对外均呈现高阻抗状态;当设置为 0 时,处于输出状态,无论引脚为高电平还是低电平,对外均呈现低阻抗状态,并具有相当大的驱动能力。低电平时的灌电流可达 25 mA,高电平时的输出电流可达 20 mA。
与51系列相比,这是一个很大的优势。它可以直接驱动数码管显示器,并且外部电路简单。它的A/D转换器为10位,可以满足精度要求。此外,它还具备在线调试和编程功能。

缺点
该系列单片机的专用寄存器不像51系列那样集中在一个固定的地址区域(80-FFH),而是分散在四个地址区域中,分别是:Bank 0(Bank0:00-7FH)、Bank 1(Bank1:80-FFH)、Bank 2(Bank2:100-17FH)和Bank 3(Bank3:180-1FFH)。只有五个专用寄存器,即PCL、STATUS、FSR、PCLATH和INTCON,同时出现在这四个存储器中。
在编程过程中,不可避免地会用到特殊寄存器,并且需要反复选择相应的存储体,即设置或清除状态寄存器的第6位(RP1)和第5位(RP0)。这在一定程度上会给编程带来一些麻烦。
对于上述单片机而言,其位指令操作通常仅限于存储器0区(00-7FH)。数据传输和逻辑运算基本上必须通过工作寄存器W(相当于51系列的累加器A)进行。而51系列还允许寄存器之间直接传输数据(例如:MOV 30H, 20H;直接将寄存器20H的内容传输到寄存器30H)。因此,PIC单片机的瓶颈现象比51系列更为严重,这在编程过程中可以明显感受到。


AVR单片机的优点和缺点
AVR单片机具有高性能、高速度和低功耗的特点。它取消了机器周期,将时钟周期作为指令周期,并实现了流水线操作。AVR单片机的指令以字为单位,大部分指令都是单周期指令。一个单周期不仅可以执行当前指令的功能,还可以同时完成下一条指令的读取。
总共有 32 个通用寄存器(R0 - R31)。前 16 个寄存器(R0 - R15)不能直接处理立即数,因此通用性有所降低。而 51 系列的所有通用寄存器(地址 00 - 7FH)都可以直接处理立即数,这显然优于前者。

优势 1
AVR系列没有类似累加器A的结构,它主要通过寄存器R16至R31来实现A的功能。AVR中没有像51系列那样的数据指针DPTR,而是使用三个16位寄存器X(由R26和R27组成)、Y(由R28和R29组成)和Z(由R30和R31组成)来完成数据指针的功能(相当于三组DPTR),并且它们还可以执行后加或前减等操作。
在 51 系列中,所有逻辑运算都必须在 A 寄存器中执行;而在 AVR 中,逻辑运算可以在任意两个寄存器之间执行,避免了在 A 寄存器中来回操作,AVR 的性能比 51 系列更强大。

优势 2
AVR 的专用寄存器集中在地址区域 $00 到 $3F,无需像 PIC 那样先选择存储体,因此使用起来比 PIC 更方便。AVR 片上 RAM 的地址区域为 $0060 到 $00DF(AT90S2313)和 $0060 到 $025F(AT90S8515、AT90S8535),它们占用数据空间的地址。这些片上 RAM 通常只用于存储数据,一般不具备通用寄存器的功能。当程序复杂时,32 个通用寄存器 R0 到 R31 似乎不够用;而 51 系列拥有多达 128 个通用寄存器(是 AVR 的四倍),编程时就不会有这种感觉。

缺点
AVR的I/O引脚与PIC类似,也具有用于控制输入或输出的方向寄存器。在输出状态下,高电平时的输出电流约为10mA,低电平时的灌电流约为20mA。虽然不如PIC,但比51系列要好。