PIC系列單片機(jī)在應(yīng)用時(shí)簡(jiǎn)介
一、引言
據(jù)統(tǒng)計(jì),我國(guó)的單片機(jī)年容量已達(dá)1-3億片,且每年以大約16%的速度增長(zhǎng),但相對(duì)于世界市場(chǎng)我國(guó)的占有率還不到1%。這說(shuō)明單片機(jī)應(yīng)用在我國(guó)才剛剛起步,有著廣闊的前景。培養(yǎng)單片機(jī)應(yīng)用人才,特別是在工程技術(shù)人員中普及單片機(jī)知識(shí)有著重要的現(xiàn)實(shí)意義。
當(dāng)今單片機(jī)廠商琳瑯滿目,產(chǎn)品性能各異。針對(duì)具體情況,我們應(yīng)選何種型號(hào)呢?首先,我們來(lái)弄清兩個(gè)概念:集中指令集(CISC)和精簡(jiǎn)指令集(RISC)。采用CISC結(jié)構(gòu)的單片機(jī)數(shù)據(jù)線和指令線分時(shí)復(fù)用,即所謂馮.諾伊曼結(jié)構(gòu)。它的指令豐富,功能較強(qiáng),但取指令和取數(shù)據(jù)不能同時(shí)進(jìn)行,速度受限,價(jià)格亦高。采用RISC結(jié)構(gòu)的單片機(jī)數(shù)據(jù)線和指令線分離,即所謂哈佛結(jié)構(gòu)。這使得取指令和取數(shù)據(jù)可同時(shí)進(jìn)行,且由于一般指令線寬于數(shù)據(jù)線,使其指令較同類CISC單片機(jī)指令包含更多的處理信息,執(zhí)行效率更高,速度亦更快。同時(shí),這種單片機(jī)指令多為單字節(jié),程序存儲(chǔ)器的空間利用率大大提高,有利于實(shí)現(xiàn)超小型化。屬于CISC結(jié)構(gòu)的單片機(jī)有Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、臺(tái)灣Winbond(華邦)W78系列、荷蘭Pilips的PCF80C51系列等;屬于RISC結(jié)構(gòu)的有MICroChip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韓國(guó)三星公司的KS57C系列4位單片機(jī)、臺(tái)灣義隆的EM-78系列等。一般來(lái)說(shuō),控制關(guān)系較簡(jiǎn)單的小家電,可以采用RISC型單片機(jī);控制關(guān)系較復(fù)雜的場(chǎng)合,如通訊產(chǎn)品、工業(yè)控制系統(tǒng)應(yīng)采用CISC單片機(jī)。不過(guò),RISC單片機(jī)的迅速完善,使其佼佼者在控制關(guān)系復(fù)雜的場(chǎng)合也毫不遜色。
根據(jù)程序存儲(chǔ)方式的不同,單片機(jī)可分為EPROM、OTP(一次可編程)、QTP(掩膜)三種。我國(guó)一開(kāi)始都采用ROMless型單片機(jī)(片內(nèi)無(wú)ROM,需片外配EPROM),對(duì)單片機(jī)的普及起了很大作用,但這種強(qiáng)調(diào)接口的單片機(jī)無(wú)法廣泛應(yīng)用,甚至走入了誤區(qū)。如單片機(jī)的應(yīng)用一味強(qiáng)調(diào)接口,外接I/O及存儲(chǔ)器,便失去了單片機(jī)的特色。目前單片機(jī)大都將程序存儲(chǔ)體置于其內(nèi),給應(yīng)用帶來(lái)了極大的方便。值得一提的是,以往OTP型單片機(jī)的價(jià)格是QTP的3倍,而現(xiàn)在已降至1.5-1.2倍,選用OTP型以免訂貨周期、批量的麻煩是可取的。
二、PIC系列單片機(jī)有什么優(yōu)勢(shì)?
自從我95年接觸PIC單片機(jī)以來(lái),便一直熱衷于這種單片機(jī)的開(kāi)發(fā)與應(yīng)用。有不少朋友問(wèn)我:PIC到底有什么優(yōu)勢(shì)?也許你也會(huì)有這樣的疑問(wèn),所以我在這里略談幾點(diǎn)自己的看法。
1) PIC最大的特點(diǎn)是不搞單純的功能堆積,而是從實(shí)際出發(fā),重視產(chǎn)品的性能與價(jià)格比,靠發(fā)展多種型號(hào)來(lái)滿足不同層次的應(yīng)用要求。就實(shí)際而言,不同的應(yīng)用對(duì)單片機(jī)功能和資源的需求也是不同的。比如,一個(gè)摩托車的點(diǎn)火器需要一個(gè)I/O較少、RAM及程序存儲(chǔ)空間不大、可靠性較高的小型單片機(jī),若采用40腳且功能強(qiáng)大的單片機(jī),投資大不說(shuō),使用起來(lái)也不方便。PIC系列從低到高有幾十個(gè)型號(hào),可以滿足各種需要。其中,PIC12C508單片機(jī)僅有8個(gè)引腳,是世界上最小的單片機(jī),
該型號(hào)有512字節(jié)ROM、25字節(jié)RAM、一個(gè)8位定時(shí)器、一根輸入線、5根I/O線,市面售價(jià)在3-6元人人民幣。這樣一款單片機(jī)在象摩托車點(diǎn)火器這樣的應(yīng)用無(wú)疑是非常適合。PIC的高檔型號(hào),如PIC16C74(尚不是最高檔型號(hào))有40個(gè)引腳,其內(nèi)部資源為ROM共4K、192字節(jié)RAM、8路A/D、3個(gè)8位定時(shí)器、2個(gè)CCP模塊、三個(gè)串行口、1個(gè)并行口、11個(gè)中斷源、33個(gè)I/O腳。這樣一個(gè)型號(hào)可以和其它品牌的高檔型號(hào)媲美。
2) 精簡(jiǎn)指令使其執(zhí)行效率大為提高。PIC系列8位CMOS單片機(jī)具有獨(dú)特的RISC結(jié)構(gòu),數(shù)據(jù)總線和指令總線分離的哈佛總線(Harvard)結(jié)構(gòu),使指令具有單字長(zhǎng)的特性,且允許指令碼的位數(shù)可多于8位的數(shù)據(jù)位數(shù),這與傳統(tǒng)的采用CISC結(jié)構(gòu)的8位單片機(jī)相比,可以達(dá)到2:1的代碼壓縮,速度提高4倍。
3) 產(chǎn)品上市零等待(Zero time to market)。采用PIC的低價(jià)OTP型芯片,可使單片機(jī)在其應(yīng)用程序開(kāi)發(fā)完成后立刻使該產(chǎn)品上市。
4) PIC有優(yōu)越開(kāi)發(fā)環(huán)境。OTP單片機(jī)開(kāi)發(fā)系統(tǒng)的實(shí)時(shí)性是一個(gè)重要的指標(biāo),象普通51單片機(jī)的開(kāi)發(fā)系統(tǒng)大都采用高檔型號(hào)仿真低檔型號(hào),其實(shí)時(shí)性不盡理想。PIC在推出一款新型號(hào)的同時(shí)推出相應(yīng)的仿真芯片,所有的開(kāi)發(fā)系統(tǒng)由專用的仿真芯片支持,實(shí)時(shí)性非常好。就我個(gè)人的經(jīng)驗(yàn)看,還沒(méi)有出現(xiàn)過(guò)仿真結(jié)果與實(shí)際運(yùn)行結(jié)果不同的情況。
5) 其引腳具有防瞬態(tài)能力,通過(guò)限流電阻可以接至220V交流電源,可直接與繼電器控制電路相連,無(wú)須光電耦合器隔離,給應(yīng)用帶來(lái)極大方便。
6) 徹底的保密性。PIC以保密熔絲來(lái)保護(hù)代碼,用戶在燒入代碼后熔斷熔絲,別人再也無(wú)法讀出,除非恢復(fù)熔絲。目前,PIC采用熔絲深埋工藝,恢復(fù)熔絲的可能性極小。
7) 自帶看門(mén)狗定時(shí)器,可以用來(lái)提高程序運(yùn)行的可靠性。
8) 睡眠和低功耗模式。雖然PIC在這方面已不能與新型的TI-MSP430相比,但在大多數(shù)應(yīng)用場(chǎng)合還是能滿足需要的。