版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、嵌入式系統(tǒng)的概述 1定義“以應用為中心,以計算機技術為基礎,軟件、硬件可裁減,功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。 嵌入式系統(tǒng)采用“量體裁衣”的方式把所需的功能嵌入到各種應用系統(tǒng)中。2.應用領域(1)工業(yè)控制 【 工控設備,智能儀表,汽車電子 】(2)軍事國防 【 軍事電子 】(3)消費電子 【 信息家電 智能玩具 通信設備 移動存貯 】(4)網(wǎng)絡 【網(wǎng)絡設備 電子商務 】3組成嵌入式系統(tǒng)的基本組成軟件結構 【應用程序 操作系統(tǒng)】 注:MiniGUI不是操作系統(tǒng)硬件結構 【存儲器 處理器】【 硬件系統(tǒng)】 嵌入式系統(tǒng)的硬件是以嵌入式處理器為核心,配置必要的外圍接口部件。在嵌入
2、式系統(tǒng)設計中,應以最少的外圍部件構成一個應用系統(tǒng),滿足嵌入式系統(tǒng)的特殊要求。 一般包括有 :嵌入式處理器; 存儲器; I/O系統(tǒng)和外設。【軟件系統(tǒng)】 嵌入式系統(tǒng)的軟件包括 : 操作系統(tǒng)、應用軟件、驅動層軟件。 (1)操作系統(tǒng)功能簡介 操作系統(tǒng)層包含嵌入式內核、嵌入式TCP/IP網(wǎng)絡系統(tǒng)、嵌入式文件系統(tǒng)、嵌入式GUI系統(tǒng)和電源管理等部分。其中嵌入式內核是基礎和必備的部分,其他部分要根據(jù)嵌入式系統(tǒng)的需要來確定。4.嵌入式系統(tǒng)的特點!性能方面:采用32位RISC結構微處理器,主頻從30MHz到1200MHz以上,接近PC機的水平,但體積更小,能夠真正地“嵌入”到設備中。 !實時性方面:嵌入式控制器內
3、嵌實時操作系統(tǒng),能夠完全保證控制系統(tǒng)的實時性。!人機交互方面:嵌入式控制器可支持大屏幕的液晶顯示器,提供功能強大的圖形用戶界面,這些方面的性能也接近于PC,優(yōu)于單片機。!系統(tǒng)升級方面:嵌入式控制器可為控制系統(tǒng)專門設計,其功能專一,成本較低,而且開放的用戶程序接口(API)保證了系統(tǒng)能夠快速升級和更新。嵌入式系統(tǒng)與單片機的區(qū)別 嵌入式系統(tǒng) ¹ 單片機系統(tǒng) 目前嵌入式系統(tǒng)的主流是以32位嵌入式微處理器為核心的硬件設計和基于實時操作系統(tǒng)的軟件設計。由于有了OS可以執(zhí)行多任務調度,支持網(wǎng)絡協(xié)議TCP/IP,所以嵌入式系統(tǒng)可以比普通單片機系統(tǒng)更適合完成復雜的任務。 嵌入式系統(tǒng)與PC之間的區(qū)別l
4、 嵌入式系統(tǒng)一般是專用系統(tǒng),而PC是通用計算平臺;l 嵌入式系統(tǒng)的資源比PC少得多;軟件故障帶來的后果比PC機大得多;l 嵌入式系統(tǒng)一般采用實時操作系統(tǒng);有成本、功耗的要求;得到多種微處理體系的支持并需要專用的開發(fā)工具。嵌入式系統(tǒng)的開發(fā)模式 【交叉開發(fā)重點掌握,結合書本】 交叉開發(fā)定義:嵌入式系統(tǒng)開發(fā)的代碼生成是在PC機上完成,但由于嵌入式目標平臺的不同,就要求在開發(fā)機上的編譯器能支持交叉編譯(ARM-LINUX-GCC) 、鏈接,然后將程序的代碼下載到目標機上指定位置,然后還要交叉調試。主要流程為:編寫-交叉編譯、鏈接-定位和下載-調試。嵌入式系統(tǒng)開發(fā)的流程嵌入式軟件的開發(fā)流程與通用軟件的開
5、發(fā)流程大同小異,但開發(fā)所使用的設計方法具有嵌入式開發(fā)的特點。整個開發(fā)流程可分為:§ 需求分析階段§ 設計階段§ 生成代碼階段§ 固化階段需求分析階段 嵌入式系統(tǒng)應用需求中最為突出的是注重應用的時效性,需求分析階段的主要任務是: (1)對問題的識別和分析 (2)制訂規(guī)格說明文檔 (3)需求評審設計階段 系統(tǒng)的設計階段包括系統(tǒng)設計、任務設計和任務的詳細設計。 (1)數(shù)據(jù)流分析 (2)劃分任務 (3)定義任務間的接口 生成代碼階段 生成代碼階段需要完成的工作包括代碼編程、交叉編譯和鏈接、交叉調試和測試等。 代碼編程 在嵌入式系統(tǒng)的開發(fā)過程中,一般采用的方法是先
6、在通用PC上編程,然后通過交叉編譯鏈接,將程序做成目標平臺上可以運行的二進制代碼格式。最后將程序下載到目標平臺上的特定位置,在目標板上啟動運行這段二進制代碼。 交叉編譯和鏈接 嵌入式軟件開發(fā)編碼完成后,要進行編譯和鏈接以生成可執(zhí)行代碼。 嵌入式集成開發(fā)環(huán)境都支持交叉編譯、鏈接,如WindRiver公司的Tornado以及GNU套件等。交叉編譯鏈接生成兩種類型的可執(zhí)行文件:調試用的可執(zhí)行文件和固化的可執(zhí)行文件。 固化階段 嵌入式系統(tǒng)的應用軟件是針對特定的實際專業(yè)領域的,基于相應的嵌入式硬件平臺,并能完成用戶預期任務的計算機軟件。 (1)軟件要求固態(tài)化存儲。(2)軟件代碼要求高質量、高可靠性。(3
7、)系統(tǒng)軟件的高實時性是基本要求。4)多任務實時操作系統(tǒng)成為嵌入式應用軟件的必需。 嵌入式系統(tǒng)的調試§ 嵌入式系統(tǒng)的調試方法:1源程序模擬器方式2監(jiān)控器方式3仿真器方式RAM的定義 ARM即Advanced RISC Machines的縮寫。ARM公司1990年成立,是設計公司。ARM是知識產(chǎn)權(IP)供應商,本身不生產(chǎn)芯片,靠轉讓設計許可,由合作伙伴公司來生產(chǎn)各具特色的芯片。 ARM處理器的3大特點是:§ 耗電少、成本低、功能強;§ 16位/32位雙指令集;§ 全球眾多合作伙伴保證供應。 寄存器ARM內含37個寄存器,其中:§ 31個通用32位
8、寄存器§ 6個狀態(tài)寄存器 指令執(zhí)行階段計算機中的1條指令的執(zhí)行可以分若干個階段: 取指,從存儲器中取出指令(fetch); 譯碼,指令譯碼(dec): 取操作數(shù),假定操作數(shù)從寄存器組中取(reg); 執(zhí)行運算(ALU); 存儲器訪問,操作數(shù)與存儲器有關(mem); 結果寫回寄存器(res)。 ARM7體系結構采用了3級流水線,分為取指,譯碼和執(zhí)行。下圖是單周期3級流水線的操作示意圖。 ARM9 5級流水線分為:取指、指令譯碼、執(zhí)行、數(shù)據(jù)緩存和寫回。 TDMIT 16位壓縮指令集Thumb;D 在片調試(Debug)支持,允許處理器響應調 試請求暫停;M 增強型乘法器,與以前處理器 相
9、比性能更高,產(chǎn)生全64位結果;I 嵌入式ICE硬件提供片上斷點和調試點支持。數(shù)據(jù)類型 ARM處理器支持下列數(shù)據(jù)類型:ü Byte 字節(jié), 8位;ü Halfword 半字, 16位(半字必須與2字節(jié)邊界對準);ü Word 字,32 位(字必須與4字節(jié)邊界對準)。ARM體系結構支持7種處理器模式處理器模 式說 明用戶usr正常程序執(zhí)行模式FIQfiq支持高速數(shù)據(jù)傳送或通道處理IRQirq用于通用中斷處理管理svc操作系統(tǒng)保護模式中止abt實現(xiàn)虛擬存儲器和/或存儲器保護未定義und支持硬件協(xié)處理器的軟件仿真系統(tǒng)sys運行特權操作系統(tǒng)任務處理器的工作狀態(tài) ARM處理器
10、有兩種工作狀態(tài):§ ARM: 32位,這種狀態(tài)下執(zhí)行字對準的ARM指令;§ Thumb:16位,這種狀態(tài)下執(zhí)行半字對準的Thumb指令。ARM處理器在兩種工作狀態(tài)之間可以切換。ARM和Thumb之間狀態(tài)的切換不影響處理器的模式或寄存器的內容。(1)進入Thumb狀態(tài)。當操作數(shù)寄存器的狀態(tài)位(位0)為1時,執(zhí)行BX指令進入Thumb狀態(tài)。(2)進入ARM狀態(tài)。當操作數(shù)寄存器的狀態(tài)位(位0)為0時,執(zhí)行BX指令進入ARM狀態(tài)。 寄存器R13通常用作堆棧指針,稱作SP。 寄存器R14用作子程序鏈接寄存器,也稱為鏈接寄存器LR。 § 程序計數(shù)器R15:異常定義 :異常由內
11、部或外部源產(chǎn)生并引起處理器處理一個事件異常類型模 式正常地址高向量地址復位管理0x000000000xFFFF0000未定義指令 未定義0x000000040xFFFF0004軟件中斷(SWI)管理0x000000080xFFFF0008預取中止(取指令存儲器中止)中止0x0000000C0xFFFF000C數(shù)據(jù)中止(數(shù)據(jù)訪問存儲器中止)中止0x000000100xFFFF0010IRQ(中斷)IRQ0x000000180xFFFF0018FIQ(快速中斷)FIQ0x0000001C0xFFFF001C§ 當異常出現(xiàn)時,異常模式分組的R14和SPSR用于保存狀態(tài)。§ 當處理
12、異常返回時,把SPSR傳送到CPSR,R14傳送到PC。這可用兩種方法自動完成,即ü 使用帶“S”的數(shù)據(jù)處理指令,將PC作為目的寄存器;ü 使用帶恢復CPSR的多加載指令。優(yōu)先級復位(最高)-數(shù)據(jù)中止-FIQ-IRQ 預取中止 未定義指令·SWI基本尋址方式看書v ARM存儲器訪問指令 【看例題】轉移指令(1)B和BL§ B(Branch)指令引起處理器轉移到label。 句法: B cond label § BL(Branch and Link)指令將下一條指令的地址拷貝到R14(LR,鏈接寄存器),并引起轉移到label。 句法: BL c
13、ond label (2)BX :引起處理器轉移到Rm中的地址。若Rm的位0為1,則指令集變換到Thumb。 句法: BX cond Rm (3)BLX:帶鏈接轉移并可選地交換指令集。 句法: BLX cond Rm BLX label雜項ARM指令(1)SWI,引起軟件中斷。這意味著處理器模式變換為管理模式,CPSR保存到管理模式的SPSR中,執(zhí)行轉移到SWI向量。句法: SWI cond immed_24其中:immed_24為表達式,其值為0224-1范圍內的整數(shù)。(2)MRS,將CPSR或SPSR的內容傳送到通用寄存器。句法: MRS cond Rd,psr其中:Rd 目標寄存器。Rd
14、不允許為R15。 psr CPSR或SPSR。(3)MSR,用立即數(shù)或通用寄存器的內容加載CPSR或SPSR的指定區(qū)域。句法: MSR cond <psr>_<fields>,#immed_8r MSR cond <psr>_<fields>,Rm其中:<psr> CPSR或SPSR。 <fields> 指定傳送的區(qū)域。 immed_8r 值為數(shù)字常量的表達式。常量必須對應于8位位圖在32位字中循環(huán)移位偶數(shù)位后的值。 Rm 源寄存器。Thumb 指令集Thumb在32位體系結構上實現(xiàn)了16位指令集,以提供:§ 比
15、16位體系結構更高的性能;§ 比32位體系結構更高的代碼密度。Thumb 與ARM的區(qū)別§ 轉移指令;§ 數(shù)據(jù)傳送指令;§ 單寄存器加載和存儲指令;§ 多寄存器加載和存儲指令。 ARM匯編器支持的偽指令包括:符號定義偽指令、數(shù)據(jù)定義偽指令、匯編控制偽指令、宏指令以及其他偽指令。 ARM匯編器支持的偽指令分類指令舉例符號定義偽指令GBLA/GBLL/GBLS/LCLA/LCLL/LCLS/SETA/SETL/SETS/RLISTGBLA Test1;定義一個名為Test1的全局數(shù)值字變量數(shù)據(jù)定義偽指令DCB/DCW/DCD/ DCFD/DCFS/
16、DCQ/ SPACE/MAP/ FIELDstr DCB “This is a test”;分配起始地址為str的一段連續(xù)字節(jié)存儲單元存放字符串匯編控制偽指令IF/ELSE/ENDIF/ WHILE/WEND/IF TestTRUE ;如果條件成立 指令序列1 ;執(zhí)行指令序列1ELSE ;否則執(zhí)行指令序列2 指令序列2ENDIF宏指令MACRO/MEND/ MEXITMACRO Seg指令序列MEND;定義一個名為Seg的宏指令其他偽指令AREA/ALIGN/CODE16/CODE32/ENTRY/END/EQU/EXPORT/GLOBAL/IMPORT/EXTERN/GET/INCLUDE/
17、INCBINAREA Init,CODE,READONLY,ALIGN=3;定義了一個代碼段,段名為Init,屬性為只讀,并指定其后的指令為8(23)字節(jié)對齊。例子AREA Init,CODE,READONLYENTRYLDR R0, =0x3FF5000LDR R1, 0x0fSTR R1, R0LDR R0, =0x3F50008LDR R1, 0x1STR R1, R0BL PROC ;子程序調用PROC ;子程序開始MOV PC,LR ;從子程序返回END例:編寫一具有完整匯編格式的程序,實現(xiàn)冒泡法排序功能。設無符號字數(shù)據(jù)存放在從0x400004開始的區(qū)域,字數(shù)據(jù)的數(shù)目字存放在0x400000中。AREA SORT,CODE,READONLYENTRYSTARTMOV R1,#0x400000LPSUBS R1,R1,#1BEQ EXITMOV R7,R1LDR R0,=0x400004LP1LDR R2,R0,#4LDR R3,R0CMP R2,R3STRLO R3,R0, # -4STRLO R2,R0SUBS R7,R7,#1BNE LP1B LPEXITEND舉例:一個向串口不斷發(fā)送0x55的例子IMPORT MainAREA Init ,C
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 大學外貿英語chapter 1 The Global Economic Crisis
- 《機電一體化》課件 項目一 走進機電一體化
- 古詩詞誦讀《將進酒》課件 2024-2025學年統(tǒng)編版高中語文選擇性必修上冊
- 績效考核培訓課件檢驗科
- 《保險客戶服務》課件
- 陜西省西安市高新一中、交大附中2025屆高考數(shù)學考前最后一卷預測卷含解析
- 廣東省東莞市六校2025屆高考沖刺押題(最后一卷)語文試卷含解析
- 【培訓課件】財務報表審計簡介
- 現(xiàn)代學徒制課題:多元治理視角下的中國特色學徒制制度建設(附:研究思路模板、可修改技術路線圖)
- 2025屆福建省泉州市永春一中高考仿真模擬英語試卷含解析
- 數(shù)字媒體藝術課件
- 海洋科普趣味知識講座
- 2024年浙江浙能電力股份有限公司招聘筆試參考題庫含答案解析
- 鮮紅斑痣疾病演示課件
- 靜脈輸液操作課件
- 調酒師職業(yè)生涯規(guī)劃書
- 安全生產(chǎn)培訓(完整版)課件
- 數(shù)字文化館運營推廣策略
- 量子計算并行處理
- 國開2023秋《電子商務概論》實踐任務B2B電子商務網(wǎng)站調研報告參考答案
- AI技術在教育中的應用:學校教育與教育機構培訓
評論
0/150
提交評論