嵌入式-課后答案---11版本解析_第1頁(yè)
嵌入式-課后答案---11版本解析_第2頁(yè)
嵌入式-課后答案---11版本解析_第3頁(yè)
嵌入式-課后答案---11版本解析_第4頁(yè)
嵌入式-課后答案---11版本解析_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第 1 章 概述1嵌入式系統(tǒng)的基本含義是什么?為什么說(shuō)單片機(jī)是典型的嵌入式系統(tǒng)? 一種計(jì)算機(jī)硬件和軟件的組合,也許還有機(jī)械裝置,用于實(shí)現(xiàn)一個(gè)特定功能。在某些特定情況下,嵌入式系統(tǒng)是一個(gè)大系統(tǒng)或產(chǎn)品的一部分。MCU 的含義是:在一塊芯片上集成了中央處理單元(CPU )、存儲(chǔ)器( RAM/ROM 等)、定時(shí)器 / 計(jì)數(shù)器及多種輸入輸出( I/O )接口的比較完整的數(shù)字處理系統(tǒng)。大部分嵌入式系統(tǒng)以 MCU 為核心進(jìn)行設(shè)計(jì)。MCU 從體系結(jié)構(gòu)到指令系統(tǒng)都是按照嵌入式系統(tǒng)的應(yīng)用特點(diǎn)專(zhuān)門(mén)設(shè)計(jì)的,它能很好地滿(mǎn)足應(yīng)用系統(tǒng)的嵌 入、面向測(cè)控對(duì)象、現(xiàn)場(chǎng)可靠運(yùn)行等方面的要求。因此以 MCU 為核心的系統(tǒng)是應(yīng)用最廣的

2、嵌入式系統(tǒng)。2 簡(jiǎn)述嵌入式系統(tǒng)的特點(diǎn)以及應(yīng)用領(lǐng)域。 答:嵌入式系統(tǒng)屬于計(jì)算機(jī)系統(tǒng),但不單獨(dú)以通用計(jì)算機(jī)的面目出現(xiàn);嵌入式系統(tǒng)開(kāi)發(fā)需要專(zhuān)用工具和特殊方法 ;使用 MCU 設(shè)計(jì)嵌入式系統(tǒng), 數(shù)據(jù)與程序空間采用不同存儲(chǔ)介質(zhì);開(kāi)發(fā)嵌入式系統(tǒng)涉及軟件、 硬件及應(yīng)用領(lǐng)域的知識(shí) ;嵌入式系統(tǒng)的其他特點(diǎn) ,比如緊張的資源, 較高穩(wěn)定性要求,低功耗,低成本等。 一般用于工 業(yè)控制,智能家電,日常電子等領(lǐng)域。日常數(shù)碼產(chǎn)品:手機(jī), MP3 ,U 盤(pán),相機(jī)等。 日常工業(yè)類(lèi):冰箱,空調(diào),微波爐,汽車(chē)等。3 比較 MCU 與 CPU 的區(qū)別與聯(lián)系。答:CPU是一個(gè)單獨(dú)的PC處理器。而MCU,則有微處理器,存儲(chǔ)器(RAM/

3、ROM 等)、定時(shí)器/計(jì)數(shù)器 及多種輸入輸出( I/O )接口的比較完整的數(shù)字處理系統(tǒng)。所以可以這么說(shuō), MCU 是一個(gè)包含微處理器的 嵌入式系統(tǒng),而 CPU 緊緊是一個(gè)處理器而已。4嵌入式系統(tǒng)的常用術(shù)語(yǔ) 嵌入式的知識(shí)體系硬件最小系統(tǒng)(包括電源、晶振、復(fù)位、寫(xiě)入調(diào)試接口)通用 I/O (開(kāi)關(guān)量輸入 /輸出,涉及各種二值量檢測(cè)與控制)模數(shù)轉(zhuǎn)換 A/D (各種傳感器信號(hào)的采集與處理,如紅外、溫度、光敏、超聲波、方向等) 數(shù)模轉(zhuǎn)換 D/A (對(duì)模擬量設(shè)備利用數(shù)字進(jìn)行控制)通信(串行通信接口 SCI、串行外設(shè)接口 SPI、集成電路互聯(lián)總線(xiàn)I2C,CAN、USB、嵌入式以 太網(wǎng)、 ZigBee 技術(shù)等)

4、顯示( LED 、 LCD 等) 控制(控制各種設(shè)備,包括 PWM 等控制技術(shù)) 數(shù)據(jù)處理(圖形、圖像、語(yǔ)音、視頻等處理或識(shí)別) 各種具體應(yīng)用與硬件相關(guān)的術(shù)語(yǔ)? 封裝 (Package)? 印刷電路板 (PCB , Printed circuit board)? 動(dòng)態(tài)可讀寫(xiě)隨機(jī)存儲(chǔ)器 (DRAM , Dynamic Random Access Memory)? 靜態(tài)可讀寫(xiě)隨機(jī)存儲(chǔ)器 (SRAM , Static Random Access Memory)? 只讀存儲(chǔ)器 (ROM , Read Only Memory)? 閃速存儲(chǔ)器 (Flash Memory)? 模擬量開(kāi)關(guān)量 與通信相關(guān)的術(shù)語(yǔ)

5、 并行通信 串行通信 串行外設(shè)接口 SPI 集成電路互連總線(xiàn) I2C 通用串行總線(xiàn) USB 控制器局域網(wǎng) CAN 背景調(diào)試模式 BDM 邊界掃描測(cè)試協(xié)議 JTAG 與功能模塊及軟件相關(guān)的術(shù)語(yǔ) 通用輸入 / 輸出 GPIO A/D 與 D/A 脈沖寬度調(diào)制器 PWM 看門(mén)狗液晶顯示 LCD 發(fā)光二極管 LED 鍵盤(pán)? 實(shí)時(shí)操作系統(tǒng) RTOS5C 語(yǔ)言的那些特性使得它成為嵌入式系統(tǒng)中使用頻率最高的高級(jí)語(yǔ)言。答:相比底端匯編,更簡(jiǎn)單易學(xué);與高級(jí)語(yǔ)言如(C+ ,C# ,java 等)相比,執(zhí)行效率高,編譯后的編碼體積小,而且支持好的編譯器還支持嵌入?yún)R編代碼;對(duì)位的操縱能力很強(qiáng)。6.舉例說(shuō)明結(jié)構(gòu)體變量類(lèi)

6、型的定義,結(jié)構(gòu)體變量的聲明和使用方法 6. 結(jié)構(gòu)體定義結(jié)構(gòu)體類(lèi)型,類(lèi)型名稱(chēng)為 student :struct studentchar name8; / 成員變量 nameint age; / 成員變量 agechar sex2; / 成員變量 sex; 聲明和使用結(jié)構(gòu)體變量和指針:struct students1;struct student*Pstudent;s1.age=20;Pstudent=(struct student*)malloc(sizeof (struct student);Pstudent-age=18;1、什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的特點(diǎn)是什么? 嵌入式系統(tǒng)是以應(yīng)用為中

7、心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,功能、可靠性、 成本、體積、功耗嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng)。嵌入式系統(tǒng)的主要特點(diǎn)如下:高實(shí)時(shí)性 OS 、系統(tǒng)內(nèi)核小專(zhuān)用性強(qiáng)系統(tǒng)精簡(jiǎn)實(shí)時(shí)性和可靠性要求高嵌入式軟件開(kāi)發(fā)走向標(biāo)準(zhǔn)化嵌入式系統(tǒng)需要專(zhuān)門(mén)的開(kāi)發(fā)工具和環(huán)境2、嵌入式軟件的特點(diǎn)有哪些?規(guī)模相對(duì)較小,開(kāi)發(fā)難度大快速啟動(dòng),直接運(yùn)行實(shí)時(shí)性和可靠性要求高程序一體化兩個(gè)平臺(tái)3、嵌入式系統(tǒng)的主要應(yīng)用領(lǐng)域有哪些? 消費(fèi)電子、通信設(shè)備、家庭設(shè)備、汽車(chē)電子、工業(yè)控制、軍事國(guó)防、醫(yī)療電子等。4、按實(shí)時(shí)性來(lái)分,嵌入式系統(tǒng)可分為幾類(lèi)?它們的特點(diǎn)是什么? 可分為硬實(shí)時(shí)系統(tǒng)和軟實(shí)時(shí)系統(tǒng)。其中硬實(shí)時(shí)系統(tǒng)對(duì)響應(yīng)時(shí)間有嚴(yán)格要求,如果系統(tǒng)

8、響應(yīng)時(shí)間得不到滿(mǎn)足,就會(huì)引起系統(tǒng)崩潰或致命的錯(cuò)誤;軟實(shí)時(shí)系統(tǒng)對(duì)響應(yīng)時(shí)間有要求, 但系統(tǒng)響應(yīng)時(shí)間得不到滿(mǎn)足時(shí),不會(huì)導(dǎo)致系統(tǒng)崩潰或致命的錯(cuò)誤。0 deadline time1Hard SystemSoft System5、影響系統(tǒng)響應(yīng)時(shí)間的主要因素有哪些?影響系統(tǒng)響應(yīng)時(shí)間的主要因素有:任務(wù)調(diào)度算法任務(wù)執(zhí)行時(shí)間事件發(fā)生的頻率任務(wù)數(shù)量中斷響應(yīng)時(shí)間任務(wù)響應(yīng)時(shí)間資源共享任務(wù)間通信6、根據(jù)自己的理解描述嵌入式系統(tǒng)的發(fā)展趨勢(shì)? 行業(yè)性嵌入式軟硬件平臺(tái)標(biāo)準(zhǔn)化 互聯(lián)網(wǎng)的普及網(wǎng)絡(luò)化半導(dǎo)體技術(shù)的改善小型化3C技術(shù)的快速融合一一功能多樣化使用者的需求個(gè)性化信息服務(wù)應(yīng)用生活化泛在化28 、請(qǐng)簡(jiǎn)述計(jì)數(shù)信號(hào)量的工作原理。 計(jì)

9、數(shù)器信號(hào)量通常用于保護(hù)多實(shí)例訪(fǎng)問(wèn)的資源。計(jì)數(shù)信號(hào)量可以看成一個(gè)內(nèi)存單元, 這個(gè)內(nèi)存單元的內(nèi)容保存一個(gè)計(jì)數(shù)值。當(dāng)一個(gè)任務(wù)用 semTake 獲取一個(gè)計(jì)數(shù)信號(hào)量時(shí),會(huì) 有兩種結(jié)果:如果這個(gè)信號(hào)量的計(jì)數(shù)是非 0 的,那這個(gè)信號(hào)量的計(jì)數(shù)就會(huì)減1 ,調(diào)用 semTake 的任務(wù)也會(huì)繼續(xù)執(zhí)行;如果這個(gè)信號(hào)量的計(jì)數(shù)是 0 ,調(diào)用 semTake 的任務(wù)會(huì)被阻塞,等待信號(hào)量的可用。如果 用semTake獲取一個(gè)計(jì)數(shù)信號(hào)量時(shí)指定了超時(shí),并且達(dá)到了超時(shí)值,這個(gè)任務(wù)會(huì)從阻塞隊(duì) 列 移出并移入到就緒隊(duì)列,同時(shí)返回錯(cuò)誤狀態(tài)。有可能會(huì)有幾個(gè)任務(wù)同時(shí)等待在一個(gè)計(jì)數(shù)信 號(hào)量上。當(dāng)一個(gè)任務(wù)調(diào)用 semGive() 釋放一個(gè)計(jì)數(shù)

10、信號(hào)量時(shí),等待在這個(gè)計(jì)數(shù)信號(hào)量隊(duì)列中的任 務(wù)會(huì)解除阻塞狀態(tài)。如果沒(méi)有任務(wù)等待,該信號(hào)量計(jì)數(shù)會(huì)加 1 。29 、簡(jiǎn)述消息隊(duì)列的工作機(jī)制?工作模式?有何優(yōu)缺點(diǎn)? 消息隊(duì)列是任務(wù)之間傳遞信息的一種機(jī)制,允許多個(gè)任務(wù),中斷之間發(fā)送以指針?lè)绞?定義的變量或其他信息,指向的數(shù)據(jù)結(jié)構(gòu)的變量類(lèi)型也可以有所不同;可以看作多個(gè)郵箱 組成的數(shù)組,共用一個(gè)等待列表,可以用作計(jì)數(shù)型信號(hào)量。主要的工作模式有兩種: C/S 模型、雙工通信模型。 優(yōu)點(diǎn):可以攜帶少量信息,可以緩沖,防止峰值。 缺點(diǎn):效率不高。傳遞指針信息,沒(méi)有對(duì)消息進(jìn)行復(fù)制,不能對(duì)原消息進(jìn)行修改,效 率相對(duì)高( vxWorks 會(huì)復(fù)制消息)。30 、簡(jiǎn)述管道

11、的工作機(jī)制?與消息隊(duì)列相比,各有什么優(yōu)點(diǎn)? 管道是構(gòu)筑于消息隊(duì)列之上,由 pipeDrv 所控制的一個(gè)虛擬的 I/O 設(shè)備,具有標(biāo)準(zhǔn)的 I/O 接口。消息隊(duì)列的優(yōu)點(diǎn):具有超時(shí)功能、消息有優(yōu)先級(jí)、更快、可以被刪除。 管道的優(yōu)點(diǎn):使用標(biāo)準(zhǔn)的 I/O 接口,如 read(), write(),open(), close() ;可以通過(guò) io taskStdSet()重定向;在 Select ()重可以使用文件描述符。31 、簡(jiǎn)要描述 VxWorks 中信號(hào)的定義和用途。 信號(hào)是一種軟件通知,用以通知處理事件的任務(wù)。 VxWorks 支持軟件信號(hào)功能,信號(hào) 異步地改變?nèi)蝿?wù)的控制流,任何任務(wù)都可以向另外

12、一個(gè)任務(wù)發(fā)送信號(hào)。 信號(hào)多用于異常處理,很少用于任務(wù)間通信。32 、實(shí)時(shí)系統(tǒng)軟件開(kāi)發(fā)不同于其他軟件工程的主要特征有哪些? 實(shí)時(shí)系統(tǒng)的設(shè)計(jì)是受資源約束的。時(shí)間是實(shí)時(shí)系統(tǒng)的首要資源,除此以外,其他系統(tǒng) 資源如內(nèi)存大小等,在實(shí)現(xiàn)系統(tǒng)目標(biāo)時(shí)都有可能與時(shí)間進(jìn)行折衷。實(shí)時(shí)系統(tǒng)是緊湊而復(fù)雜的,通常需要軟件硬件協(xié)同設(shè)計(jì)。實(shí)時(shí)系統(tǒng)的運(yùn)行常常不需要用戶(hù)的參與。33 、選擇嵌入式系統(tǒng)處理器時(shí)主要考慮哪些因素? 主要考慮的因素有應(yīng)用類(lèi)型、 I/O 接口、主頻、功耗、所支持的存儲(chǔ)器類(lèi)型、總線(xiàn)、價(jià) 格、封裝、產(chǎn)品的生命力和廠(chǎng)家的實(shí)力、技術(shù)支持和第三方軟件的支持。34 、選擇嵌入式操作系統(tǒng)時(shí)主要考慮哪些因素? 是自建還是購(gòu)

13、買(mǎi),或是使用開(kāi)源軟件; 應(yīng)用對(duì)嵌入式操作系統(tǒng)的功能、性能的要求; 與硬件平臺(tái)和開(kāi)發(fā)工具的關(guān)系; 產(chǎn)品所屬的應(yīng)用領(lǐng)域是否有行業(yè)的標(biāo)準(zhǔn)或限制; 技術(shù)支持;版稅或服務(wù)費(fèi)的問(wèn)題。第 2 章 ARM Cortex-M0+ 處理器ARM 公司在經(jīng)典處理器 ARM11 以后的產(chǎn)品統(tǒng)一改用 Cortex 命名,并分成 A50 、A 、R 和 M 四類(lèi),旨 在為各種不同的市場(chǎng)提供服務(wù)。1ARM Cortex-A50系列處理器面向高效的低功耗服務(wù)器市場(chǎng)領(lǐng)域。2ARM Cortex-A系列處理器面向尖端的基于虛擬內(nèi)存的操作系統(tǒng)和用戶(hù)應(yīng)用。3ARM Cortex-R系列處理器針對(duì)實(shí)時(shí)系統(tǒng),為有嚴(yán)格的實(shí)時(shí)響應(yīng)限制的嵌入

14、式系統(tǒng)提供高性能計(jì)算解決方案。4ARM Cortex-M系列處理器該系列處理器是一系列可向上兼容的高能效、易于使用的處理器,旨在幫助開(kāi)發(fā)人員滿(mǎn)足將來(lái)的嵌入式應(yīng) 用的需要。2取數(shù)指令存儲(chǔ)器中內(nèi)容加載到寄存器中的指令。其中,LDR 、LDRH 、LDRB 指令分別表示加載來(lái)自存儲(chǔ)器單元的一個(gè)字、半字、單字節(jié)(不足部分以 0 填充)。 LDRSH 和 LDRSB 指令將存儲(chǔ)單元的半字、單字節(jié)有 符號(hào)數(shù)擴(kuò)充至 32 位,并加載到指定寄存器 Rt 中。3. 存數(shù)指令寄存器中內(nèi)容存儲(chǔ)至存儲(chǔ)器中。 STR 、STRH 、STRB 指令存儲(chǔ) Rt 寄存器的字、半字、單字節(jié)至存儲(chǔ) 器。存儲(chǔ)單元地址由 Rn 與

15、Rm 之和決定。 Rt 、 Rn 和 Rm 必須為 R0R7 之一。3.ARM Cortex-M0+處理器的寄存器4. 1 )立即數(shù)尋址,操作數(shù)直接通過(guò)指令給岀,數(shù)據(jù)包含在指令編碼中,隨著指令一起被編譯成機(jī)器碼存儲(chǔ)于程序空間中。用#作為立即數(shù)的前導(dǎo)標(biāo)識(shí)符。ARM Cortex-MO+ 立即數(shù)范圍是 0x00Oxff 。例如:SUB R1,R0,#1R1 R0-1MOV R0,#0xff將立即數(shù)0xff裝入R0寄存器2)寄存器尋址,操作數(shù)來(lái)自于寄存器。MOV R1,R2R1 R2SUB R0,R1-R2R0 R1-R23 )直接尋址,操作數(shù)來(lái)自存儲(chǔ)單元,指令中直接給岀存儲(chǔ)單元的地址。指令碼中顯示

16、數(shù)據(jù)的位數(shù),字(4字節(jié))、半字(2字節(jié))、單字節(jié)三種情況。LDR Rt,label從標(biāo)號(hào)label處連續(xù)取4字節(jié)至寄存器 Rt中LDRH Rt,label 從標(biāo)號(hào)label處連續(xù)取2字節(jié)至寄存器 Rt中LDRB Rt,label從標(biāo)號(hào)label處取單字節(jié)至寄存器 Rt中4)偏移及寄存器間接尋址,操作數(shù)來(lái)自存儲(chǔ)單元, 指令中通過(guò)寄存器及偏移量給岀存儲(chǔ)單元的地址。偏移量不超過(guò)4KB (指令編碼中偏移量為 12位)。偏移量為0的偏移尋址也稱(chēng)為寄存器間接尋址。LDR R3, PC, #100地址為(PC + 100 )的存儲(chǔ)器單元的內(nèi)容加載到寄存器R3中LDR R3, R4地址為R4的存儲(chǔ)單元的內(nèi)容加

17、載到寄存器R3中8.偽指令是沒(méi)有對(duì)應(yīng)機(jī)器碼的指令,只能為編譯器所識(shí)別并指導(dǎo)匯編如何進(jìn)行。主要用于變量和常量以及宏的定義、條件判斷、文件包含等。第3章 KL25簡(jiǎn)介與硬件最小系統(tǒng)(本章3.6節(jié)內(nèi)容不做考核要求)?3.1飛思卡爾Kinetis系列微控制器簡(jiǎn)介飛思卡爾在2010年飛思卡爾技術(shù)論壇(FTF2010 )美國(guó)站推出了 Kinetis系列微控制器。面向領(lǐng)域不同,Kinetis 系列基于A(yíng)RM Cortex-M內(nèi)核陸續(xù)推出了 Kinetis K 系列、L系列、M系列、W系列。飛思卡爾的 Kinetis K 系列產(chǎn)品組合有超過(guò) 200 種基于 ARM Cortex-M4結(jié)構(gòu)的低功耗,高性能、可兼

18、容的微控制器。目標(biāo)應(yīng)用領(lǐng)域是便攜式醫(yī)療設(shè)備、儀器儀表、工業(yè)控制及測(cè)量設(shè)備等。? Kinetis L 系列飛思卡爾的 Kinetis L 系列 MCU 不僅汲取了新型 ARM Cortex-M0+ 處理器的卓越能效和易用性、功耗 更低、價(jià)格更低、效率更高,而且體現(xiàn)了 Kinetis 產(chǎn)品優(yōu)質(zhì)的性能、多元化的外設(shè)、廣泛的支持和可擴(kuò)展 性。目標(biāo)應(yīng)用領(lǐng)域是 8/16 位為微控制器應(yīng)用領(lǐng)域的升級(jí)換代,適用于價(jià)格敏感、能效比相對(duì)較高領(lǐng)域,如手 持設(shè)備、智能終端等。? Kinetis M 系列 飛思卡爾的 Kinetis M 系列也是基于 32 位 ARM Cortex-M0+ 內(nèi)核的 MCU 。目標(biāo)應(yīng)用領(lǐng)

19、域是經(jīng)濟(jì)高效的單相或兩相電表設(shè)計(jì)中。? Kinetis W 系列飛思卡爾的 Kinetis W 系列 MCU 擴(kuò)展了 Kinetis K 系列基于 ARM Cortex -M4 的成功之處。 目標(biāo)應(yīng)用領(lǐng)域是智能電表、傳感器控制網(wǎng)絡(luò)、工業(yè)控制、數(shù)據(jù)采集等。MCU 的硬件最小系統(tǒng)是指可以使內(nèi)部程序運(yùn)行所必須的最低規(guī)模的外圍電路,也可以包括寫(xiě)入器接口電 路。2. 電路中需要大量的電源類(lèi)引腳用來(lái)提供足夠的電流容量同時(shí)保持芯片電流平衡, 所有的電源引腳必須外 接適當(dāng)?shù)臑V波電容抑制高頻噪音。去耦是指對(duì)電源采取進(jìn)一步的濾波措施,去除兩級(jí)間信號(hào)通過(guò)電源互相干擾的影響3. 一般情況下, MCU 的硬件最小系統(tǒng)由

20、電源、晶振及復(fù)位等電路組成。隨著 Flash 存儲(chǔ)器制造技術(shù)的發(fā) 展,硬件最小系統(tǒng)應(yīng)該把寫(xiě)入器的接口電路也包含在其中。KL25 芯片的硬件最小系統(tǒng)包括電源電路、復(fù)位電路、晶振電路及與寫(xiě)入器相連的 SWD 接口電路。1. MOV 指令與 LDR 指令都是往目標(biāo)寄存器中傳送數(shù)據(jù),但是它們有什么區(qū)別嗎?MOV 指令用于將數(shù)據(jù)從一個(gè)寄存器傳送到另一個(gè)寄存器中,或者將一個(gè)常數(shù)傳送到一個(gè)寄存器中,但 是不能訪(fǎng)問(wèn)內(nèi)存。 LDR 指令用于從內(nèi)存中讀取數(shù)據(jù)放入寄存器中。第5 章 構(gòu)件化開(kāi)發(fā)方法與底層驅(qū)動(dòng)構(gòu)建封裝規(guī)范1. 嵌入式硬件構(gòu)件是指將一個(gè)或多個(gè)硬件功能模塊、支撐電路及其功能描述封裝成一個(gè)可重用的 硬件實(shí)體

21、,并提供一系列規(guī)范的輸入 / 輸出接口。據(jù)接口之間的生產(chǎn)消費(fèi)關(guān)系, 接口可分為提供接口和需求接口兩類(lèi)。 根據(jù)所擁有接口類(lèi)型的不同, 硬件構(gòu)件分為核心構(gòu)件、中間構(gòu)件和終端構(gòu)件三種類(lèi)型。2. 構(gòu)件( Component )是可重用的實(shí)體,它包含了合乎規(guī)范的接口和功能實(shí)現(xiàn),能夠被獨(dú)立部署和被 第三方組裝 。軟件構(gòu)件( Software Component )是指,在軟件系統(tǒng)中具有相對(duì)獨(dú)立功能、可以明確辨識(shí)構(gòu)件 實(shí)體。嵌入式軟件構(gòu)件( Embedded Software Component )是實(shí)現(xiàn)一定嵌入式系統(tǒng)功能的一組封裝 的、規(guī)范的、可重用的、具有嵌入特性的軟件構(gòu)件單元,是組織嵌入式系統(tǒng)功能的基

22、本單位。嵌入式軟件分為高層軟件構(gòu)件和底層軟件構(gòu)件 (底層驅(qū)動(dòng)構(gòu)件) 。高層軟件構(gòu)件與硬件無(wú)關(guān), 而底 層驅(qū)動(dòng)構(gòu)件與硬件密不可分,是硬件驅(qū)動(dòng)程序的構(gòu)件化封裝。? 2. 5.2 基于硬件構(gòu)件的嵌入式系統(tǒng)硬件電路設(shè)計(jì)5.2.1 設(shè)計(jì)時(shí)需要考慮的基本問(wèn)題1 MCU 的選擇選擇 MCU 時(shí)要考慮 MCU 所能夠完成的功能、 MCU 的價(jià)格、功耗、供電電壓、 I/O 口電平、管 腳數(shù)目以及 MCU 的封裝等因素。2 電源( 1 )考慮系統(tǒng)對(duì)電源的需求,例如系統(tǒng)需要幾種電 估計(jì)各需要多少功率或最大電流( mA )。(2)考慮芯片與器件對(duì)電源波動(dòng)性的需求。一般允許電源波動(dòng)幅度在5% 以?xún)?nèi)。對(duì)于 A/D 轉(zhuǎn)換芯

23、片的參考電壓一般要求 1% 以?xún)?nèi)。(3)考慮工作電源是使用電源模塊還是使用電源電路。3 普通 I/O 口(1)上拉、下拉電阻:考慮用內(nèi)部或者外部上 / 下拉電阻。(2)開(kāi)關(guān)量輸入:一定要保證高低電壓分明。(3)開(kāi)關(guān)量輸出:基本原則是保證輸出高電平接近電源電壓,低電平接近地電平。4 A/D 電路與 D/A 電路( 1 ) A/D 電路:要清楚前端采樣基本原理,對(duì)電阻型、電流型和電壓型傳感器采用不同的采集 電路。如果采集的信號(hào)微弱,還要考慮如何進(jìn)行信號(hào)放大。( 2 ) D/A 電路:考慮 MCU 的引腳通過(guò)何種輸出電路控制實(shí)際對(duì)象。5 控制電路對(duì)外控制電路要注意設(shè)計(jì)的冗余與反測(cè),要有合適的信號(hào)隔離

24、措施等。在評(píng)估設(shè)計(jì)的布板時(shí),一 定要在構(gòu)件的輸入輸出端引出檢測(cè)孔,以方便排查錯(cuò)誤時(shí)測(cè)量。6 考慮低功耗 低功耗設(shè)計(jì)并不僅僅是為了省電,更多的好處在于降低了電源模塊及散熱系統(tǒng)的成本。要做到低 功耗一般需要注意以下幾點(diǎn):(1)并不是所有的總線(xiàn)信號(hào)都要上拉。( 2 )不用的 I/O 口不要懸空,如果懸空的話(huà),受外界的一點(diǎn)點(diǎn)干擾就可能成為反復(fù)振蕩的輸入 信號(hào),而 MOS 器件的功耗基本取決于門(mén)電路的翻轉(zhuǎn)次數(shù)。( 3 )對(duì)一些外圍小芯片的功耗也需要考慮。7 考慮低成本 (1)正確選擇電阻值與電容值。( 2 )指示燈的選擇。(3)不要什么都選最好的。4. 為了抑制共阻抗,可采取以下措施:(1)一點(diǎn)接地(

25、2 )就近多點(diǎn)接地( 3 )大面積接地( 4 )加粗接地線(xiàn)(5) D / A (數(shù)/模)電路的地線(xiàn)分開(kāi)5.3.3 硬件構(gòu)件及底層軟件構(gòu)件的重用與移植方法1 硬件構(gòu)件的重用與移植對(duì)于以單 MCU 為核心的嵌入式應(yīng)用系統(tǒng)而言, 當(dāng)用硬件構(gòu)件 “組裝” 硬件系統(tǒng)時(shí), 核心構(gòu)件(即 最小系統(tǒng))有且只有一個(gè),而中間構(gòu)件和終端構(gòu)件可有多個(gè),并且相同類(lèi)型的構(gòu)件可出現(xiàn)多次。下面以終端構(gòu)件 LCD 為例,介紹硬件構(gòu)件的移植方法。2 底層構(gòu)件的移植 當(dāng)一個(gè)已設(shè)計(jì)好的底層構(gòu)件移植到另外一個(gè)嵌入式系統(tǒng)中時(shí),其頭文件和程序文件是否需要改動(dòng) 要視具體情況而定。例如:系統(tǒng)的核心構(gòu)件發(fā)生改變(即 MCU 型號(hào)改變)時(shí),底層內(nèi)

26、部構(gòu)件頭文件和某 些對(duì)外接口函數(shù)也要隨之改變,例如模塊初始化函數(shù)。而對(duì)于外接硬件構(gòu)件,希望不改動(dòng)程序文件,而只 改動(dòng)頭文件,那么,頭文件就必須充分設(shè)計(jì)。以 LCD 構(gòu)件為例,與前圖相對(duì)應(yīng)的底層構(gòu)件頭文件 lcd.h 可 如下編寫(xiě)。第6章 串行通信模塊及第一個(gè)中斷程序結(jié)構(gòu)MCU 與 PC 進(jìn)行通信為什么要進(jìn)行電平轉(zhuǎn)換?如何進(jìn)行電平轉(zhuǎn)換? 答:在 MCU 中,若用 RS-232 總線(xiàn)進(jìn)行串行通信,則需外接電路實(shí)現(xiàn)電平轉(zhuǎn)換。在發(fā)送端,需要用驅(qū)動(dòng) 電路將 TTL 電平轉(zhuǎn)換成 RS-232 電平;在接收端,需要用接收電路將 RS-232 電平轉(zhuǎn)換為 TTL 電平。電平 轉(zhuǎn)換器不僅可以由晶體管分立元件構(gòu)成

27、, 也可以直接使用集成電路。 目前廣泛使用 MAX232 芯片較多, 該 芯片使用單一 +5V 電源供電實(shí)現(xiàn)電平轉(zhuǎn)換。1 M0+ 中斷結(jié)構(gòu)及中斷過(guò)程 由模塊中斷源、中斷控制器( NVIC )和 M0+ 內(nèi)核組成。其中斷過(guò)程分為二步: (1 )模塊中斷源向中斷控制器( NVIC )發(fā)出中斷請(qǐng)求信號(hào)。(2 )中斷控制器對(duì)發(fā)來(lái)的中斷信號(hào)進(jìn)行管理, 判斷該中斷是否允許中斷, 若允許,通過(guò)私有外設(shè)總線(xiàn)發(fā)送 給 M0+ 內(nèi)核,由內(nèi)核進(jìn)行中斷處理;如果同時(shí)有多個(gè)中斷信號(hào)到來(lái), NVIC 根據(jù)設(shè)定好的中斷信號(hào)的優(yōu)先 級(jí)進(jìn)行判斷,優(yōu)先級(jí)高的中斷首先響應(yīng),優(yōu)先級(jí)低的中斷掛起,壓入堆棧保存;如果優(yōu)先級(jí)完全相同的多

28、個(gè)中斷源同時(shí)請(qǐng)求,則先響應(yīng) IRQ 中斷號(hào)較小的,其他的被掛起。3中斷初始化設(shè)置步驟 根據(jù) KL25 的中斷機(jī)制,想讓一個(gè)非內(nèi)核中斷源能夠得到內(nèi)核響應(yīng),必須要進(jìn)行初始化設(shè)置。初始化的幾 個(gè)基本步驟如下:(1 )設(shè)置模塊中斷使能位使能模塊中斷,使模塊能夠發(fā)送中斷請(qǐng)求信號(hào)。例如在UART 中,將控制寄存器 C2 的 RIE 位置 1 。(2 )在中斷控制器中設(shè)置中斷使能寄存器,使該模塊對(duì)應(yīng)的使能位置1,允許該中斷請(qǐng)求。第 7 章 定時(shí)器模塊1實(shí)現(xiàn)計(jì)數(shù)與定時(shí)的基本方法有哪些?比較它們的優(yōu)缺點(diǎn)。答:實(shí)現(xiàn)計(jì)數(shù)與定時(shí)的基本方法有三種: 完全硬件方式、完全軟件方式和可編程計(jì)數(shù)器 / 定時(shí)器方法。 其中完全硬

29、件方式速度快,但通用性和靈活性差; 完全軟件方式的優(yōu)點(diǎn)是節(jié)省硬件。主要缺點(diǎn)是執(zhí)行延時(shí)程序期間, CPU 一直被占用,所以降低了 CPU 的 使用效率,也不容易提供多作業(yè)環(huán)境;可編程計(jì)數(shù)器 / 定時(shí)器方法的最突出的優(yōu)點(diǎn)是計(jì)數(shù)時(shí)不占用 CPU 的時(shí)間。3定時(shí)器模塊的核心是什么,為什么? 答:定時(shí)器模塊的核心是 計(jì)數(shù)器 。計(jì)數(shù)器裝載預(yù)置的初始計(jì)數(shù)值之后,啟動(dòng)會(huì)以預(yù)設(shè)的頻率進(jìn)行加一或者 減一的運(yùn)作,當(dāng)其值變化到 0(溢出到 0 或者減到 0 )時(shí),即完成了定時(shí)的功能,其定時(shí)的時(shí)長(zhǎng)取決于預(yù) 置的初始計(jì)數(shù)值和預(yù)設(shè)的頻率。4. TPM 模塊具有基本定時(shí)、輸入捕捉、輸出比較、脈寬調(diào)制( PWM )功能。 1寄

30、存器地址分析每個(gè) TPM 模塊的地址 (十六進(jìn)制 ) 為 4003_8000+x*1000( 其中 x 代表模塊號(hào) )。2控制寄存器1)狀態(tài)和控制寄存器SC 包含的溢出狀態(tài)標(biāo)志和控制位,用于配置中斷使能、模塊配置和預(yù)分頻因子。2 )通道( n )狀態(tài)和控制寄存器通道狀態(tài)控制寄存器 CnSC 包含通道中斷狀態(tài)標(biāo)志和控制位用來(lái)配置中斷使能、通道模式和引腳功能。 3捕捉和比較狀態(tài)寄存器對(duì)于每個(gè) LPTPM 通道中, 狀態(tài)寄存器包含了狀態(tài)標(biāo)志 CHnF 位(在 CnSC 中)和 TOF 位(在 SC 中)的一 個(gè)拷貝,這是為了便于軟件編寫(xiě)。4其它寄存器1)計(jì)數(shù)器寄存器2)模數(shù)寄存器3 )通道( n )

31、值寄存器4)配置寄存器TPM( 定時(shí)器 / 脈寬調(diào)制模塊 ) 共有三個(gè)模塊 TPM0/TPM1/TPM2 ,TPM0 有 6 個(gè)通道, TPM1 和 TPM2 只有 2 個(gè)通道。 TPM 支持輸入捕捉、輸出比較 ,并且能夠產(chǎn)生 PWM 信號(hào)來(lái)控制電機(jī)。TPM 的基本定時(shí)器部分是一個(gè)遞增的計(jì)數(shù)器,通過(guò)設(shè)定模塊的溢出值,當(dāng)計(jì)數(shù)器遞增到該數(shù)值時(shí),產(chǎn)生TPM 中斷,可以通過(guò)選擇時(shí)鐘源和溢出值設(shè)定該計(jì)數(shù)器的頻率。周期中斷定時(shí)器模塊(Periodic Interrupt Timer , PIT)是一組可以用于產(chǎn)生中斷和觸發(fā) DMA通道的定 時(shí)器。該模塊的中斷都是可屏蔽的, 每個(gè)定時(shí)器都有獨(dú)立的溢出周期,

32、周期中斷定時(shí)器模塊沒(méi)有外部引腳。 定時(shí)器 + 調(diào)試模式 +中斷低功耗定時(shí)器 LPTMR (Low power timer )可以被配置成具有可選預(yù)分頻因子的定時(shí)計(jì)數(shù)器, 也可以被配 置成帶有脈沖干擾濾波器的脈沖計(jì)數(shù)器。絕大多數(shù)的系統(tǒng)復(fù)位都不會(huì)影響其繼續(xù)使用,可以用作天數(shù)計(jì)數(shù) 器。LPTMR 模塊共有五種操作模式,即運(yùn)行模式、等待模式、停止模式、低漏電模式和調(diào)試模式。一種計(jì)算機(jī) 硬件和軟件的組合,也許還有機(jī)械裝置,用于實(shí)現(xiàn)一個(gè)特定功能。其核心是微控制器單元(MCU )實(shí)時(shí)時(shí)鐘RTC( Real Time Clock )模塊是一個(gè)獨(dú)立供電的模塊,在芯片掉電時(shí)由備用電源(VBAT)供電,確保 RTC 計(jì)時(shí)器正常運(yùn)行,保持 RTC 寄存器狀態(tài)。 RTC 模塊主

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論