計(jì)算機(jī)系統(tǒng)已明顯地朝巨型化、單片化、網(wǎng)絡(luò)化三個(gè)方向發(fā)展。巨型化發(fā)展的目的在于不斷提高計(jì)算機(jī)的運(yùn)算速度和處理能力,以解決復(fù)雜系統(tǒng)計(jì)算和高速數(shù)據(jù)處理,比如系統(tǒng)仿真和模擬、實(shí)時(shí)運(yùn)算和處理。單片化就是把計(jì)算機(jī)系統(tǒng)盡可能集成在一塊半導(dǎo)體芯片上,其目的在于計(jì)算機(jī)微型化和提高系統(tǒng)的可靠性,通常把這種單片計(jì)算機(jī)簡(jiǎn)稱(chēng)單片機(jī)。準(zhǔn)確而言,單片機(jī)(單片微型計(jì)算機(jī))實(shí)際上是一種將CPU(中央處理器)、存儲(chǔ)器和輸入輸出接口集成在一個(gè)芯片中的微型計(jì)算機(jī)。單片機(jī)的內(nèi)部硬件結(jié)構(gòu)和指令系統(tǒng)主要是針對(duì)自動(dòng)控制應(yīng)用而設(shè)計(jì)的,所以單片機(jī)又稱(chēng)微控制器mcu(MicroController Unit),又由于用它可以很容易地將計(jì)算機(jī)嵌入到各種儀器和現(xiàn)場(chǎng)控制設(shè)備中,因此單片機(jī)也叫嵌入式微控制器(Embedded MCU)。
單片機(jī)要進(jìn)行工作,必須構(gòu)成單片機(jī)系統(tǒng)。單片機(jī)系統(tǒng)實(shí)質(zhì)上就是一個(gè)微計(jì)算機(jī)系統(tǒng),它主要由硬件和軟件兩大部分組成,硬件是指構(gòu)成計(jì)算機(jī)系統(tǒng)的所有電子、機(jī)械和磁性的部件或設(shè)備,軟件則是各種程序及數(shù)據(jù)的總稱(chēng)。圖1給出單片微計(jì)算機(jī)系統(tǒng)的具體構(gòu)成。
二、單片機(jī)發(fā)展概述
單片機(jī)出現(xiàn)的歷史并不長(zhǎng),但發(fā)展十分迅猛。 它的產(chǎn)生與發(fā)展和微處理器的產(chǎn)生與發(fā)展大體同步,自1971年美國(guó)Intel公司首先推出4位微處理器以來(lái),它的發(fā)展到目前為止大致可分為5個(gè)階段。下面以Intel公司的單片機(jī)發(fā)展為代表加以介紹。
第1階段(1971~1976): 單片機(jī)發(fā)展的初級(jí)階段。 1971年11月Intel公司首先設(shè)計(jì)出集成度為2000只晶體管/片的4位微處理器Intel 4004, 并配有RAM、 ROM和移位寄存器, 構(gòu)成了第一臺(tái)MCS—4微處理器, 而后又推出了8位微處理器Intel 8008, 以及其它各公司相繼推出的8位微處理器。
第2階段(1976~1980):低性能單片機(jī)階段。 以1976年Intel公司推出的MCS—48系列為代表, 采用將8位CPU、 8位并行I/O接口、8位定時(shí)/計(jì)數(shù)器、RAM和ROM等集成于一塊半導(dǎo)體芯片上的單片結(jié)構(gòu), 雖然其尋址范圍有限(不大于4 KB), 也沒(méi)有串行I/O, RAM、 ROM容量小, 中斷系統(tǒng)也較簡(jiǎn)單, 但功能可滿足一般工業(yè)控制和智能化儀器、儀表等的需要。
第3階段(1980~1983):高性能單片機(jī)階段。 這一階段推出的高性能8位單片機(jī)普遍帶有串行口, 有多級(jí)中斷處理系統(tǒng), 多個(gè)16位定時(shí)器/計(jì)數(shù)器。片內(nèi)RAM、 ROM的容量加大,且尋址范圍可達(dá)64 KB,個(gè)別片內(nèi)還帶有A/D轉(zhuǎn)換接口。
第4階段(1983~80年代末): 16位單片機(jī)階段。 1983年Intel公司又推出了高性能的16位單片機(jī)MCS-96系列, 由于其采用了最新的制造工藝, 使芯片集成度高達(dá)12萬(wàn)只晶體管/片。
第5階段(1990年代):?jiǎn)纹瑱C(jī)在集成度、功能、速度、可靠性、應(yīng)用領(lǐng)域等全方位向更高水平發(fā)展。
按照單片機(jī)的特點(diǎn),單片機(jī)的應(yīng)用分為單機(jī)應(yīng)用與多機(jī)應(yīng)用。在一個(gè)應(yīng)用系統(tǒng)中,只使用一片單片機(jī)稱(chēng)為單機(jī)應(yīng)用。單片機(jī)的單機(jī)應(yīng)用的范圍包括:
?。?) 測(cè)控系統(tǒng)。 用單片機(jī)可以構(gòu)成各種不太復(fù)雜的工業(yè)控制系統(tǒng)、自適應(yīng)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)等, 達(dá)到測(cè)量與控制的目的。
?。?) 智能儀表。 用單片機(jī)改造原有的測(cè)量、控制儀表, 促進(jìn)儀表向數(shù)字化、智能化、多功能化、綜合化、柔性化方向發(fā)展。
?。?) 機(jī)電一體化產(chǎn)品。單片機(jī)與傳統(tǒng)的機(jī)械產(chǎn)品相結(jié)合, 使傳統(tǒng)機(jī)械產(chǎn)品結(jié)構(gòu)簡(jiǎn)化, 控制智能化。
?。?) 智能接口。 在計(jì)算機(jī)控制系統(tǒng), 特別是在較大型的工業(yè)測(cè)、控系統(tǒng)中, 用單片機(jī)進(jìn)行接口的控制與管理, 加之單片機(jī)與主機(jī)的并行工作, 大大提高了系統(tǒng)的運(yùn)行速度。
?。?) 智能民用產(chǎn)品。 如在家用電器、玩具、游戲機(jī)、聲像設(shè)備、電子秤、收銀機(jī)、辦公設(shè)備、廚房設(shè)備等許多產(chǎn)品中, 單片機(jī)控制器的引入, 不僅使產(chǎn)品的功能大大增強(qiáng), 性能得到提高, 而且獲得了良好的使用效果。
單片機(jī)的多機(jī)應(yīng)用系統(tǒng)可分為功能集散系統(tǒng)、并行多機(jī)處理及局部網(wǎng)絡(luò)系統(tǒng)。
?。?) 功能集散系統(tǒng)。 多功能集散系統(tǒng)是為了滿足工程系統(tǒng)多種外圍功能的要求而設(shè)置的多機(jī)系統(tǒng)。
?。?) 并行多機(jī)控制系統(tǒng)。 并行多機(jī)控制系統(tǒng)主要解決工程應(yīng)用系統(tǒng)的快速性問(wèn)題, 以便構(gòu)成大型實(shí)時(shí)工程應(yīng)用系統(tǒng)。
?。?) 局部網(wǎng)絡(luò)系統(tǒng)。
二、常用單片機(jī)系列
1.8051系列單片機(jī)
Intel公司于1980年推出8位的高性能8051單片機(jī),在工業(yè)控制領(lǐng)域引起不小的轟動(dòng),并迅速確立了其不可動(dòng)搖的地位。之后不久,Intel公司徹 底開(kāi)放了8051單片機(jī)的技術(shù),引來(lái)世界上很多半導(dǎo)體廠商加入了開(kāi)發(fā)和改造8051單片機(jī)的行列中,這其中貢獻(xiàn)最大的有Philipe公司,它著力發(fā)展了 單片機(jī)的控制功能和外圍單元;Atmel公司,它在單片機(jī)內(nèi)部植入了Flash ROM,使得單片機(jī)應(yīng)用變得更靈活,在我國(guó)擁有大量的用戶;ADI公司,它推出的AduC8 xx系列單片機(jī),在單片機(jī)向SOC發(fā)展的模/數(shù)混合集成電路發(fā)展過(guò)程中扮演了很重要的角色;Cygnai公司,它采用一種全新的流水線設(shè)計(jì)思路,使單片機(jī) 的運(yùn)算速度得到了極大的提高,在向SOC發(fā)展的過(guò)程中邁出了一大步。
目前8051系列單片機(jī)各生產(chǎn)廠商的主流產(chǎn)品有幾十個(gè)系列,幾百個(gè)品種。盡管其各具特色,名稱(chēng)各異,但作為集CPU、RAM、ROM(或EPROM)、 I/O接口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)為一體的單片機(jī),其原理大同小異。現(xiàn)以Intel公司的系列產(chǎn)品為例,說(shuō)明其各系列之間的區(qū)別。
Intel公司從其生產(chǎn)單片機(jī)開(kāi)始,發(fā)展到現(xiàn)在,大體上可分為3大系列: MCS-48系列、MCS-51系列、MCS-96系列。該3大系列的性能簡(jiǎn)介見(jiàn)表1。
表1 Intel單片機(jī)系列性能簡(jiǎn)介
這里,我們僅對(duì)MCS-51系列作一簡(jiǎn)要介紹。MCS-51系列單片機(jī)雖已有10多種產(chǎn)品,但可分為兩大系列:MCS-51子系列與MCS-52子 系列。 MCS-51子系列中主要有8031、8051、8751 三種類(lèi)型。而MCS-52子系列也有3種類(lèi)型8032、8052、8752。各子系列配置見(jiàn)表1.2所示。
表1.2中列出了MCS-51系列單片機(jī)的兩個(gè)子系列,在4個(gè)性能上略有差異。 由此可見(jiàn),在本子系列內(nèi)各類(lèi)芯片的主要區(qū)別在于片內(nèi)有無(wú)ROM或EPROM;MCS-51與MCS-52子系列間所不同的是片內(nèi)程序存儲(chǔ)器ROM從4 KB增至8 KB;片內(nèi)數(shù)據(jù)存儲(chǔ)器由128個(gè)字節(jié)增至256個(gè)字節(jié);定時(shí)器/計(jì)數(shù)器增加了一個(gè);中斷源增加了1~2個(gè)。另外,對(duì)于制造工藝為CHMOS的單片機(jī),由于采用 CMOS技術(shù)制造,因此具有低功耗的特點(diǎn),如8051功耗約為630 mW,而80C51的功耗只有120 mW。
2.其它單片機(jī)
當(dāng)很多公司在改造MCS-51系列單片機(jī)的同時(shí),世界上一些有影響力的大公司也在開(kāi)發(fā)自己的單片機(jī),比如Motorola、TI、Microchip、OKI、Epson等。這些單片機(jī)的指令系統(tǒng)和內(nèi)部結(jié)構(gòu)都和MCS-51系列單片機(jī)不同,功能也各有千秋。
(1)Motorola的單片機(jī)
Motorola是世界上最早開(kāi)發(fā)單片機(jī)的著名廠商,是目前全球最大的8位單片機(jī)生產(chǎn)商。現(xiàn)在已經(jīng)擁有8位、16位和32位約十幾個(gè)系列的單片機(jī),這其中 8位機(jī)主要有68HC05、68HC08和68HC11等3個(gè)系列;16位機(jī)主要有HCS12、68HC12、DSP56800和68HC16等4個(gè)系 列;32位機(jī)主要有Coldfire的MC683xx、MCORE、MPC500和MCF5 xxx等系列。Motorola單片機(jī)的功能一般都很強(qiáng),進(jìn)入我國(guó)的時(shí)間也很早,在單片機(jī)應(yīng)用領(lǐng)域有很高的威望,但由于其開(kāi)發(fā)工具價(jià)格較高,影響了普及率。
(2)Microchip公司的PIC單片機(jī)
Microchip公司是當(dāng)今世界上第二大8位單片機(jī)生產(chǎn)商,Microchip單片機(jī)在我國(guó)也有比較多的用戶,近幾年隨著Microchip不斷推出頗 具特色的各型單片機(jī),Microchip已越來(lái)越受到業(yè)界的廣泛關(guān)注。目前,市面上比較常見(jiàn)的單片機(jī)主要有以下3個(gè)系 列:PIC12C5xxx/16C5x系列,這兩個(gè)系列的單片機(jī)是PIC單片機(jī)中的低端產(chǎn)品,其中PIC16C5x系列是最早在市場(chǎng)上得到發(fā)展的系列,因其價(jià)格較低,且有較完善的開(kāi)發(fā)手段,因此在國(guó)內(nèi)應(yīng)用最為廣泛;而PIC12C5xx是世界上第一個(gè)8腳低價(jià)位單片機(jī),可用于一些對(duì)單片機(jī)體積要求較高的簡(jiǎn) 單智能控制領(lǐng)域,前景十分廣闊。PIC12C6xx/ PIC16Cxxx系列是PIC中檔產(chǎn)品,是Microchip近年來(lái)重點(diǎn)發(fā)展的系列產(chǎn)品,品種最為豐富,其性能比低檔產(chǎn)品有所提高,指令周期可達(dá)到 200ns,增加了中斷功能、帶A/D、內(nèi)部E2PROM數(shù)據(jù)存儲(chǔ)器、雙時(shí)鐘工作、比較輸出、捕捉輸入、PWM輸出、I2C和SPI接口、異步串行通信 (USART)、模擬電壓比較器及LCD驅(qū)動(dòng)等,其封裝從8腳到68腳,可用于高、中、低檔的電子產(chǎn)品設(shè)計(jì)中,適合于高級(jí)復(fù)雜系統(tǒng)的開(kāi)發(fā),其性能在中檔位單片機(jī)的基礎(chǔ)上增加了硬件乘法器,指令周期可達(dá)成160ns,它是目前世界上8位單片機(jī)中性?xún)r(jià)比最高的機(jī)種之一,可用于高、中檔產(chǎn)品的開(kāi)發(fā),如馬達(dá)控制、音調(diào)合成。
(3)TI(Texas Instruments)公司的MSP430單片機(jī)
TI公司是聞名全球的DSP制造商,但其前幾年才推出的MSP430系列16位單片機(jī)同樣在業(yè)界掀起不小的波瀾。MSP430系列單片機(jī)最突出的特點(diǎn)是低電壓供電和超低功耗,非常適合應(yīng)用于采用電池長(zhǎng)時(shí)間工作的場(chǎng)合。電壓范圍為1.8~3.6V;在1MHZ2.2V下,活動(dòng)模式功耗為225μA,待機(jī)模式 功耗為0.8μA、掉電模式功耗為0.1μA。在這個(gè)系列中有很多個(gè)型號(hào),它們是由一些基本功能模塊按照不同的應(yīng)用目標(biāo)組合而成的。MSP430系列單片 機(jī)的CPU采用16位RISC精簡(jiǎn)指令系統(tǒng),集成有16位寄存器和常數(shù)發(fā)生器,發(fā)揮了最高代碼效率;它采用數(shù)字控制振蕩器(DCO),使得從低功耗模式到 喚醒模式的轉(zhuǎn)換時(shí)間小于6μs;內(nèi)部集成了A/D轉(zhuǎn)換器,工業(yè)應(yīng)用方便;其中MSP430x41x系列設(shè)計(jì)有一個(gè)16位定時(shí)器、一個(gè)比較器、96段LCD 液晶驅(qū)動(dòng)器和48個(gè)通用I/O口。
下面介紹MCU的應(yīng)用案例及參考設(shè)計(jì)。