![《汽車計算機基礎(chǔ)》 課件 7- 閃燈的設(shè)計與實現(xiàn)_第1頁](http://file4.renrendoc.com/view12/M04/17/3F/wKhkGWXBlSWAY89iAAHUnsbd-WQ897.jpg)
![《汽車計算機基礎(chǔ)》 課件 7- 閃燈的設(shè)計與實現(xiàn)_第2頁](http://file4.renrendoc.com/view12/M04/17/3F/wKhkGWXBlSWAY89iAAHUnsbd-WQ8972.jpg)
![《汽車計算機基礎(chǔ)》 課件 7- 閃燈的設(shè)計與實現(xiàn)_第3頁](http://file4.renrendoc.com/view12/M04/17/3F/wKhkGWXBlSWAY89iAAHUnsbd-WQ8973.jpg)
![《汽車計算機基礎(chǔ)》 課件 7- 閃燈的設(shè)計與實現(xiàn)_第4頁](http://file4.renrendoc.com/view12/M04/17/3F/wKhkGWXBlSWAY89iAAHUnsbd-WQ8974.jpg)
![《汽車計算機基礎(chǔ)》 課件 7- 閃燈的設(shè)計與實現(xiàn)_第5頁](http://file4.renrendoc.com/view12/M04/17/3F/wKhkGWXBlSWAY89iAAHUnsbd-WQ8975.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第7單元:閃燈的設(shè)計與實現(xiàn)第8單元:開關(guān)狀態(tài)指示燈的設(shè)計與實現(xiàn)第9單元:利用定時中斷實現(xiàn)頻閃燈第10單元:利用PWM實現(xiàn)小燈亮度控制第11單元:利用UART實現(xiàn)上位機和下位機的通信第12單元:利用ADC設(shè)計簡易數(shù)字電壓表汽車嵌入式技術(shù)基礎(chǔ)篇
第7單元
閃燈的設(shè)計與實現(xiàn)
在汽車中,燈光除了用于照明,還被廣泛用于狀態(tài)指示(如交通信號燈、汽車指示燈、設(shè)備狀態(tài)指示燈等)。在嵌入式系統(tǒng)中,LED小燈是必備的狀態(tài)指示設(shè)備。【單元導(dǎo)讀】
單元學(xué)習(xí)目標:通過編程,使微控制器點亮一個LED小燈,在此基礎(chǔ)上再實現(xiàn)流水燈的效果。第7單元
閃燈的設(shè)計與實現(xiàn)
單元學(xué)習(xí)任務(wù):(1)熟悉嵌入式系統(tǒng)的組成以及嵌入式技術(shù)學(xué)習(xí)方法。(2)熟悉車規(guī)級微控制器KEA128的芯片資源和硬件最小系統(tǒng)。(3)理解通用輸入/輸出(GPIO)的通用知識,掌握GPIO底層驅(qū)動構(gòu)件頭文件的使用方法。(4)掌握小燈硬件構(gòu)件和軟件構(gòu)件的使用方法。(5)掌握在嵌入式軟件最小系統(tǒng)的框架下實現(xiàn)LED小燈閃爍的應(yīng)用層程序設(shè)計方法,并在此基礎(chǔ)上,自行完成流水燈的應(yīng)用層程序設(shè)計。(6)掌握嵌入式軟件集成開發(fā)環(huán)境KeilMDK及目標程序下載軟件J-Flash的使用方法,以便為后續(xù)的學(xué)習(xí)奠定良好的基礎(chǔ)。任務(wù)7.1熟悉嵌入式系統(tǒng)的組成及嵌入式技術(shù)學(xué)習(xí)方法7.1.1嵌入式系統(tǒng)的組成
目前,ARM主要有以下3個系列的內(nèi)核,對應(yīng)不同的應(yīng)用領(lǐng)域:(1)Cortex-A內(nèi)核的應(yīng)用處理器(ApplicationProcessor,AP),主要面向智能手機、平板電腦、智能終端等多媒體領(lǐng)域;(2)Cortex-R內(nèi)核的實時處理器(Real-TimeProcessor,RTP),主要面向汽車電子等對實時性要求很高的領(lǐng)域;(3)Cortex-M內(nèi)核的微控制器(MicroControllerUnit,MCU,國內(nèi)也稱為單片機),主要面向汽車電子、工業(yè)控制、農(nóng)業(yè)控制、智能儀器儀表、智能家電、機電產(chǎn)品等測控領(lǐng)域。
在緒論中,曾介紹過嵌入式系統(tǒng)的概念。目前,以32位/64位ARM微處理器為核心的嵌入式系統(tǒng)應(yīng)用越來越廣泛。1、ARM微處理器的分類7.1.1嵌入式系統(tǒng)的組成2、MCU的基本結(jié)構(gòu)
MCU的基本含義:在一塊芯片上集成了CPU、ROM、RAM、定時/計數(shù)器、中斷系統(tǒng)、看門狗及通用輸入輸出(GPIO)、模/數(shù)(A/D)轉(zhuǎn)換、數(shù)/模(D/A)轉(zhuǎn)換、串行通信I/O等多種輸入輸出接口的比較完整的數(shù)字處理系統(tǒng)。CPU與其他部件交互是通過MCU內(nèi)部總線實現(xiàn)的。任務(wù)7.1熟悉嵌入式系統(tǒng)的組成及嵌入式技術(shù)學(xué)習(xí)方法7.1.1嵌入式系統(tǒng)的組成3、以MCU為核心的嵌入式系統(tǒng)的基本組成任務(wù)7.1熟悉嵌入式系統(tǒng)的組成及嵌入式技術(shù)學(xué)習(xí)方法7.1.2嵌入式系統(tǒng)的知識體系和學(xué)習(xí)建議任務(wù)7.1熟悉嵌入式系統(tǒng)的組成及嵌入式技術(shù)學(xué)習(xí)方法
嵌入式硬件構(gòu)件設(shè)計主要包括MCU硬件最小系統(tǒng)(硬件核心構(gòu)件)設(shè)計和應(yīng)用外設(shè)硬件構(gòu)件(小燈LIGHT、蜂鳴器BZ、開關(guān)SW、鍵盤KB、數(shù)碼管LED、液晶LCD等)設(shè)計。
嵌入式軟件構(gòu)件設(shè)計采用分層設(shè)計思想,自下而上依次是“底層驅(qū)動構(gòu)件”、“應(yīng)用外設(shè)軟件構(gòu)件”和“應(yīng)用層軟件構(gòu)件”共3層軟件設(shè)計。為了實現(xiàn)嵌入式系統(tǒng)設(shè)計的可移植和可復(fù)用,大幅度降低嵌入式技術(shù)學(xué)習(xí)難度和開發(fā)難度,嵌入式硬件和軟件均需采用“構(gòu)件化”設(shè)計。
其中底層驅(qū)動構(gòu)件和應(yīng)用外設(shè)軟件構(gòu)件都包括對應(yīng)的.h頭文件和.c源文件,而應(yīng)用層軟件構(gòu)件包括總頭文件includes.h、主程序源文件main.c和中斷服務(wù)程序源文件isr.c。
通用軟件構(gòu)件與CPU和MCU基本無關(guān),是服務(wù)于以上3層軟件設(shè)計的。
隨著技術(shù)的發(fā)展,MCU的硬件集成度越來越高,使得嵌入式硬件設(shè)計難度不斷降低,因此嵌入式軟件設(shè)計在整個嵌入式系統(tǒng)開發(fā)中所占的分量越來越大。7.1.2嵌入式系統(tǒng)的知識體系和學(xué)習(xí)建議任務(wù)7.1熟悉嵌入式系統(tǒng)的組成及嵌入式技術(shù)學(xué)習(xí)方法
嵌入式軟件設(shè)計主要采用C語言及少量的匯編語言。
嵌入式軟件設(shè)計與調(diào)試是在嵌入式硬件的基礎(chǔ)上協(xié)同進行的,其過程是在PC上利用嵌入式軟件開發(fā)環(huán)境(如KeilMDK、IAR等)進行程序的編輯、編譯和連接,生成工程對應(yīng)的目標代碼;最后將生成的目標代碼通過寫入器下載到嵌入式芯片中運行與調(diào)試。MCU寫入器任務(wù)7.2熟悉KEA128資源和硬件最小系統(tǒng)KinetisEA(簡稱KEA)系列MCU是恩智浦公司開發(fā)的基于ARMCortex-M0+(簡稱CM0+)內(nèi)核的車規(guī)級MCU。任務(wù)7.2熟悉KEA128資源和硬件最小系統(tǒng)
片內(nèi)Flash區(qū)(0x0000_0000~0x0001_FFFF),共128KB,一般被用來存放中斷向量、程序代碼、常數(shù)等,其中前192B為中斷向量表(中斷函數(shù)的入口地址)。
片內(nèi)RAM區(qū)(0x1FFF_F000~0x2000_2FFF),共16KB,一般被用來存儲全局變量、靜態(tài)變量、臨時變量(堆??臻g)等。1、KEA128的存儲映像
KEA128把CM0+內(nèi)核之外的模塊用類似存儲器編址的方式統(tǒng)一分配地址。在4GB的存儲映像空間內(nèi),分布著片內(nèi)Flash、RAM、系統(tǒng)配置寄存器及其他外設(shè)等,以便CPU通過直接地址進行訪問。任務(wù)7.2熟悉KEA128資源和硬件最小系統(tǒng)2、KEA128的引腳功能
從需求和供給的角度,把MCU的引腳分為硬件最小系統(tǒng)引腳和I/O端口資源類引腳兩大類。(1)硬件最小系統(tǒng)引腳:需要服務(wù)的引腳,包括電源、復(fù)位、晶振、程序?qū)懭虢涌冢⊿WD)等引腳。任務(wù)7.2熟悉KEA128資源和硬件最小系統(tǒng)2、KEA128的引腳功能
從需求和供給的角度,把MCU的引腳分為硬件最小系統(tǒng)引腳和I/O端口資源類引腳兩大類。(2)I/O端口資源類引腳:對外提供服務(wù)。
I/O引腳一般具有多個復(fù)用功能,詳見附錄D的KEA128引腳功能分配表,在實際應(yīng)用時只能使用其中的一個功能。在嵌入式系統(tǒng)設(shè)計中,需要根據(jù)所使用的外設(shè)(含片內(nèi)外設(shè))對MCU的引腳資源進行統(tǒng)籌規(guī)劃,以免多個外設(shè)使用相同的引腳而相互沖突。任務(wù)7.2熟悉KEA128資源和硬件最小系統(tǒng)3、KEA128的硬件最小系統(tǒng)
MCU硬件最小系統(tǒng)是可以使MCU內(nèi)部程序正常運行的最小規(guī)模的電路,主要包括MCU和電源、晶振、復(fù)位、寫入調(diào)試器接口等外圍電路。見圖7-6。
需要說明的是,若使用MCU內(nèi)部的時鐘作為系統(tǒng)時鐘源,則外部晶振電路可省略?!菊n后作業(yè)】同步練習(xí)7-1:鞏固知識。任務(wù)7.3
掌握GPIO底層驅(qū)動構(gòu)件的使用方法7.3.1GPIO的通用知識1、GPIO概念
GPIO(GeneralPurposeInputOutput
),通用輸入/輸出,它是I/O的最基本形式。
MCU的大多數(shù)GPIO引腳可以通過編程來設(shè)定其工作方式為輸入或輸出,稱之為雙向GPIO。
某個引腳作為通用輸入引腳,MCU可以通過讀取其內(nèi)部寄存器的值“1”或“0”,以確定該引腳的輸入狀態(tài)是高電平還是低電平,即開關(guān)量輸入。
某個引腳作為通用輸出引腳,MCU可以通過向其內(nèi)部寄存器寫“1”或“0”,以控制該引腳輸出高電平或低電平,即開關(guān)量輸出。7.3.1GPIO的通用知識2、上拉電阻、下拉電阻與輸入引腳的基本接法任務(wù)7.3
掌握GPIO底層驅(qū)動構(gòu)件的使用方法
若MCU的某個引腳通過一個電阻接電源(VCC),則該電阻被稱為“上拉電阻”。
若MCU的某個引腳通過一個電阻接地(GND),則該電阻被稱為“下拉電阻”。7.3.1GPIO的通用知識3、輸出引腳的基本接法任務(wù)7.3
掌握GPIO底層驅(qū)動構(gòu)件的使用方法
作為通用輸出引腳,MCU內(nèi)部程序向該引腳輸出高電平或低電平驅(qū)動外部設(shè)備工作,即開關(guān)量輸出。輸出引腳O1和O2分別采用了直接驅(qū)動和放大驅(qū)動方式。任務(wù)7.3
掌握GPIO底層驅(qū)動構(gòu)件的使用方法7.3.2KEA128的GPIO底層驅(qū)動構(gòu)件及使用方法
為了實現(xiàn)程序的可移植和可復(fù)用,減小重復(fù)勞動,MCU底層驅(qū)動程序封裝成構(gòu)件。GPIO底層驅(qū)動構(gòu)件由gpio.h頭文件和gpio.c源文件組成,若要使用GPIO底層驅(qū)動構(gòu)件,只需將這兩個文件添加到所建工程的04_Driver(MCU底層驅(qū)動構(gòu)件)文件夾中,即可實現(xiàn)對GPIO引腳的操作。見工程文件:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx
其中,gpio.h頭文件主要包括相關(guān)頭文件的包含、一些必要的宏定義、對外接口函數(shù)的聲明,而gpio.c源文件則是對外接口函數(shù)的具體實現(xiàn),初學(xué)者不必深究。
用戶只要熟悉gpio.h頭文件的內(nèi)容,即可使用GPIO底層驅(qū)動構(gòu)件進行編程,實現(xiàn)通過GPIO對不同外設(shè)進行檢測或控制的功能(如檢測開關(guān)的狀態(tài)、控制小燈的亮滅等)。任務(wù)7.4小燈構(gòu)件化設(shè)計及閃燈的實現(xiàn)
為了實現(xiàn)嵌入式系統(tǒng)設(shè)計在不同MCU和不同應(yīng)用場合中的可移植和可復(fù)用,降低嵌入式技術(shù)學(xué)習(xí)難度和開發(fā)難度,嵌入式硬件和軟件均需采用“構(gòu)件化”設(shè)計?,F(xiàn)以小燈構(gòu)件設(shè)計為例,說明嵌入式硬件構(gòu)件和軟件構(gòu)件的設(shè)計方法。7.4.1小燈硬件構(gòu)件和軟件構(gòu)件的設(shè)計及使用方法1、小燈硬件構(gòu)件及使用方法a)小燈硬件構(gòu)件b)小燈硬件構(gòu)件與MCU的引腳連接
圖中虛線框內(nèi)的粗體標識為硬件構(gòu)件的接口注釋,以便于理解該接口的含義和功能;虛線框外的正體標識為硬件構(gòu)件的接口網(wǎng)標,具有電氣連接特性,表示硬件構(gòu)件的接口與MCU的引腳相連接。硬件構(gòu)件在不同應(yīng)用系統(tǒng)中移植和復(fù)用時,僅需修改接口網(wǎng)標。7.4.1小燈硬件構(gòu)件和軟件構(gòu)件的設(shè)計及使用方法2、小燈軟件構(gòu)件的設(shè)計及使用方法
任務(wù)7.4小燈構(gòu)件化設(shè)計及閃燈的實現(xiàn)
小燈軟件構(gòu)件由
light.h
頭文件
和
light.c
源文件組成,若要使用小燈軟件構(gòu)件,只需將這兩個文件添加到所建工程的05_App(應(yīng)用外設(shè)軟件構(gòu)件)文件夾中即可實現(xiàn)對小燈的控制。
其中,light.h
頭文件主要包括相關(guān)頭文件的包含、小燈硬件構(gòu)件相關(guān)的宏定義、小燈構(gòu)件對外接口函數(shù)的聲明。light.c
源文件是小燈構(gòu)件對外接口函數(shù)的具體實現(xiàn)。見工程文件:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx用戶只要熟悉light.h頭文件的內(nèi)容,即可使用小燈軟件構(gòu)件進行編程。7.4.2嵌入式軟件最小系統(tǒng)設(shè)計——實現(xiàn)閃燈1、嵌入式軟件最小系統(tǒng)任務(wù)7.4小燈構(gòu)件化設(shè)計及閃燈的實現(xiàn)
在嵌入式基礎(chǔ)實踐中,一般以“MCU控制小燈閃爍”作為入門實驗,對應(yīng)的程序框架稱為“嵌入式軟件最小系統(tǒng)”(具體解釋詳見表7-5)。
在此框架下可通過添加其他軟件構(gòu)件和修改應(yīng)用層程序(工程源程序)完成不同功能的軟件設(shè)計。
對初學(xué)者,學(xué)習(xí)重點是:①熟悉04_Driver(MCU底層驅(qū)動構(gòu)件)、05_App(應(yīng)用外設(shè)軟件構(gòu)件)和
06_Soft(通用軟件構(gòu)件)這幾個文件夾中的頭文件內(nèi)容,掌握對外接口函數(shù)的調(diào)用方法;②根據(jù)系統(tǒng)功能需求,進行應(yīng)用層程序設(shè)計和優(yōu)化,即設(shè)計07_Source(應(yīng)用層軟件構(gòu)件)文件夾中的文件。見工程文件:..EmbeddedSource\03-Software\KEA128\KEA128.uvprojx
其中,“04底層驅(qū)動構(gòu)件”、“05應(yīng)用外設(shè)軟件構(gòu)件”、“06通用軟件構(gòu)件”、“07應(yīng)用層軟件構(gòu)件”的文件都是由本構(gòu)件的.h和.c文件組成。
7.4.2嵌入式軟件最小系統(tǒng)設(shè)計——實現(xiàn)閃燈2、閃燈的應(yīng)用層程序設(shè)計任務(wù)7.4小燈構(gòu)件化設(shè)計及閃燈的實現(xiàn)
在嵌入式軟件最小系統(tǒng)框架下,設(shè)計07_Source(應(yīng)用層軟件構(gòu)件)的文件,以實現(xiàn)小燈閃爍的效果。1)工程總頭文件includes.h:包含04、05、06文件夾中的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 專利購買合同范本
- 中藥材種植技術(shù)服務(wù)合同
- 個人理財顧問合同「樣本」
- 二手教練車交易合同模板
- 三方資產(chǎn)轉(zhuǎn)讓合同標準范本
- 上海市租賃住房租賃合同
- 二手房裝修改造合同簡單范本
- 個人向公司借款合同范例
- 不可撤銷合同擔(dān)保協(xié)議范本大全
- 個人購房借款合同范本
- 【七上HK數(shù)學(xué)】安徽省蚌埠市固鎮(zhèn)縣2024-2025學(xué)年七年級上學(xué)期1月期末試卷數(shù)學(xué)試題
- 電信網(wǎng)和互聯(lián)網(wǎng)圖像篡改檢測技術(shù)要求與測試方法
- 2025屆江蘇省南京市鹽城市高三一模考試語文試題 課件
- 《水稻生長進程》課件
- 2024版企業(yè)高管職務(wù)任命書3篇
- 青少年鑄牢中華民族共同體意識路徑研究
- 江蘇省南京市2024年中考英語試題(含解析)
- 學(xué)校農(nóng)業(yè)教育體驗項目方案
- 水利工程施工監(jiān)理規(guī)范(SL288-2014)用表填表說明及示例
- 旅行社新人培訓(xùn)
- 獨家投放充電寶協(xié)議書范文范本
評論
0/150
提交評論