




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、ARM嵌入式學(xué)習(xí)筆記ARM嵌入式學(xué)習(xí)筆記11.嵌入式系統(tǒng)概述31.1.定義及特點(diǎn)31.2.嵌入式系統(tǒng)的發(fā)展31.3.未來(lái)嵌入式系統(tǒng)的發(fā)展方向31.4.典型的嵌入式系統(tǒng)的組成42.嵌入式軟硬件系統(tǒng)42.1.電路的基本知識(shí)42.2.數(shù)制轉(zhuǎn)換42.3.計(jì)算機(jī)組成原理42.4.嵌入式軟件52.5.計(jì)算機(jī)編程語(yǔ)言52.6.數(shù)據(jù)結(jié)構(gòu)52.7.操作系統(tǒng)52.7.1.操作系統(tǒng)的設(shè)計(jì)思路52.7.2.操作系統(tǒng)的分類(lèi)53.ARM處理器63.1.微處理器和微控制器63.2.ARM處理器介紹63.2.1.ARM滲透到了許多應(yīng)用領(lǐng)域63.2.2.ARM具有的優(yōu)點(diǎn)63.2.3.ARM指令集63.3.ARM的結(jié)構(gòu)73.3.
2、1.ARM體系結(jié)構(gòu)的命名73.3.2.處理器工作模式83.3.3.存儲(chǔ)系統(tǒng)83.3.4.尋址方式84.嵌入式Linux81.嵌入式系統(tǒng)概述1.1.定義及特點(diǎn)嵌入式系統(tǒng)是一種為特定設(shè)備服務(wù),軟硬件可裁剪的計(jì)算機(jī)系統(tǒng),其英文名稱(chēng)是Embedded System。特點(diǎn)是形式變化多樣、體積小,可以靈活地適應(yīng)各種設(shè)備的需求。嵌入式系統(tǒng)的一些例子:手機(jī)、汽車(chē)、ATM等等。1.2.嵌入式系統(tǒng)的發(fā)展電子計(jì)算機(jī)誕生以來(lái),計(jì)算機(jī)的發(fā)展有兩個(gè)方向:一個(gè)方向是體積大型化、處理能力超強(qiáng)的大型計(jì)算機(jī);另一個(gè)是向體積小型化,功能多樣化的方向發(fā)展。l 嵌入式微控制器即傳統(tǒng)意義上的單片機(jī),是目前嵌入式系統(tǒng)的前身。一般都是8位或
3、者16位。l 嵌入式微處理器單片機(jī)的發(fā)展時(shí)間較早,處理能力很低,只能應(yīng)用在一些相對(duì)簡(jiǎn)單的控制領(lǐng)域。嵌入式微處理器是近幾年隨著大規(guī)模集成電路發(fā)展同步發(fā)展起來(lái)的。與單片機(jī)相比,嵌入式微處理器的處理能力更強(qiáng),主流的嵌入式微處理器都是32位的。嵌入式微處理器在一個(gè)芯片上集成了復(fù)雜的功能,有的還把常見(jiàn)的外部設(shè)備控制器也集成到芯片內(nèi)部。圖1.嵌入式微處理器1.3.未來(lái)嵌入式系統(tǒng)的發(fā)展方向隨著微電子技術(shù)的發(fā)展和電子制造工藝的進(jìn)步,嵌入式系統(tǒng)硬件的體積會(huì)不斷縮小,系統(tǒng)穩(wěn)定性也在不斷增強(qiáng),可以把更多功能集成到一個(gè)芯片上;同時(shí)功耗方面也不斷降低。隨著網(wǎng)絡(luò)的普及和IPv6技術(shù)的應(yīng)用(注:IPv6技術(shù)主要解決了IPv
4、4的IP地址數(shù)目緊缺的現(xiàn)狀),越來(lái)越多的嵌入式設(shè)備也會(huì)加入到網(wǎng)絡(luò)中。1.4.典型的嵌入式系統(tǒng)的組成嵌入式系統(tǒng)包括硬件和軟件。硬件包括了嵌入式微處理器和嵌入式微控制器以及一些外圍元器件和外部設(shè)備;軟件包括了嵌入式操作系統(tǒng)和應(yīng)用軟件。嵌入式系統(tǒng)硬件種類(lèi)繁多,有許多硬件和軟件的解決方案,不同嵌入式系統(tǒng)軟硬件很難兼容,軟件必須修改而硬件必須重新設(shè)計(jì)才能使用。圖2.嵌入式系統(tǒng)2.嵌入式軟硬件系統(tǒng)2.1.電路的基本知識(shí)處理模擬信號(hào)的電路稱(chēng)為模擬電路。模擬信號(hào)的特點(diǎn)是信號(hào)變化是連續(xù)的。評(píng)估一個(gè)模擬電路常見(jiàn)的參數(shù)有放大率、信噪比和工作頻率等。模擬電路是數(shù)字電路的基礎(chǔ)。數(shù)字電路就是處理數(shù)字信號(hào)的電路。通常數(shù)字電
5、路具有邏輯運(yùn)算和邏輯處理的功能。數(shù)字電路可以分為脈沖電路和邏輯電路兩部分,脈沖電路負(fù)責(zé)對(duì)信號(hào)進(jìn)行變換和測(cè)量;邏輯電路負(fù)責(zé)處理數(shù)字邏輯。2.2.數(shù)制轉(zhuǎn)換2.3.計(jì)算機(jī)組成原理計(jì)算機(jī)系統(tǒng)硬件是由中央處理器、存儲(chǔ)系統(tǒng)、總線(xiàn)系統(tǒng)和輸入輸出系統(tǒng)幾個(gè)基本部分組成的。從存儲(chǔ)結(jié)構(gòu)來(lái)講可以把計(jì)算機(jī)體系分成馮諾依曼結(jié)構(gòu)和哈佛結(jié)構(gòu)??偩€(xiàn)一般分為數(shù)據(jù)總線(xiàn)、地址總線(xiàn)和控制總線(xiàn)??偩€(xiàn)系統(tǒng)是由總線(xiàn)和相應(yīng)的控制器構(gòu)成的,如嵌入式系統(tǒng)常見(jiàn)的I²C總線(xiàn)和SPI總線(xiàn),它們控制簡(jiǎn)單,成本低廉。還有PCI總線(xiàn),支持復(fù)雜的功能和很高的系統(tǒng)吞吐量。輸入輸出系統(tǒng)由外部設(shè)備和輸入輸出控制器組成。CPU通過(guò)總線(xiàn)與輸入輸出系統(tǒng)相連。由于
6、外部設(shè)備的速度差異,CPU使用不同的方式控制外部設(shè)備的訪(fǎng)問(wèn)。常見(jiàn)的有輪詢(xún)方式、中斷控制方式和DMA方式。2.4.嵌入式軟件軟件分為系統(tǒng)軟件和應(yīng)用軟件,最近興起了介于兩者之間的中間件軟件。系統(tǒng)軟件為使用計(jì)算機(jī)提供基本的功能,例如操作系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng),它們都不是針對(duì)于某種特殊需求,而是面向通用的領(lǐng)域。軟件的一個(gè)組成部分是文檔,文檔分為開(kāi)發(fā)文檔和用戶(hù)文檔,前者面向開(kāi)發(fā)人員,后者面向最終用戶(hù)。軟件開(kāi)發(fā)的流程大概分為四個(gè)部分:需求分析、設(shè)計(jì)、編碼調(diào)試、測(cè)試和維護(hù)。軟件開(kāi)發(fā)的模型一般有瀑布模型、迭代模型以及它們的混合。2.5.計(jì)算機(jī)編程語(yǔ)言2.6.數(shù)據(jù)結(jié)構(gòu)2.7.操作系統(tǒng)操作系統(tǒng)是一類(lèi)特殊的系統(tǒng)軟件,管理
7、整個(gè)系統(tǒng)的硬件資源和軟件,它屏蔽了底層硬件的差異,向應(yīng)用層提供了一個(gè)統(tǒng)一的接口。按照軟件結(jié)構(gòu)來(lái)劃分,操作系統(tǒng)可以分為內(nèi)核、驅(qū)動(dòng)程序和程序庫(kù)。內(nèi)核是操作系統(tǒng)的核心,也是整個(gè)系統(tǒng)軟件的核心。系統(tǒng)是和驅(qū)動(dòng)程序打交道而不會(huì)直接訪(fǎng)問(wèn)硬件,硬件的具體細(xì)節(jié)由驅(qū)動(dòng)程序完成。2.7.1.操作系統(tǒng)的設(shè)計(jì)思路l 微內(nèi)核把系統(tǒng)的服務(wù)功能和基本操作分開(kāi)。這樣的方法使內(nèi)核的設(shè)計(jì)更加簡(jiǎn)單,內(nèi)核可以根據(jù)需要啟動(dòng)或者關(guān)閉服務(wù),極大地提高了整個(gè)系統(tǒng)的工作效率。Linux和WinNT都采用這種思想。2.7.2.操作系統(tǒng)的分類(lèi)l 分時(shí)系統(tǒng)l 實(shí)時(shí)系統(tǒng)3.ARM處理器3.1.微處理器和微控制器微處理器可以根據(jù)應(yīng)用領(lǐng)域大致分為通用微處理
8、器、嵌入式微處理器和微控制器。通用微處理器主要用于高性能計(jì)算;嵌入式微處理器是針對(duì)于某一特定應(yīng)用的高能力計(jì)算。微控制器主要用于控制某種設(shè)備。微控制器除了針對(duì)專(zhuān)門(mén)的設(shè)備之外,還具備微處理器不具備的特點(diǎn)。如很好的環(huán)境適應(yīng)性,可以在特殊的高溫或者低溫環(huán)境工作。3.2.ARM處理器介紹ARM:Advanced RISC Machines的縮寫(xiě),中文譯名為高性能RISC機(jī)器。ARM是由ARM公司設(shè)計(jì)的一種體系結(jié)構(gòu),主要用于出售技術(shù)授權(quán),并不生產(chǎn)芯片。3.2.1.ARM滲透到了許多應(yīng)用領(lǐng)域l 工業(yè)控制l 無(wú)線(xiàn)通信l 網(wǎng)絡(luò)應(yīng)用l 消費(fèi)電子產(chǎn)品3.2.2.ARM具有的優(yōu)點(diǎn)l 芯片體積小,功耗低,制造成本低,性
9、能優(yōu)異l 支持Thumb(16位)和ARM(32位)兩種指令集,8位和16位設(shè)備兼容性好l 采用RISC,在內(nèi)部使用大量的寄存器,執(zhí)行指令速度快l 大部分指令都是操作寄存器,很少指令會(huì)訪(fǎng)問(wèn)外存l 采用多級(jí)流水線(xiàn),處理速度更快l 支持多種尋址方式,數(shù)據(jù)存取方式靈活l 指令長(zhǎng)度固定,便于編譯器操作以及執(zhí)行指令3.2.3.ARM指令集指令集可以分為CISC和RISC。ARM采用RISC指令集,指令長(zhǎng)度固定,支持ARM指令集和Thumb指令集。ARM指令集按照功能可以分為算數(shù)運(yùn)算指令、邏輯運(yùn)算指令、分支指令、軟件中斷指令和程序數(shù)據(jù)裝載指令等。3.2.3.1.指令格式<opcode> <
10、;cond> S <Rd>,<Rn> ,<operand2>其中,opcode:指令助記符;cond:執(zhí)行條件;S:是否影響CPSR寄存器的值 Rd:目標(biāo)寄存器;Rn:第一個(gè)操作數(shù)的寄存器;operand2:第二個(gè)操作數(shù)靈活使用第二個(gè)操作數(shù)能夠提高代碼的效率。它可以有如下的形式:u #immed_8r常數(shù)表達(dá)式8位的常數(shù)u Rm寄存器方式操作數(shù)為寄存器的數(shù)值u Rm,shift寄存器移位方式cond:條件碼,如果不指定,則該指令為無(wú)條件執(zhí)行(AL)l 算數(shù)運(yùn)算指令A(yù)DD指令A(yù)DC指令SUB指令SBC指令l 邏輯運(yùn)算指令A(yù)ND指令EOR指令MOV指令l
11、分支指令B指令:B條件 <地址>帶鏈接的分支指令BL:BL label適用于子程序調(diào)用,LRßPC-4,PCßlabel帶狀態(tài)切換的分支指令BX:根據(jù)跳轉(zhuǎn)地址的低位進(jìn)行來(lái)切換處理器狀態(tài)。l 協(xié)處理器指令l 雜項(xiàng)指令l 偽指令A(yù)DR指令:將地址加載進(jìn)寄存器,在實(shí)際編譯時(shí),采用一條ADD或者SUB指令代替ADRL指令:將地址加載進(jìn)寄存器,在實(shí)際編譯時(shí),采用兩條指令代替。LDR指令:加載32位的立即數(shù)或者一個(gè)地址值到指定寄存器。若加載的常數(shù)沒(méi)有超過(guò)MOV或者M(jìn)VN的范圍,則使用MOV或者M(jìn)VN指令代替該LDR偽指令,否則匯編則常量放入文字池,并使用一條程序相對(duì)偏移的L
12、DR指令從文字池讀取常量。NOP指令空操作,用于延時(shí)操作。l 數(shù)據(jù)傳送指令單一數(shù)據(jù)傳送指令多數(shù)據(jù)傳送指令寄存器交換指令3.2.4.Thumb指令集具有16位的代碼密度,是ARM指令壓縮的子集。3.2.4.1.Thumb指令集與ARM指令集的區(qū)別3.2.4.2.Thumb存儲(chǔ)器訪(fǎng)問(wèn)指令3.3.ARM的結(jié)構(gòu)3.3.1.ARM體系結(jié)構(gòu)的命名ARM體系結(jié)構(gòu)的命名可以分為兩部分,一部分是ARM體系版本的命名,另一部分是ARM體系版本的處理器命名。ARM體系到現(xiàn)在一共發(fā)布了9個(gè)系列的版本,每個(gè)版本都可以支持不同的指令集和特殊功能。ARMv(版本號(hào))x1(指令集)x2(指令集)指令集縮寫(xiě)含義TThumb指令
13、集M長(zhǎng)乘法指令集E增強(qiáng)DSP指令集J支持Java加速器SIMD多媒體功能擴(kuò)展指令集確定了一種ARM體系結(jié)構(gòu)后,可以形成一系列處理器,處理器的命名主要是功能上的一些細(xì)小差別,基本的核心是相同的ARMxyzm功能縮寫(xiě)含義T支持ThumbD支持偏上調(diào)試M支持快速乘法器I支持嵌入式ICE調(diào)試E支持增強(qiáng)DSP指令J支持Java程序加速F支持浮點(diǎn)運(yùn)算單元-S綜合版本,支持所有功能3.3.2.處理器工作模式ARM微處理器可以在工作中隨時(shí)切換狀態(tài),切換工作狀態(tài)不會(huì)影響工作模式和寄存器的內(nèi)容。ARM體系要求處理器在啟動(dòng)時(shí)應(yīng)該處于A(yíng)RM狀態(tài)。ARM處理器使用操作寄存器的0位表示工作狀態(tài),取值為0時(shí)表示ARM狀態(tài),
14、取值為1時(shí)表示Thumb狀態(tài)。使用BX指令可以切換狀態(tài)。ARM處理器支持7種工作模式。ARM處理器大多都是用來(lái)處理外部中斷和異常的,只是針對(duì)于異常和中斷的分類(lèi)比較詳細(xì)。3.3.3.存儲(chǔ)系統(tǒng)嵌入式微處理器大多采用一種線(xiàn)性的存儲(chǔ)管理模式,ARM也是如此。內(nèi)存中的存儲(chǔ)器和外部設(shè)備都被安排到一個(gè)統(tǒng)一的地址空間。線(xiàn)性地址空間便于處理器核管理用戶(hù)操作。在操作超過(guò)8位的數(shù)據(jù)時(shí),存在兩種不同的訪(fǎng)問(wèn)方法:大字端模式和小字端模式。l 大字端字節(jié)n字節(jié)n+1字節(jié)n+2字節(jié)n+33124231615870l 小字端字節(jié)n+3字節(jié)n+2字節(jié)n+1字節(jié)n31242316158703.3.4.尋址方式尋址方式是指根據(jù)指令中
15、給出的地址碼字段來(lái)實(shí)現(xiàn)尋找真實(shí)操作數(shù)地址的方式ARM包括7種常見(jiàn)的尋址方式u 立即尋址u 寄存器尋址u 寄存器移位尋址u 寄存器間接尋址u 基址尋址u 多寄存器尋址u 棧尋址:遞增堆棧(向上增長(zhǎng))與遞減堆棧(向下增長(zhǎng));滿(mǎn)堆棧(SP指向的是數(shù)據(jù))與空堆棧(SP指向的是空位置)。故有四類(lèi)棧尋址指令。還有兩種不常見(jiàn)的尋址方式:u 多寄存器尋址u 塊拷貝尋址4.嵌入式Linux5.開(kāi)發(fā)學(xué)習(xí)5.1.ARM9中斷實(shí)驗(yàn)5.1.1.原理S3C2410A具有眾多的中斷源,可以通過(guò)設(shè)置INTMOD寄存器將他們分為IRQ中斷和FIQ中斷,一般只設(shè)置一個(gè)中斷源為FIQ中斷。對(duì)于多個(gè)中斷源,可以通過(guò)PRIORITY寄存器設(shè)置中斷的優(yōu)先級(jí),使用默認(rèn)優(yōu)先級(jí)0即可。INTMSK可以使某個(gè)中斷源的中斷允許,有些中斷源還需要設(shè)置SUBMASK寄存器使能。EINT4EINT23所在的中斷控制器不是獨(dú)立的中斷源(EINT4EINT7共用一個(gè)中斷源,EINT8EINT23共用另外一個(gè)中斷源),還需要設(shè)置EINTMASK寄
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《裝修設(shè)計(jì)細(xì)節(jié)解讀》課件
- 外國(guó)業(yè)務(wù)開(kāi)發(fā)外包協(xié)議
- 2025年廣西南寧市中考物理一模試卷(含解析)
- 鐵路旅客運(yùn)輸服務(wù)鐵路旅客服務(wù)心理概述課件
- 《財(cái)務(wù)分析決策實(shí)例》課件
- 鐵道機(jī)車(chē)專(zhuān)業(yè)教學(xué)湖南鐵道左繼紅88課件
- 條碼技術(shù)物流工程38課件
- 鐵路貨物運(yùn)雜費(fèi)貨車(chē)延期使用費(fèi)費(fèi)率標(biāo)準(zhǔn)課件
- 鐵路運(yùn)輸法規(guī)旅客在站臺(tái)突發(fā)急性心肌梗死第頁(yè)課件
- 中國(guó)人的航天夢(mèng)課件
- 少兒美術(shù)課件紫藤花
- 公司分布式光伏發(fā)電項(xiàng)目工程監(jiān)理實(shí)施細(xì)則
- 《疫苗管理法》法律法規(guī)解讀課件
- 自動(dòng)跟隨行李箱系統(tǒng)設(shè)計(jì)
- 手動(dòng)電葫蘆操作規(guī)程
- 創(chuàng)新方法論知到章節(jié)答案智慧樹(shù)2023年西安理工大學(xué)
- 《上海市奉賢區(qū)小區(qū)機(jī)動(dòng)車(chē)停放管理工作調(diào)查報(bào)告》4300字
- 刑偵工作調(diào)研報(bào)告
- 火力發(fā)電廠(chǎng)鍋爐智能燃燒控制技術(shù)導(dǎo)則
- 國(guó)家開(kāi)放大學(xué)《社會(huì)心理學(xué)》形考任務(wù)1-4參考答案
- 國(guó)家開(kāi)放大學(xué)《現(xiàn)代漢語(yǔ)專(zhuān)題》章節(jié)自測(cè)參考答案
評(píng)論
0/150
提交評(píng)論