微控制器的使用已滲透入生活各方面,為增進(jìn)大家對(duì)微控制器的了解,本文將對(duì)微控制器、微控制器應(yīng)用予以介紹。
國(guó)際上微處理器根據(jù)應(yīng)用的領(lǐng)域不同分為三類:一是通用高性能微處理器,二是嵌入式微處理器,三是微控制器。通用微處理器追求高性能,主要用于工作站和高性能個(gè)人計(jì)算機(jī)系統(tǒng)。嵌入式處理器主要用于運(yùn)行面向特定領(lǐng)域的專用程序,配備輕量級(jí)操作系統(tǒng)。它的應(yīng)用極其廣泛,像手機(jī)、VCD、機(jī)頂盒都是應(yīng)用這類處理器。微控制器是將微型計(jì)算機(jī)的主要部分集成在一個(gè)芯片上的單芯片微型計(jì)算機(jī)。微控制器主要用于汽車(chē)空調(diào)、自動(dòng)機(jī)械等領(lǐng)域的自控設(shè)備。
微控制器以其體積小、功耗低、使用方便等特點(diǎn),廣泛應(yīng)用于各種工業(yè)、民用的嵌入式系統(tǒng)中。
微型計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)
一、什么是微控制器?
一個(gè)微處理器就是一個(gè)計(jì)算機(jī)。所有的計(jì)算機(jī)——無(wú)論我們所說(shuō)的個(gè)人臺(tái)式計(jì)算機(jī)或是一臺(tái)大型計(jì)算機(jī)或是一個(gè)微控制器——都有很多共同點(diǎn):
所有的計(jì)算機(jī)都有一個(gè)用來(lái)執(zhí)行程序的CPU(中央處理單元)。如果你正坐在一臺(tái)臺(tái)式計(jì)算機(jī)前閱讀這篇文章,這臺(tái)計(jì)算機(jī)的CPU現(xiàn)在正在執(zhí)行一個(gè)程序,這個(gè)程序就是用于顯示這個(gè)網(wǎng)頁(yè)的Web瀏覽器。
CPU從某個(gè)設(shè)備中加載程序。在你的臺(tái)式計(jì)算機(jī)上,瀏覽器程序是從硬盤(pán)中載入的。
計(jì)算機(jī)具有一些用來(lái)存儲(chǔ)“變量”的RAM(隨機(jī)存取存儲(chǔ)器)。
此外,計(jì)算機(jī)還有一些輸入和輸出的設(shè)備,這樣它才能和用戶交換信息。在你的臺(tái)式計(jì)算機(jī)上,鍵盤(pán)和鼠標(biāo)是輸入設(shè)備,顯示器和打印機(jī)是輸出設(shè)備。硬盤(pán)則是一個(gè)輸入輸出設(shè)備——它既可以輸入又可以輸出。
你正在使用的臺(tái)式機(jī)是一種“通用計(jì)算機(jī)”,它可以運(yùn)行數(shù)以千計(jì)的各類程序。而微控制器則是用作特殊用途的“專用計(jì)算機(jī)”。它專注于做一件事。 微控制器還有許多共同的特點(diǎn)。如果一個(gè)計(jì)算機(jī)具備了以下大部分的特征,那么你就可以稱之為“微控制器”:
微控制器都“嵌入”在其他裝置(通常是一個(gè)消費(fèi)類產(chǎn)品)內(nèi)部來(lái)控制該產(chǎn)品的功能和操作。 因此,微控制器又被稱為“嵌入式控制器”。
微控制器運(yùn)行一個(gè)特定的程序來(lái)完成一項(xiàng)專門(mén)的工作。該程序存儲(chǔ)在ROM(只讀存儲(chǔ)器)中,一般不會(huì)被修改。
微控制器通常是低能耗的裝置。 臺(tái)式計(jì)算機(jī)的電源插頭幾乎始終插在墻壁插座中,其功率約為50瓦。電池供電的微控制器的功率大概為0.05瓦。
微控制器有一個(gè)專用輸入設(shè)備,通常(但并不總是)還有一個(gè)用作輸出的發(fā)光二極管或液晶顯示屏。微控制器也從它所控制的裝置獲取輸入信號(hào),并通過(guò)向設(shè)備中的不同部分發(fā)送信號(hào)來(lái)控制該設(shè)備。
例如,電視機(jī)中的微控制器從遙控器得到輸入信號(hào),然后在屏幕上顯示出來(lái)。微控制器會(huì)控制頻道選擇器、揚(yáng)聲器和一些如色彩、亮度等顯像管的電子調(diào)節(jié)。汽車(chē)中的發(fā)動(dòng)機(jī)控制器從氧氣和爆震等傳感器中得到輸入信號(hào),對(duì)燃料混合以及火花塞定時(shí)等進(jìn)行控制。微波爐控制器從操作鍵盤(pán)獲得輸入信號(hào),在液晶顯示屏上顯示輸出,并控制負(fù)責(zé)微波發(fā)生器開(kāi)關(guān)的繼電器。
微控制器通常具有小巧、低成本的特點(diǎn)。 對(duì)各個(gè)元件的選擇都秉持使體積最小化、使成本最低化的原則。
微控制器的結(jié)構(gòu)框圖
微控制器通常都很耐用,但也并不總是這樣。
例如,控制轎車(chē)發(fā)動(dòng)機(jī)的微控制器必須能夠在一般計(jì)算機(jī)無(wú)法承受的溫度極限下工作。美國(guó)阿拉斯加的汽車(chē)的微控制器就需要工作在零下34攝氏度的寒冷天氣里,而同樣的控制器在美國(guó)內(nèi)華達(dá)州則需要工作在零上49攝氏度的炎熱環(huán)境中。再加上發(fā)動(dòng)機(jī)運(yùn)行發(fā)出的熱量,發(fā)動(dòng)機(jī)箱的溫度可高達(dá)零上65-80攝氏度。
而錄像機(jī)內(nèi)部使用的嵌入式微控制器則沒(méi)有這么苛刻的要求。
實(shí)際上,用作微控制器的處理器多種多樣。 例如,數(shù)字手機(jī)工作原理一文中的移動(dòng)電話就包含一個(gè)Z-80處理器。Z-80處理器是一個(gè)8位微處理器,它誕生于二十世紀(jì)七十年代,最初用于當(dāng)時(shí)的家用計(jì)算機(jī)中。GPS接收機(jī)工作原理中的Garmin全球定位系統(tǒng),包含一個(gè)低功耗版的Intel 80386處理器,據(jù)說(shuō)是這樣。Intel 80386處理器最初是專為臺(tái)式計(jì)算機(jī)設(shè)計(jì)的。
在許多產(chǎn)品中,例如微波爐,對(duì)于微控制器性能的要求很低,價(jià)格是主要的考慮因素。在這樣的情況下,制造商開(kāi)始設(shè)計(jì)專用的微控制器芯片——一種專為成本低、體積小且功耗低設(shè)計(jì)的嵌入式中央處理器。Motorola 6811和Intel 8051都是這種芯片的成功典范。另外還有Microchip公司生產(chǎn)的名為“PIC 微控制器”的系列控制器,也非常受歡迎。從今天的標(biāo)準(zhǔn)來(lái)看,這些中央處理器簡(jiǎn)易得令人難以置信;但是大批量購(gòu)買(mǎi)的價(jià)格非常低廉,而且往往只需一片就可以滿足產(chǎn)品設(shè)計(jì)者的需要。
一個(gè)典型的低端微控制器芯片中約有1000字節(jié)的只讀存儲(chǔ)器和20字節(jié)的隨機(jī)存取存儲(chǔ)器,有8個(gè)輸入輸出引腳。大批量生產(chǎn)這種芯片,單位成本不過(guò)幾美分。當(dāng)然,你也不能指望在這種芯片上運(yùn)行像Microsoft Word這樣的程序——因?yàn)?Microsoft Word需要約30兆字節(jié)的隨機(jī)存取存儲(chǔ)空間和每秒可執(zhí)行幾百萬(wàn)條指令的處理器。不過(guò)控制一臺(tái)微波爐可不需要Microsoft Word這么復(fù)雜的程序。你要使用微控制器完成的是一個(gè)具體的任務(wù),而且低成本、低功耗運(yùn)行才是最重要的。
二、微控制器的應(yīng)用
在電子門(mén)工作原理一文中,你了解到了7400系列TTL(晶體管邏輯電路)元件,在哪里購(gòu)買(mǎi)以及如何裝配它們。 你會(huì)發(fā)現(xiàn)要實(shí)現(xiàn)一個(gè)簡(jiǎn)單的裝置通常需要很多門(mén)電路。 例如,在數(shù)字時(shí)鐘部分,我們所設(shè)計(jì)的時(shí)鐘可能需要15到20片芯片。微控制器的主要優(yōu)勢(shì)之一就在于,軟件(你編寫(xiě)并在控制器上執(zhí)行的那個(gè)小程序)可以取代許多門(mén)電路。因此,本文中我們將用微控制器制作一臺(tái)數(shù)字時(shí)鐘。 這將是一臺(tái)非常昂貴的數(shù)字時(shí)鐘(近200美元!),但是在這一過(guò)程中,你將積累下今后幾年使用微控制器需要的各種知識(shí)。即使并不實(shí)際動(dòng)手制作這樣一個(gè)數(shù)字時(shí)鐘,閱讀相關(guān)內(nèi)容就能讓你獲益良多。
這里用到的一款微控制器是專為方便日常生活設(shè)計(jì)的。 它是Parallax公司開(kāi)發(fā)的名為“BASIC Stamp”的微控制器。 BASIC Stamp是一個(gè)兼容BASIC程序設(shè)計(jì)語(yǔ)言的PIC微控制器。使用BASIC程序設(shè)計(jì)語(yǔ)言使得微控制器的軟件編寫(xiě)變得十分容易。微控制器配套提供了一個(gè)9伏電池供電的母板,通過(guò)和計(jì)算機(jī)的一個(gè)端口相連對(duì)其進(jìn)行編程。沒(méi)有一個(gè)制造商會(huì)在實(shí)際的產(chǎn)品中使用BASIC Stamp——因?yàn)?Stamp價(jià)格高且速度慢(相對(duì)而言)。 但是,為進(jìn)行實(shí)驗(yàn)建?;蛞淮涡匝菔井a(chǎn)品使用Stamp非常普遍,因?yàn)樗脑O(shè)置和使用是令人難以置信的輕松。
該微控制器之所以被稱為“Stamps”是因?yàn)樗挥幸粡堗]票大小。
Parallax公司生產(chǎn)了兩種版本的BASIC Stamp:BS-1與BS-2。下面是兩種版本的對(duì)比:
本文中用到的是一個(gè)名為“BASIC Stamp修正版D”的微控制器(如下圖所示)
BASIC Stamp修正版D是一個(gè)BS-1芯片,安裝在一塊9伏電池供電的母板上。配套組件包括:電壓調(diào)節(jié)器、程序連接電纜、輸入輸出引腳插針以及一小塊建模區(qū)域。你也可以單獨(dú)購(gòu)買(mǎi)一塊BS-1芯片,在面包板上和其他元件相連。修正版D只不過(guò)更加方便一些。
從上表可以看出,你不可能用BASIC Stamp做出非常奇特的東西來(lái)。BS-1的75行(256字節(jié)的電可擦除只讀存儲(chǔ)器可以存放約75行BASIC語(yǔ)言程序)程序的限制有相當(dāng)?shù)木窒扌?。然而,你可以做些精巧的東西,Stamp非常小巧并用電池供電,這就意味著它幾乎可以適用于任何地方。