如何學(xué)習(xí)PIC單片機(jī)
據(jù)統(tǒng)計(jì),我國的單片機(jī)年容量已達(dá)1-3億片,且每年以大約16%的速度增長,但相對于世界市場我國的占有率還不到1%。這說明單片機(jī)應(yīng)用在我國才剛剛起步,有著廣闊的前景。培養(yǎng)單片機(jī)應(yīng)用人才,特別是在工程技術(shù)人員中普及單片機(jī)知識有著重要的現(xiàn)實(shí)意義。現(xiàn)在單片機(jī)的應(yīng)用越來越廣泛,但是你真的了解單片機(jī)嗎?本文就讓我們一起來了解一下單片機(jī)吧。
什么是單片機(jī)?
單片機(jī),全稱單片微型計(jì)算機(jī),是把中央處理器、存儲器、定時(shí)/計(jì)數(shù)器、各種輸入輸出接口等都集成在一塊集成電路芯片上的微型計(jì)算機(jī)。其主要應(yīng)用于功能較為單一的物件中。
絕大多數(shù)的單片機(jī)都是基于馮·諾伊曼結(jié)構(gòu)的,這種結(jié)構(gòu)清楚地定義了嵌入式系統(tǒng)所必需的四個(gè)基本部分:一個(gè)中央處理器核心,程序存儲器(只讀存儲器或者閃存)、數(shù)據(jù)存儲器(隨機(jī)存儲器)、一個(gè)或者更多的定時(shí)/計(jì)數(shù)器,還有用來與外圍設(shè)備以及擴(kuò)展資源進(jìn)行通信的輸入/輸出端口——所有這些都被集成在單個(gè)集成電路芯片上。說單片機(jī)與通用型中央處理單元芯片不同,是因?yàn)榍罢咭话愫苋菀着浜献钚⌒偷耐獠恐С中酒瞥晒ぷ饔?jì)算機(jī)。這樣就可以很容易的把單片機(jī)系統(tǒng)植入裝置內(nèi)部來控制裝置了。近年來為了在指令和數(shù)據(jù)上使用不同的字寬,并提高處理器流水線速度,哈佛結(jié)構(gòu)在微控制器和數(shù)字信號處理器也逐漸得到了廣泛的應(yīng)用。
PIC單片機(jī)有什么優(yōu)勢?
1) PIC 最大的特點(diǎn)是不搞單純的功能堆積,而是從實(shí)際出發(fā),重視產(chǎn)品的性能與價(jià)格比,靠發(fā)展多種型號來滿足不同層次的應(yīng)用要求。就實(shí)際而言,不同的應(yīng)用對單片機(jī)功能和資源的需求也是不同的。
2) 精簡指令使其執(zhí)行效率大為提高。PIC 系列 8 位 CMOS 單片機(jī)具有獨(dú)特 的 RISC 結(jié)構(gòu),數(shù)據(jù)總線和指令總線分離的哈佛總線(Harvard)結(jié)構(gòu),使指令具有單字長的特性,且允許指令碼的位數(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)用程序開發(fā)完成后立刻使該產(chǎn)品上市。
4) PIC 有優(yōu)越開發(fā)環(huán)境。OTP 單片機(jī)開發(fā)系統(tǒng)的實(shí)時(shí)性是一個(gè)重要的指標(biāo),普通 51 單片機(jī)的開發(fā)系統(tǒng)大都采用高檔型號仿真低檔型號,其實(shí)時(shí)性不盡理想。PIC 在推出一款新型號的同時(shí)推出相應(yīng)的仿真芯片,所有的開發(fā)系統(tǒng)由專用的仿真芯片支持,實(shí)時(shí)性非常好。就我個(gè)人的經(jīng)驗(yàn)看,還沒有出現(xiàn)過仿真結(jié)果與實(shí)際運(yùn)行結(jié)果不同的情況。
5) 其引腳具有防瞬態(tài)能力,通過限流電阻可以接至 220V 交流電源,可直接與繼電器控制電路相連,無須光電耦合器隔離,給應(yīng)用帶來極大方便。
6) 徹底的保密性。PIC 以保密熔絲來保護(hù)代碼,用戶在燒入代碼后熔斷熔絲,別人再也無法讀出,除非恢復(fù)熔絲。目前,PIC 采用熔絲深埋工藝,恢復(fù)熔絲的可能性極小。
7) 自帶看門狗定時(shí)器,可以用來提高程序運(yùn)行的可靠性。
8) 睡眠和低功耗模式。
PIC單片機(jī)與51系列單片機(jī)的區(qū)別
PIC單片機(jī)的型號繁多,對初學(xué)者來說實(shí)在不好應(yīng)付,容易混淆,以下作一簡單分類,希望有助于初學(xué)者學(xué)習(xí): 初檔8位單片機(jī):PIC12C5XXX/16C5X系列
PIC16C5X系列是最早在市場上得到發(fā)展的系列,因其價(jià)格較低,且有較完善的開發(fā)手段,因此在國內(nèi)應(yīng)用最為廣泛;而PIC12C5XX是世界第一個(gè)八腳低價(jià)位單片機(jī)可用于簡單的智能控制等一些對單片機(jī)體積要求較高的地方,前景十分廣闊。
中檔8位單片機(jī):PIC12C6XX/PIC16CXXX系列
PIC中檔產(chǎn)品是Microchip近年來重點(diǎn)發(fā)展的系列產(chǎn)品,品種最為豐富,其性能比低檔產(chǎn)品有所提高,增加了中斷功能,指令周期可達(dá)到200ns,帶A/D,內(nèi)部E2PROM數(shù)據(jù)存儲器,雙時(shí)鐘工作,比較輸出,捕捉輸入,PWM輸出,I2C和SPI接口,異步串行通訊(USART),模擬電壓比較器及LCD驅(qū)動等等,其封裝從8腳到68腳,可用于高、中、低檔的電子產(chǎn)品設(shè)計(jì)中,價(jià)格適中,廣泛應(yīng)用在各類電子產(chǎn)品中。
高檔8位單片機(jī):PIC17CXX系列
PIC17CXX是適合高級復(fù)雜系統(tǒng)開發(fā)的系列產(chǎn)品,其性能在中檔位單片機(jī)的基礎(chǔ)上增加了硬件乘法器,指令周期可達(dá)成160ns,它是目前世界上8位單片機(jī)中性價(jià)比最高的機(jī)種,可用于高、中檔產(chǎn)品的開發(fā),如馬達(dá)控制、音調(diào)合成。
應(yīng)該說有三個(gè)主要區(qū)別:
(1)總線結(jié)構(gòu):MCS-51的總線結(jié)構(gòu)是馮-諾依曼型,計(jì)算機(jī)在同一個(gè)存儲空間取指令和數(shù)據(jù),兩者不能同時(shí)進(jìn)行;而PIC的總線結(jié)構(gòu)是哈佛結(jié)構(gòu),指令和數(shù)據(jù)空間是完全分開的,一個(gè)用于指令,一個(gè)用于數(shù)據(jù),由于可以對程序和數(shù)據(jù)同時(shí)進(jìn)行訪問,所以提高了數(shù)據(jù)吞吐率。正因?yàn)樵赑IC系列單片機(jī)中采用了哈佛雙總線結(jié)構(gòu),所以與常見的微控制器不同的一點(diǎn)是:程序和數(shù)據(jù)總線可以采用不同的寬度。數(shù)據(jù)總線都是8位的,但指令總線位數(shù)分別位12、14、16位。
(2)流水線結(jié)構(gòu):MCS-51的取指和執(zhí)行采用單指令流水線結(jié)構(gòu),即取一條指令,執(zhí)行完后再取下一條指令;而PIC的取指和執(zhí)行采用雙指令流水線結(jié)構(gòu),當(dāng)一條指令被執(zhí)行時(shí),允許下一條指令同時(shí)被取出,這樣就實(shí)現(xiàn)了單周期指令。
(3)寄存器組:PIC的所有寄存器,包括I/O口,定時(shí)器和程序計(jì)數(shù)器等都采用RAM結(jié)構(gòu)形式,而且都只需要一個(gè)指令周期就可以完成訪問和操作;而MCS-51需要兩個(gè)或兩個(gè)以上的周期才能改變寄存器的內(nèi)容。
如何選擇單片機(jī)產(chǎn)品?
當(dāng)今單片機(jī)廠商琳瑯滿目,產(chǎn)品性能各異。針對具體情況,我們應(yīng)選何種型號呢?首先,我們來弄清兩個(gè)概念:集中指令集(CISC)和精簡指令集(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é),程序存儲器的空間利用率大大提高,有利于實(shí)現(xiàn)超小型化。
屬于CISC結(jié)構(gòu)的單片機(jī)有Intel8051系列、Motorola和M68HC系列、Atmel的AT89系列、臺灣Winbond(華邦)W78系列、荷蘭Pilips的PCF80C51系列等;屬于RISC結(jié)構(gòu)的有Microchip公司的PIC系列、Zilog的Z86系列、Atmel的AT90S系列、韓國三星公司的KS57C系列4位單片機(jī)、臺灣義隆的EM-78系列等。一般來說,控制關(guān)系較簡單的小家電,可以采用RISC型單片機(jī);控制關(guān)系較復(fù)雜的場合,如通訊產(chǎn)品、工業(yè)控制系統(tǒng)應(yīng)采用CISC單片機(jī)。不過,RISC單片機(jī)的迅速完善,使其佼佼者在控制關(guān)系復(fù)雜的場合也毫不遜色。
今天的有關(guān)單片機(jī)的知識的分享就到這里啦,希望能對工程師們有幫助。