無處不在的嵌入式技術(shù)已經(jīng)應(yīng)用到信息社會的方方面面,其中,嵌入式微控制器因其體積小、可靠性高、功能強(qiáng)、靈活方便等特點,在這個萬物互聯(lián)的時代扮演著越來越重要的角色。嵌入式技術(shù)的標(biāo)志就是用某種語言(如Ada、C/C++、Modula-2等)在嵌入式軟硬件開發(fā)環(huán)境中進(jìn)行開發(fā)。區(qū)別于傳統(tǒng)的通用計算架構(gòu),嵌入式運行的是固化的軟件,用術(shù)語表示就是固件(firmware),終端用戶很難或者不可能改變固件。
微控制器就是最能體現(xiàn)嵌入式系統(tǒng)將軟件和硬件緊密結(jié)合在一起的典型應(yīng)用,它充分發(fā)揮了軟件和硬件的各自優(yōu)勢,開發(fā)者不僅需要將軟件的程序執(zhí)行在特定的硬件和相關(guān)輔助電路上呈現(xiàn)出實際效果,還需要通過調(diào)節(jié)、變換軟件指令,實現(xiàn)對有限的硬件資源進(jìn)行最大化的利用,并采用相同的硬件結(jié)構(gòu)滿足不同用戶的特定需求??梢哉f,如果把嵌入式系統(tǒng)的任務(wù)比作一個人,那么軟件就是我們的意識和思維,硬件就是我們的軀體和四肢,軟件和硬件是組成整個嵌入式系統(tǒng)不可或缺的兩個部分。
我們在前面的芝識課堂中介紹了微控制器的硬件電路基礎(chǔ)及其歷史和五個要素,今天我們帶大家一起走進(jìn)微控制器的核心控制部分,即控制微控制器運作的軟件和實際進(jìn)行任務(wù)執(zhí)行的硬件。如前面分析可知,在一個典型的嵌入式微控制器為核心的系統(tǒng)中,軟件和硬件的作用是相輔相成密不可分的,要實現(xiàn)完整的產(chǎn)品系統(tǒng),需要將硬件(即設(shè)備本身)與運行其功能的軟件(程序)相結(jié)合,才能實現(xiàn)涉及的目標(biāo)。
我們可以通過具體的應(yīng)用案例來分析微控制器軟硬件的配合分工。在一個典型的電飯煲應(yīng)用中,嵌入式微控制器作為核心硬件,通過輸出不同的信號,指揮著整個系統(tǒng)硬件執(zhí)行不同的功能,在軟件方面,通過編寫程序,并將程序嵌入到微控制器中,對電飯煲進(jìn)行控制。比如通過輸出10000110代表顯示煮飯的時間,輸出00010001代表開始煮飯的過程,10001000代表煮飯時間結(jié)束關(guān)掉加熱,而用10101010顯示煮飯的實際米量等……針對不同功能的電飯煲,開發(fā)者可以通過更改程序,輕松地進(jìn)行功能的增減,而無需改動電飯煲的硬件設(shè)計,從而讓整個硬件方案變得更為普適。
那么微控制器的操作機(jī)制是怎么樣的呢?我們可以從下圖中看到,程序操作微控制器時,CPU讀取寫入存儲器中的程序,并根據(jù)指令工作,具體的流程如下:
1. CPU從指定的存儲器地址讀取指令;
2. 其指令在CPU中被解密;
3. 它按照指令工作。(在右側(cè)下面的示例中,執(zhí)行“數(shù)據(jù)輸出到輸出端口”)
這樣,如果完成一個任務(wù),就從存儲器中的下一個地址讀取下一條指令,然后,微控制器重復(fù)1到3的操作。
現(xiàn)在我們知道微控制器是通過預(yù)先編寫的程序來進(jìn)行信號輸出,從而指揮系統(tǒng)實現(xiàn)不同的功能。那么,控制硬件的程序又是如何編寫的呢?在下期的芝識課堂中,我們將給大家詳細(xì)介紹微控制器的編程語言,敬請期待哦!
來源:東芝半導(dǎo)體
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請聯(lián)系小編進(jìn)行處理
審核編輯 黃宇
-
微控制器
+關(guān)注
關(guān)注
48文章
7555瀏覽量
151430 -
嵌入式
+關(guān)注
關(guān)注
5082文章
19126瀏覽量
305298
發(fā)布評論請先 登錄
相關(guān)推薦
評論