发布网友 发布时间:2022-04-22 10:38
共1个回答
热心网友 时间:2023-11-01 21:54
摘要:单片机种类众多,pic单片机和51单片机是使用比较频繁的两种,这两种单片机主要区别在于总线结构、寄存器组和流水线结构方面有所不同。pic单片机和51单片机对比起来,各有各的优缺点,51单片机使用方便、可进行乘除法运算,但也存在运行速度过慢的缺点;pic单片机运行速度更快,能满足精度要求,但瓶颈现象比51单片机严重,如何选择主要看需要。下面一起来了解一下pic单片机与51的区别在哪吧。一、pic单片机与51的区别在哪
pic单片机在日常中使用频率较高,与pic单片机具备同等地位的还有51单片机,那么pic单片机和51单片机有什么区别呢?
1、总线结构区别
51单片机的总线结构是冯-诺依曼型,计算机在同一个存储空间取指令和数据,两者不能同时进行;而PIC单片机的总线结构是哈佛结构,指令和数据空间是完全分开的,一个用于指令,一个用于数据,由于可以对程序和数据同时进行访问,所以提高了数据传输效率。正因为在PIC系列单片机中采用了哈佛双总线结构,所以与常见的微控制器不同的一点是:程序和数据总线可以采用不同的宽度。数据总线都是8位的,但指令总线位数分别位12、14、16位。
2、寄存器组区别
PIC单片机的所有寄存器,包括I/O口,定时器和程序计数器等都采用RAM结构形式,而且都只需要一个指令周期就可以完成访问和操作;而51单片机需要两个或两个以上的周期才能改变寄存器的内容。
3、流水线结构区别
51单片机的取指和执行采用单指令流水线结构,即取一条指令,执行完后再取下一条指令;而PIC单片机的取指和执行采用双指令流水线结构,当一条指令被执行时,允许下一条指令同时被取出,这样就实现了单周期指令。
二、pic单片机和51单片机哪个好
pic单片机和51单片机相比,各有各的优缺点,并不一定哪种单片机更好,下面为大家对比一下两种单片机的优劣势:
1、51单片机的优缺点
(1)优点
51单片机的优点是它从内部的硬件到软件有一套完整的按位操作系统,它的处理对象不是字或字节而是位,因此它不光能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。虽然其他种类的单片机也具有位处理功能,但能进行位逻辑运算的实属少见。51单片机在片内RAM区间还特别开辟了一个双重功能的地址区间,十六个字节,单元地址20H~2FH,它既可作字节处理,也可作位处理(作位处理时,合128个位,相应位地址为OOH~7FH),使用极为灵活。这一功能无疑给使用者提供了极大的方便。
51单片机的另一个优点是乘法和除法指令,这给编程也带来了便利。八位除以八位的除法指令,商为八位,精度嫌不够,用得不多。而八位乘八位的乘法指令,其积为十六位,精度还是能满足要求的,用的较多。作乘法时,只需一条指令即可。很多的八位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。
还有就是,51系列的I/O脚的设置和使用非常简单,但高电平时无输出能力,可谓有利有弊。其他系列的单片机(如PIC系列、AVR系列等)对I/O口进行了改进,增加了方向寄存器以确定输入或输出,但使用也变得复杂。
(2)缺点
51单片机的主要缺点是运行速度过慢,当晶振频率为12MHz时,机器周期达1μs,显然适应不了现代高速运行的需要。
2、pic单片机的优缺点
(1)优点
PIC单片机CPU采用RISC结构,分别有33、35、58条指令,属精简指令集,比51单片机(111条指令)精简很多,因此运行速度更快;它能使程序存储器的访问和数据存储器的访问并行处理,这种指令流水线结构,在一个周期内完成两部分工作,一是执行指令,二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期(个别除外),这也是高效率运行的原因之一。此外,它还具有低工作电压、低功耗、驱动能力强等特点。
另外,PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。I/O脚增加了用于设置输入或输出状态的方向寄存器,从而解决了51系列I/O脚为高电平时同为输入和输出的状态。当置位1时为输入状态,且不管该脚呈高电平或低电平,对外均呈高阻状态;置位0时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸人电流达25mA,高电平输出电流可达20mA。相对于51系列而言,这是一个很大的优点,它可以直接驱动数码管显示且外电路简单。它的A/D为10位,能满足精度要求。
(2)缺点
在编程过程中,少不了要与专用寄存器打交道,得反复地选择对应的存储体,也即对状态寄存器STATUS的第6位(RPl)和第5位(RPO)置位或清零。这多少给编程带来了一些麻烦。对于pic单片机,它的位指令操作通常*在存储体0区间(00~7FH)。数据的传送和逻辑运算基本上都得通过工作寄存器w(相当于51单片机的累加器A)来进行,而51单片机还可以通过寄存器相互之间直接传送,因而PIC单片机的瓶颈现象比51单片机还要严重,这在编程中很有感受。
综合来看,51单片机和pic单片机相比,各有所长,如何选择主要看实际使用需要。