历史上的今天
今天是:2024年12月16日(星期一)
2019年12月16日 | PIC单片机的特点以及不足之处全面分析
2019-12-16 来源:elecfans
据调查,pic单片机是相关人员使用的最多硬件之一。因此,凡入门者需对pic单片机保持一定的了解。为此,本文为大家带来三部分内容:1.pic单片机简介,2.pic单片机特点,3.pic单片机不足之处。通过本文,希望大家对pic单片机存在一个简单的了解。

一、pic单片机简介:
PIC单片机(Peripheral Interface Controller)是一种用来可开发的去控制外围设备的可编程集成电路(IC)。由美国Microchip(微星)公司推出的PIC单片机系列产品,首先采用了RISC结构的嵌入式微控制器,其高速度、低电压、低功耗、大电流LCD驱动能力和低价位OTP技术等都体现出单片机产业的新趋势。现在PIC系列单片机在世界单片机市场的份额排名中已逐年升位,尤其在8位单片机市场,据称已从1990年的第20位上升到目前的第二位。PIC单片机从覆盖市场出发,已有三种(又称三层次)系列多种型号的产品问世,所以在全球都可以看到PIC单片机从电脑的外设、家电控制、电讯通信、智能仪器、汽车电子到金融电子各个领域的广泛应用。现今的PIC单片机已经是世界上最有影响力的嵌入式微控制器之一。

二、pic单片机特点:
1、 精简指令集(RISC)技术
PIC系列单片机的指令系统只有35条指令,常用约20条。
——好学、易用;绝大多数为单周期指令,执行速度快!
MCS-51系列单片机指令系统有111条指令!
2、哈佛总线结构

3、 寻址方式简单
4、代码压缩率高

PIC系列单片机只有4种寻址方式
——寄存器间接寻址、立即数寻址、直接寻址和位寻址
MCS-51 系列单片机则有7种寻址方式!
5. 具有低工作电压、低功耗、驱动能力强等特点
PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。I/O脚增加了用于设置输入或输出状态的方向寄存器,从而解决了51系列I/O脚为高电平时同为输入和输出的状态。
6.状态特性简单
当置位1时为输入状态,且不管该脚呈高电平或低电平,对外均呈高阻状态;置位0时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达25mA,高电平输出电流可达20mA。相对于51系列而言,这是一个很大的优点
7.可直接驱动数码管
它可以直接驱动数码管显示且外电路简单。它的A/D为10位,能满足精度要求。具有在线调试及编程(ISP)功能。
三、pic单片机不足之处

其专用寄存器(SFR)并不像51系列那样都集中在一个固定的地址区间内(80-FFH),而是分散在四个地址区间内。只有5个专用寄存器PCL、STATUS、FSR、PCLATH、INTCON在4个存储体内同时出现,但是在编程过程中,少不了要与专用寄存器打交道,得反复地选择对应的存储体,也即对状态寄存器STATUS的第6位(RP1)和第5位(RP0)置位或清零。数据的传送和逻辑运算基本上都得通过工作寄存器W(相当于51系列的累加 器A)来进行,而51系列的还可以通过寄存器相互之间直接传送,因而PIC单片机的瓶颈现象比51系列还要严重,这在编程中的朋友应该深有体会。
史海拾趣
|
file:///C:/Documents%20and%20Settings/Administrator.79E68F10112A456/桌面/100_PANA/1.bmp老板今天扔给我一个液晶,说什么资料都没有! [ 本帖最后由 yjj 于 2009-8-12 13:25 编辑 ]… 查看全部问答> |
|
#include __CONFIG (INTRC & PROTECT & MCLREN & WDTEN); const unsigned char cs @ 0x1FF; void DelayUs( int x) // 32US {while(--x!=0) { CLRWDT(); NOP(); unsigned ...… 查看全部问答> |
|
比如下面这段代码:void main(void){WDTCTL = WDTPW + WDTHOLD; //停止看门狗定时器P1DIR |= 0x01; // 设P1.0为输出//TA1CTL = RT1SSEL_0 + MC_2 + TAIE; // ACLK, 定时器A计数模式,且开中断功能TA1CTL=TASSEL_2+ID_3+MC_1; //SMCLK(8KHZ). 8分频 ...… 查看全部问答> |
|
正向电压测试 正向电压(VF)测试对激光二极管的正向直流特性进行校验,测量时扫描电流IF,测量激光二极管上的电压降。 一些大功率激光二极管可能要求电流扫描范围达到2~3A,步长一般在1mA。更多情况下,一般电流扫描至1A,步长为0.5mA或0.25mA。 ...… 查看全部问答> |
|
我正在看东南大学凌明老师的, 里面讲字符指针变量与字符数组的区别时提到, \"对数组初始化要用static, 对指针变量不用.\" 我自己在写程序时从来没有在数组初始化时前面加static呀...所以我很困惑...求达人解释… 查看全部问答> |




