單片機(jī)的工作過程
單片機(jī)自動(dòng)完成賦予它的任務(wù)的過程,也就是單片機(jī)執(zhí)行程序的過程,即一條條執(zhí)行的指令的過程,所謂指令就是把要求單片機(jī)執(zhí)行的各種操作用的命令的形式寫下來,這是在設(shè)計(jì)人員賦予它的指令系統(tǒng)所決定的,一條指令對(duì)應(yīng)著一種基本操作;單片機(jī)所能執(zhí)行的全部指令,就是該單片機(jī)的指令系統(tǒng),不同種類的單片機(jī),其指令系統(tǒng)亦不同。為使單片機(jī)能自動(dòng)完成某一特定任務(wù),必須把要解決的問題編成一系列指令(這些指令必須是選定單片機(jī)能識(shí)別和執(zhí)行的指令),這一系列指令的集合就成為程序,程序需要預(yù)先存放在具有存儲(chǔ)功能的部件——存儲(chǔ)器中。存儲(chǔ)器由許多存儲(chǔ)單元(*小的存儲(chǔ)單位)組成,就像大樓房有許多房間組成一樣,指令就存放在這些單元里,單元里的指令取出并執(zhí)行就像大樓房的每個(gè)房間的被分配到了**一個(gè)房間號(hào)一樣,每一個(gè)存儲(chǔ)單元也必須被分配到**的地址號(hào),該地址號(hào)稱為存儲(chǔ)單元的地址,這樣只要知道了存儲(chǔ)單元的地址,就可以找到這個(gè)存儲(chǔ)單元,其中存儲(chǔ)的指令就可以被取出,然后再被執(zhí)行。
程序通常是順序執(zhí)行的,所以程序中的指令也是一條條順序存放的,單片機(jī)在執(zhí)行程序時(shí)要能把這些指令一條條取出并加以執(zhí)行,必須有一個(gè)部件能追蹤指令所在的地址,這一部件就是程序計(jì)數(shù)器pc(包含在cpu中),在開始執(zhí)行程序時(shí),給pc賦以程序中**條指令所在的地址,然后取得每一條要執(zhí)行的命令,pc在中的內(nèi)容就會(huì)自動(dòng)增加,增加量由本條指令長(zhǎng)度決定,可能是1、2或3,以指向下一條指令的起始地址,保證指令順序執(zhí)行。
單片機(jī)介紹
單片微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī),是典型的嵌入式微控制器(microcontrollerunit),常用英文字母的縮寫mcu表示單片機(jī),它*早是被用在工業(yè)控制領(lǐng)域。單片機(jī)由芯片內(nèi)僅有cpu的專用處理器發(fā)展而來。*早的設(shè)計(jì)理念是通過將大量外圍設(shè)備和cpu集成在一個(gè)芯片中,使計(jì)算機(jī)系統(tǒng)更小,更容易集成進(jìn)復(fù)雜的而對(duì)體積要求嚴(yán)格的控制設(shè)備當(dāng)中。intel的z80是*早按照這種思想設(shè)計(jì)出的處理器,從此以后,單片機(jī)和專用處理器的發(fā)展便分道揚(yáng)鑣。
早期的單片機(jī)都是8位或4位的。其中*成功的是intel的8031,因?yàn)楹?jiǎn)單可靠而性能不錯(cuò)獲得了很大的好評(píng)。此后在8031上發(fā)展出了mcs51系列單片機(jī)系統(tǒng)?;谶@一系統(tǒng)的單片機(jī)系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機(jī),但因?yàn)樾詢r(jià)比不理想并未得到很廣泛的應(yīng)用。90年代后隨著消費(fèi)電子產(chǎn)品大發(fā)展,單片機(jī)技術(shù)得到了巨大提高。隨著inteli960系列特別是后來的arm系列的廣泛應(yīng)用,32位單片機(jī)迅速取代16位單片機(jī)的**地位,并且進(jìn)入主流市場(chǎng)。而傳統(tǒng)的8位單片機(jī)的性能也得到了飛速提高,處理能力比起80年代提高了數(shù)百倍。目前,**的32位單片機(jī)主頻已經(jīng)超過300mhz,性能直追90年代中期的專用處理器,而普通的型號(hào)出廠價(jià)格跌落至1美元,***[1]的型號(hào)也只有10美元。當(dāng)代單片機(jī)系統(tǒng)已經(jīng)不再只在裸機(jī)環(huán)境下開發(fā)和使用,大量專用的嵌入式操作系統(tǒng)被廣泛應(yīng)用在全系列的單片機(jī)上。而在作為掌上電腦和手機(jī)核心處理的**單片機(jī)甚至可以直接使用專用的windows和linux操作系統(tǒng)。
單片機(jī)比專用處理器更適合應(yīng)用于嵌入式系統(tǒng),因此它得到了*多的應(yīng)用。事實(shí)上單片機(jī)是世界上數(shù)量*多的計(jì)算機(jī)。現(xiàn)代人類生活中所用的幾乎每件電子和機(jī)械產(chǎn)品中都會(huì)集成有單片機(jī)。手機(jī)、電話、計(jì)算器、家用電器、電子玩具、掌上電腦以及鼠標(biāo)等電腦配件中都配有1-2部單片機(jī)。而個(gè)人電腦中也會(huì)有為數(shù)不少的單片機(jī)在工作。汽車上一般配備40多部單片機(jī),復(fù)雜的工業(yè)控制系統(tǒng)上甚至可能有數(shù)百臺(tái)單片機(jī)在同時(shí)工作!單片機(jī)的數(shù)量不僅遠(yuǎn)超過pc機(jī)和其他計(jì)算的總和,甚至比人類的數(shù)量還要多。
單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。相當(dāng)于一個(gè)微型的計(jì)算機(jī),和計(jì)算機(jī)相比,單片機(jī)只缺少了i/o設(shè)備。概括的講:一塊芯片就成了一臺(tái)計(jì)算機(jī)。它的體積小、質(zhì)量輕、價(jià)格便宜、為學(xué)習(xí)、應(yīng)用和開發(fā)提供了便利條件。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的*佳選擇。
單片機(jī)內(nèi)部也用和電腦功能類似的模塊,比如cpu,內(nèi)存,并行總線,還有和硬盤作用相同的存儲(chǔ)器件,不同的是它的這些部件性能都相對(duì)我們的家用電腦弱很多,不過價(jià)錢也是低的,一般不超過10元即可......用它來做一些控制電器一類不是很復(fù)雜的工作足矣了。我們現(xiàn)在用的全自動(dòng)滾筒洗衣機(jī)、排煙罩、vcd等等的家電里面都可以看到它的身影!......它主要是作為控制部分的核心部件。
它是一種在線式實(shí)時(shí)控制計(jì)算機(jī),在線式就是現(xiàn)場(chǎng)控制,需要的是有較強(qiáng)的抗力,較低的成本,這也是和離線式計(jì)算機(jī)的(比如家用pc)的主要區(qū)別。
單片機(jī)芯片
單片機(jī)是靠程序運(yùn)行的,并且可以修改。通過不同的程序?qū)崿F(xiàn)不同的功能,尤其是特殊的的一些功能,這是別的器件需要費(fèi)很大力氣才能做到的,有些則是花大力氣也很難做到的。一個(gè)不是很復(fù)雜的功能要是用美國(guó)50年代開發(fā)的74系列,或者60年代的cd4000系列這些純硬件來搞定的話,電路一定是一塊大pcb板!但是如果要是用美國(guó)70年代成功投放市場(chǎng)的系列單片機(jī),結(jié)果就會(huì)有天壤之別!只因?yàn)閱纹瑱C(jī)的通過你編寫的程序可以實(shí)現(xiàn)高智能,高效率,以及高可靠性!
由于單片機(jī)對(duì)成本是敏感的,所以目前占統(tǒng)治地位的軟件還是*低級(jí)匯編語言,它是除了二進(jìn)制機(jī)器碼以上*低級(jí)的語言了,既然這么低級(jí)為什么還要用呢?很多**的語言已經(jīng)達(dá)到了可視化編程的水平為什么不用呢?原因很簡(jiǎn)單,就是單片機(jī)沒有家用計(jì)算機(jī)那樣的cpu,也沒有像硬盤那樣的海量存儲(chǔ)設(shè)備。一個(gè)可視化**語言編寫的小程序里面即使只有一個(gè)按鈕,也會(huì)達(dá)到幾十k的尺寸!對(duì)于家用pc的硬盤來講沒什么,可是對(duì)于單片機(jī)來講是不能接受的。單片機(jī)在硬件資源方面的利用率必須很高才行,所以匯編雖然原始卻還是在大量使用。一樣的道理,如果把巨型計(jì)算機(jī)上的操作系統(tǒng)和應(yīng)用軟件拿到家用pc上來運(yùn)行,家用pc的也是承受不了的。
可以說,二十世紀(jì)跨越了三個(gè)“電”的時(shí)代,即電氣時(shí)代、電子時(shí)代和現(xiàn)已進(jìn)入的電腦時(shí)代。不過,這種電腦,通常是指?jìng)€(gè)人計(jì)算機(jī),簡(jiǎn)稱pc機(jī)。它由主機(jī)、鍵盤、顯示器等組成。還有一類計(jì)算機(jī),大多數(shù)人卻不怎么熟悉。這種計(jì)算機(jī)就是把智能賦予各種機(jī)械的單片機(jī)(亦稱微控制器)。顧名思義,這種計(jì)算機(jī)的*小系統(tǒng)只用了一片集成電路,即可進(jìn)行簡(jiǎn)單運(yùn)算和控制。因?yàn)樗w積小,通常都藏在被控機(jī)械的“肚子”里。它在整個(gè)裝置中,起著有如人類頭腦的作用,它出了毛病,整個(gè)裝置就癱瘓了?,F(xiàn)在,這種單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時(shí)工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。各種產(chǎn)品一旦用上了單片機(jī),就能起到使產(chǎn)品升級(jí)換代的功效,常在產(chǎn)品名稱前冠以形容詞——“智能型”,如智能型洗衣機(jī)等?,F(xiàn)在有些工廠的技術(shù)人員或其它業(yè)余電子開發(fā)人搞出來的某些產(chǎn)品,不是電路太復(fù)雜,就是功能太簡(jiǎn)單且極易被仿制。究其原因,可能就卡在產(chǎn)品未使用單片機(jī)或其它可編程邏輯器件上。