PIC系列单片机是美国微芯公司(Microship)的产品,是当前市场份额增长最快的单片机之一。CPU采用精简指令集计算机(RISC)结构,分别有33、35、58条指令(视单片机的级别而定)。而51系列单片机有111条指令,AVR单片机有118条指令,都比PIC系列单片机复杂。采用哈佛(Harvard)双总线结构,运行速度快(指令周期约为160~200ns),它能使程序存储器的访问和数据存储器的访问并行处理,这种指令流水线结构,在一个周期内完成两部分工作:一是执行指令;二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期(个别除外),这也是高效率运行的原因之一。此外,它还具有低工作电压、低功耗、驱动能力强等特点。PIC系列单片机共分三个级别:基本级、中级、高级。其中,又以中级的PIC16F873(A)、PIC16F877(A)用得最多,本书以这两种单片机为例进行说明。这两种芯片除了引出脚不同外(PIC16F873(A)为28脚的塑料双列直插式封装(PDIP)或小外廓集成电路(SOIC)封装;PIC16F877(A)为40脚的PDIP或44脚的塑料有引线片式载体(PLCC)封装、方形扁平封装(QFP)),其他的差别并不很大。
PIC系列单片机的I/O端口是双向的,其输出为CMOS互补推挽输出电路。I/O引脚增加了用于设置输入或输出状态的方向寄存器(TRISn,其中n对应各端口,如A、B、C、D、E等),从而解决了51系列I/O引脚为高电平时同为输入和输出的状态。当置位1时,为输入状态,且不管该引脚呈高电平或低电平,对外均呈高阻状态;置位0时,为输出状态,不管该引脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达25mA,高电平输出电流可达20mA。相对于51系列单片机而言,这是一个很大的优点,它可以直接驱动数码管显示,并且外电路比较简单。它的A/D为10位,能满足精度要求。具有在线调试及编程(ISP)功能。
该系列单片机的特殊功能寄存器(SFR)并不像51系列单片机那样都集中在一个固定的地址区间内(80~FFH),而是分散在4个地址区间内,即存储体0(Bank0:00~7FH)、存储体1(Bank1:80~FFH)、存储体2(Bank2:100~17FH)、存储体3(Bank3:180~1FFH)。只有5个专用寄存器PCL、STATUS、FSR、PCLATH、INTCON在4个存储体内同时出现。在编程过程中,少不了要与专用寄存器打交道,得反复地选择对应的存储体,也即对状态寄存器STATUS的第6位(RP1)和第5位(RP0)置位或清零。这多少给编程带来了一些麻烦。对于上述的单片机,它的位指令操作通常限制在存储体0区间(00~7FH)。(www.xing528.com)
数据的传送和逻辑运算基本上都得通过工作寄存器W(相当于51系列单片机的累加器A)来进行,而51系列单片机还可以通过寄存器相互之间直接传送(如:MOV30H,20H;将寄存器20H的内容直接传送至寄存器30H中),因而PIC单片机的瓶颈现象比51系列单片机还要严重,这在编程中很有感受。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。