历史上的今天
今天是:2025年02月17日(星期一)
2020年02月17日 | PIC单片机的原理介绍
2020-02-17 来源:eefocus
简介:据统计,我国的单片机年容量已达1-3亿片,且每年以大约16%的速度增长,但相对于世界市场我国的占有率还不到1%。这说明单片机应用在我国才刚刚起步,有着广阔的前景。培养单片机应用人才,特别是在工程技术人员中普及单片机知识有着重要的现实意义。 本文主要介绍PIC单片机的原理。
当今单片机厂商琳琅满目,产品性能各异。针对具体情况,我们应选何种型号呢?首先,我们来弄清两个概念:集中指令集(CISC)和精简指令集(RISC)。采用CISC结构的单片机数据线和指令线分时复用,即所谓冯.诺伊曼结构。它的指令丰富,功能较强,但取指令和取数据不能同时进行,速度受限,价格亦高。采用RISC结构的单片机数据线和指令线分离,即所谓哈佛结构。这使得取指令和取数据可同时进行,且由于一般指令线宽于数据线,使其指令较同类CISC单片机指令包含更多的处理信息,执行效率更高,速度亦更快。同时,这种单片机指令多为单字节,程序存储器的空间利用率大大提高,有利于实现超小型化。属于CISC结构的单片机有Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、台湾Winbond(华邦)W78系列、荷兰Pilips的PCF80C51系列等;属于RISC结构的有Microchip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韩国三星公司的KS57C系列4位单片机、台湾义隆的EM-78系列等。一般来说,控制关系较简单的小家电,可以采用RISC型单片机;控制关系较复杂的场合,如通讯产品、工业控制系统应采用CISC单片机。不过,RISC单片机的迅速完善,使其佼佼者在控制关系复杂的场合也毫不逊色。
根据程序存储方式的不同,单片机可分为EPROM、OTP(一次可编程)、QTP(掩膜)三种。我国一开始都采用ROMless型单片机(片内无ROM,需片外配EPROM),对单片机的普及起了很大作用,但这种强调接口的单片机无法广泛应用,甚至走入了误区。如单片机的应用一味强调接口,外接I/O及存储器,便失去了单片机的特色。目前单片机大都将程序存储体置于其内,给应用带来了极大的方便。值得一提的是,以往OTP型单片机的价格是QTP的3倍,而现在已降至1.5-1.2倍,选用OTP型以免订货周期、批量的麻烦是可取的。
二、PIC系列单片机有什么优势?
自从我95年接触PIC单片机以来,便一直热衷于这种单片机的开发与应用。有不少朋友问我:PIC到底有什么优势?也许你也会有这样的疑问,所以我在这里略谈几点自己的看法。
1) PIC最大的特点是不搞单纯的功能堆积,而是从实际出发,重视产品的性能与价格比,靠发展多种型号来满足不同层次的应用要求。就实际而言,不同的应用对单片机功能和资源的需求也是不同的。比如,一个摩托车的点火器需要一个I/O较少、RAM及程序存储空间不大、可靠性较高的小型单片机,若采用40脚且功能强大的单片机,投资大不说,使用起来也不方便。PIC系列从低到高有几十个型号,可以满足各种需要。其中,IC12C508单片机仅有8个引脚,是世界上最小的单片机,该型号有512字节ROM、25字节RAM、一个8位定时器、一根输入线、5根I/O线,市面售价在3-6元人人民币。这样一款单片机在象摩托车点火器这样的应用无疑是非常适合。PIC的高档型号,如PIC16C74(尚不是最高档型号)有40个引脚,其内部资源为ROM共4K、192字节RAM、8路A/D、3个8位定时器、2个CCP模块、三个串行口、1个并行口、11个中断源、33个I/O脚。这样一个型号可以和其它品牌的高档型号媲美。
2)精简指令使其执行效率大为提高。PIC系列8位CMOS单片机具有独特的RISC结构,数据总线和指令总线分离的哈佛总线(Harvard)结构,使指令具有单字长的特性,且允许指令码的位数可多于8位的数据位数,这与传统的采用CISC结构的8位单片机相比,可以达到2:1的代码压缩,速度提高4倍。
3)产品上市零等待(Zero time to market)。采用PIC的低价OTP型芯片,可使单片机在其应用程序开发完成后立刻使该产品上市。
4) PIC有优越开发环境。OTP单片机开发系统的实时性是一个重要的指标,象普通51单片机的开发系统大都采用高档型号仿真低档型号,其实时性不尽理想。PIC在推出一款新型号的同时推出相应的仿真芯片,所有的开发系统由专用的仿真芯片支持,实时性非常好。就我个人的经验看,还没有出现过仿真结果与实际运行结果不同的情况。
5)其引脚具有防瞬态能力,通过限流电阻可以接至220V交流电源,可直接与继电器控制电路相连,无须光电耦合器隔离,给应用带来极大方便。
6)彻底的保密性。PIC以保密熔丝来保护代码,用户在烧入代码后熔断熔丝,别人再也无法读出,除非恢复熔丝。目前,PIC采用熔丝深埋工艺,恢复熔丝的可能性极小。
7)自带看门狗定时器,可以用来提高程序运行的可靠性。
8)睡眠和低功耗模式。虽然PIC在这方面已不能与新型的TI-MSP430相比,但在大多数应用场合还是能满足需要的。
史海拾趣
|
1) CCTV的含义是什么? 答: CCTV 是英文Closed Circuit Television的缩写,意思是闭路电视监控系统 2) 什么是镜头的焦距? 答: 从光学原理来讲焦距就是从焦点到透镜中心的距离。即焦距长度。如\"f=8-24mm,\",就是指镜头的焦距长度为8-24mm ...… 查看全部问答> |
|
0x06 0x04 ........这些数代表寄存器的地址吗?还是代表的数字? 但#define SLIDE_LENGTH 4中的4代表什么? // X5045 related constant//相关数据 #define WREN 0x06 #define WRDI &nbs ...… 查看全部问答> |
|
在通用汽车新出厂的凯迪拉克汽车上,均已安装了名为“安吉星”的车载安全信息服务系统。系统工作依托3G网络,每辆汽车都拥有独立的189 3G号码。在工博会电信展区,我们看到了这辆“3G汽车”。 据介绍,与其他汽车不同,3G汽车后视镜有三个按钮 ...… 查看全部问答> |
|
我需要做个程序,是工控机内的JAVA WEB开发,需要做到是网站上点击一个按钮就拨出电话,再点另一个挂机按钮自动挂断,并且能知道打了多少分钟,打得电话号码多少这些资料的,谁能提供一点帮助,谢谢… 查看全部问答> |
|
P1.0 作为输入 P1.1 作为输出 一直检测P1.0端,当出现低电平时 延时100MS ,再测P1.0,如果还是低电平,则在P1.1端输出一个脉冲后返回循环起点,反之则返回循环起点 我是新手,希望前辈们能帮我写下!~~ 有急用 谢谢~ … 查看全部问答> |
|
关于STM32的PWM快速打开/关闭,以及空闲时管脚电平设置 现在使用TIM3来产生PWM波形,并通过软件打开/关闭PWM以实现调制波形。做法是: 打开:TIM_Cmd(TIM3, ENABLE); 关闭:TIM_Cmd(TIM3, DISABLE); 跟踪到TIM_Cmd之后,发现直接操作寄存器就可以了:TIMx->CR1 |= CR1_CEN_Set; 这个问题算解 ...… 查看全部问答> |




