嵌入式系統(tǒng)開發(fā)李宥謀答案_第1頁
嵌入式系統(tǒng)開發(fā)李宥謀答案_第2頁
嵌入式系統(tǒng)開發(fā)李宥謀答案_第3頁
嵌入式系統(tǒng)開發(fā)李宥謀答案_第4頁
嵌入式系統(tǒng)開發(fā)李宥謀答案_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、嵌入式系統(tǒng)開發(fā)習題11 .什么是嵌入式系統(tǒng)?有何特點?答:嵌入式系統(tǒng)的概念有很多種,在嵌入式系統(tǒng)領(lǐng)域中比較認同的嵌入式系統(tǒng)的概念是:嵌 入式系統(tǒng)是以應用為中心,以計算機技術(shù)為基礎(chǔ),并且軟硬件可裁剪,適用于應用系統(tǒng)對功能、 可靠性、成本、體積、功耗有嚴格要求的專用計算機系統(tǒng)。嵌入式系統(tǒng)的特點:嵌入式系統(tǒng)是將先進的計算機技術(shù)、半導體技術(shù)以及電子技術(shù)與各個行業(yè)的具體應用相結(jié) 合的產(chǎn)物,這一點就決定了它必然是一個技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識集成 系統(tǒng)。系統(tǒng)內(nèi)核小。由于嵌入式系統(tǒng)一般是應用于小型電子裝置中,系統(tǒng)資源相對有限,所以內(nèi) 核較之傳統(tǒng)的操作系統(tǒng)要小得多。專用性強。系統(tǒng)精簡。系統(tǒng)軟

2、件(OS)要求具有高實時性。嵌入式軟件開發(fā)要走向標準化,需要使用多任務(wù)的操作系統(tǒng)。嵌入式系統(tǒng)本身并不具備在其上進行進一步開發(fā)的能力。2 .嵌入式系統(tǒng)可以分為幾層?每一層各完成哪些功能?答:嵌入式系統(tǒng)由硬件層、中間層、軟件層和功能層組成。硬件層:以嵌入式微處理器為核心,存儲器用以存儲數(shù)據(jù)和執(zhí)行代碼,相關(guān)的設(shè)備接口和I/O接口,這些組成了一個嵌入式系統(tǒng)的基礎(chǔ),實現(xiàn)邏輯運算,算術(shù)運算等。中間層:將系統(tǒng)上層軟件和底層硬件進行分離,封裝成標準的接口,在上層軟件開發(fā)人員無需 知道底層硬件的具體情況,完成的任務(wù)是底層硬件的初始化、數(shù)據(jù)的輸入/輸出操作、硬件的配置等功能。軟件層:主要由RTOS、文件系統(tǒng)、圖形

3、用戶接口、網(wǎng)絡(luò)系統(tǒng)和通用的組件模塊組成,是軟件 開發(fā)的基礎(chǔ)。功能層:用來完成被控對象的控制功能。3 .嵌入式系統(tǒng)中硬件抽象層有什么特點?答:硬件抽象層是介于硬件層與軟件層之間的中間層,它將系統(tǒng)上層軟件與底層硬件分離開來,具有以下兩個特點:硬件相關(guān)性:因為嵌入式實時系統(tǒng)的硬件環(huán)境具有應用相關(guān)性,而作為上層軟件與硬件平 臺之間的接口,硬件抽象層需要為操作系統(tǒng)提供操作和控制具體硬件的方法。操作系統(tǒng)相關(guān)性:不同的操作系統(tǒng)具有各自的軟件層次結(jié)構(gòu),因此,不同的操作系統(tǒng)具有 特定的硬件接口形式。4 .簡述嵌入式處理器的硬件組成?答:隨著集成電路集成度的不斷提高,嵌入式系統(tǒng)板級的硬件電路模塊也越來越多的集成到

4、芯片內(nèi)部,目前處理器芯片內(nèi)部的電路模塊組成如下:處理器內(nèi)核,以 CPU為核心,有的還包含 MMU (存儲器管理單元)、Cache (高速緩存)、 ICE (在線仿真)等電路模塊。DSP/協(xié)處理器,對于多媒體處理的處理器,內(nèi)部一般有DSP (數(shù)字信號處理)、浮點運算、圖像加速等協(xié)處理器。ROM (只讀存儲器)和RAMRAM/ROM ,在單片機處理器中,處理器芯片內(nèi)部一般集成了(可讀可寫存儲器)。處理器內(nèi)部控制電路,如PLL (鎖相環(huán))、復位、DMA (直接存儲器存?。?、中斷控制器、低功耗控制、看門狗等電路。芯片內(nèi)部接口電路,如GPIO (通用輸入、輸出)接口、I2C (雙向兩線制的串行總線) 接

5、口、IIS (音頻總線)接口、 SPI (串行外設(shè)接口)、USB (通用串行總線)接口、 LCD (液晶顯示)接口、ADC/DAC (模數(shù)/數(shù)模轉(zhuǎn)換)、UART (通用異步收發(fā)器)、IrDA (紅外接口)、 CAN (控制 器局域網(wǎng)絡(luò))總線接口、以太網(wǎng)接口、 Timer/RTC (定時器/計數(shù)器)接口等電路模塊。5 .嵌入式處理器分那幾類?它們有何特點?答:嵌入式微處理器。特點:處理能力強,具有較高的性能,價格也相應較高。嵌入式微控制器。特點:主要用于嵌入式體統(tǒng)工業(yè)的主流,跟嵌入式微處理器相比,微控 制器的最大特點是單片化,體積大大減小,從而使功耗和成本下降,可靠性提高。并且價格低 廉,功能優(yōu)

6、良,擁有的品種和數(shù)量最多。嵌入式DSP處理器。特點:DSP處理器是專門用于信號處理方面的處理器,在系統(tǒng)結(jié)構(gòu)和 指令算法方面進行了特殊設(shè)計,具有很高的編譯效率和指令的執(zhí)行速度。SoC片上系統(tǒng)。特點:實現(xiàn)了軟硬件無縫結(jié)合,直接在處理器片內(nèi)嵌入操作系統(tǒng)的代碼 模塊具有極高的綜合性,在一個硅片內(nèi)部運用VHDL等硬件描述語言,實現(xiàn)一個復雜的系統(tǒng)絕大部分系統(tǒng)構(gòu)件在系統(tǒng)內(nèi)部,系統(tǒng)簡潔,減少了系統(tǒng)的體積和功耗,提高了系統(tǒng)的可 靠性跟設(shè)計生產(chǎn)效率。6 .分析目前市場上常用的幾種嵌入式處理器,說明不同嵌入式處理器的各自特點?答:目前市場上常用的嵌入式處理器有MCS51單片機,ARM 處理器,MIPS處理器,Pow

7、erPC處理器,MC68000處理器,X86處理器等。MCS51的特點是,8位CPU,片內(nèi)振蕩器,4KBROM ,128KBRAM,21個特殊功能寄存器,32 根I/O總線,片外可尋找范圍分別為64KB的外部程序和數(shù)據(jù),兩個 16位的定時/計數(shù)器,一個全雙工串口接口,中斷結(jié)構(gòu)分為兩級優(yōu)先級,5個中斷源,適于按位邏輯運算的處理器。ARM處理器的特點是,體積小,功耗低,成本低,高性能,支持16/32位雙指令集,在全球有眾多合作伙伴。MIPS處理器的特點是,高性能,高檔次的處理器,有 32位和64位的處理器,簡化硬件設(shè)計, 強調(diào)軟硬件協(xié)同提高性能。PowerPC處理器特點,具有優(yōu)異的性能,低能量消耗

8、,低散熱量。MC68000處理器,是一個16/32位的CISC處理器,采用32位總線和寄存器,這個結(jié)構(gòu)對之 后的32為產(chǎn)品保持兼容。X86處理器的特點,可變指令長度的CISC處理器,允許不對齊訪問存儲器。7 .舉例說明嵌入式處理器的性能指標?并分析對嵌入式系統(tǒng)的影響?答:性能指標主要有主頻,處理器字長,數(shù)據(jù)通路速度,運算速度,高速緩存和處理器的系統(tǒng)架構(gòu)。主頻,執(zhí)行每條指令的時鐘周期數(shù)一定,主頻越高單位時間內(nèi)執(zhí)行的指令越多。處理器字長,處理器內(nèi)部數(shù)據(jù)運算的基本位數(shù),反映的是計算精度,以及單次處理數(shù)據(jù)的總長度;數(shù)據(jù)通路速度,讀取指令數(shù)據(jù)傳輸計算數(shù)據(jù)的速度越高,處理器性能越好。運算速度,用MIPS

9、(每秒執(zhí)行多少百萬條指令)表示,MIPS越大,說明運算速度越快;高速緩存,突破主存訪問速度的瓶頸,提高處 理器的綜合性能。8 .簡述你對嵌入式操作系統(tǒng)的認識,分析嵌入式操作系統(tǒng)有哪些特點?答:嵌入式操作系統(tǒng) EOS是一種支持嵌入式系統(tǒng)應用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng)(包 括軟硬件系統(tǒng))極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動接口、通信協(xié)議、圖形界面、標準化瀏覽器等。EOS是相對于一般操作系統(tǒng)而言的,它除具備了一般操作系統(tǒng)最基本的功能,如任務(wù)調(diào)度、 同步機制、中斷處理、文件功能等之外,還有以下特點:可裝卸性,開放性、可伸縮性的體系結(jié)構(gòu)。強實時性,EOS實時性一般

10、較強,可用于各種控制系統(tǒng)中。統(tǒng)一的接口,提供各種設(shè)備驅(qū)動接口。操作方便、簡單,提供友好的圖形GUI ,追求易學易用。提供強大的網(wǎng)絡(luò)功能,支持TCP/IP協(xié)議及其他協(xié)議,提供 TCP/UDP/IP/PPP協(xié)議支持及統(tǒng)一的MAC訪問層接口,為各種移動計算設(shè)備預留接口。強穩(wěn)定性,弱交互性。固化代碼。更好地硬件適應性,也就是良好的移植性。9 .試分析實時操作系統(tǒng)中可搶占型和不可搶占型有何區(qū)別?并舉例說明。答:實時操作系統(tǒng)可分為可搶占型和不可搶占型兩類。對于基于優(yōu)先級的系統(tǒng)而言,可搶占 型的實時操作系統(tǒng)是指內(nèi)核可以搶占正在運行任務(wù)的CPU使用權(quán)并將使用權(quán)交給進入就緒態(tài)的優(yōu)先級更高的任務(wù),是內(nèi)核搶了CPU

11、讓別的任務(wù)運行。不可搶占型實時操作系統(tǒng)使用某種算法以決定讓某個任務(wù)運行后,就把 CPU的控制權(quán)完全交給該任務(wù),直到它主動將CPU控制權(quán)還回來。比如嵌入式操作系統(tǒng) uC/OS,可以根據(jù)優(yōu)先級進行搶占使用CPU,優(yōu)先級高的任務(wù)可以比優(yōu)先級低的任務(wù)優(yōu)先使用 CPU。10 .簡述嵌入式系統(tǒng)的開發(fā)過程?答:嵌入式系統(tǒng)的開發(fā)過程可以分為需求分析、建立開發(fā)環(huán)境、體系結(jié)構(gòu)設(shè)計、軟件/硬件設(shè)計、系統(tǒng)集成和系統(tǒng)優(yōu)化與測試6個階段。如果設(shè)計的流程是從需求分析開始,然后是建立開發(fā)環(huán)境,依次進行,最后是系統(tǒng)優(yōu)化與測試,那么就叫做自上而下的設(shè)計流程;反之就叫做自下而 上的設(shè)計流程。所有的嵌入式系統(tǒng)設(shè)計不可避免的設(shè)計這六個

12、階段,更重要的是找到一個好的設(shè)計方法,目前一種比較好的設(shè)計方法是采用計算機輔助設(shè)計工具。11簡述在線仿真器ICE和在線調(diào)試器ICD有何區(qū)別?答:在線仿真器ICE是一種模擬CPU的設(shè)備,能執(zhí)行 CPU的全部動作。采用該方式調(diào)試時, 利用仿真頭代替目標板上的CPU,可以完全仿真CPU的行為。在線調(diào)試器ICD是將CPU的調(diào)試功能的引腳引出來,讓外部的硬件直接連接到這些引腳上去 監(jiān)控整個CPU的動作。12.試分析嵌入式系統(tǒng)測試中的純軟件測試過程,舉例說明實現(xiàn)方法。答:純軟件測試過程是指用工具采用軟件打點技術(shù),在被測試代碼中加入一些函數(shù),這些函數(shù)用來完成數(shù)據(jù)的生成,并將數(shù)據(jù)送往目標機系統(tǒng)的共享內(nèi)存中,同

13、時,在目標機系統(tǒng)中運行一個與處理任務(wù),用于完成這些數(shù)據(jù)的預處理,然后將處理過的數(shù)據(jù)通過目標機的串口,網(wǎng)口或者USB口送往宿主機測試平臺。舉例,可以在程序中間插入函數(shù),讀出當前所有寄存器內(nèi)容,發(fā)送至目標 機系統(tǒng),測試者可以根據(jù)這些數(shù)據(jù)了解系統(tǒng)執(zhí)行情況。習題22 . 按照ARM處理器的命名規(guī)則,說明 ARM7TDMI 中T、D、M、I的含義。答:T:支持16位的Thumb指令集;D:支持JTAG片上調(diào)試;M:支持長乘法操作(64位結(jié)果) 的ARM指令,包含快速乘法器;I:帶有嵌入式追蹤宏單元 ETM (EmbeddedTraceMacro),用來 設(shè)置斷點和觀察點。3 .什么是哈佛結(jié)構(gòu)?與普林斯頓

14、結(jié)構(gòu)有何區(qū)別?答:哈佛結(jié)構(gòu)是一種將程序中指令和數(shù)據(jù)分開存儲的存儲器結(jié)構(gòu)。即哈佛結(jié)構(gòu)中程序存儲器和數(shù) 據(jù)存儲器是兩個獨立的存儲器,每個存儲器獨立編址、獨立訪問。普林斯頓結(jié)構(gòu)(馮諾伊曼結(jié)構(gòu))是一種將程序指令存儲器和數(shù)據(jù)存儲器合并在一起的存儲器結(jié)構(gòu)。 程序指令存儲地址和數(shù)據(jù)存儲地址指向同一個存儲器的不同物理位置。這便是。這便是兩種結(jié)構(gòu) 的區(qū)別。4 .什么是RSIC ?什么是CSIC ?簡述他們的特點與差別。答:RSIC是精簡指令集計算機,CISC是復雜指令集計算機。兩者的區(qū)別在于不同的CPU設(shè)計理念和方法。對于CISC:在CSIC結(jié)構(gòu)的指令系統(tǒng)中,各種指令的使用頻率相差懸殊。有 80%的指令只 在2

15、0%的運行時間內(nèi)才會用到。CISC結(jié)構(gòu)指令系統(tǒng)的復雜性帶來了計算機體系結(jié)構(gòu)的復雜性,這不僅增加了研制時間和成 本,而且還容易造成設(shè)計錯誤。在CISC結(jié)構(gòu)指令系統(tǒng)中,由于各條指令的功能不均衡性,不利于采用先進的計算機體系結(jié) 構(gòu)技術(shù)來提高系統(tǒng)的性能。對于RISC:簡化指令集,只保留常用的基本指令;設(shè)計大量的通用存儲器,減少訪存的次數(shù);采用裝載/保存結(jié)構(gòu),支持流水線技術(shù),使每個周期時間相等;采用簡單的指令格式、規(guī)整的指令字長和簡單的尋址方式;單機器周期指令,即大多數(shù)的指令都可以在一個機器周期內(nèi)完成,并且允許處理器在同一 時間內(nèi)執(zhí)行一系列的指令。5 . ARM7處理器是幾級流水線?在 ARM7處理器中

16、," PC旨向的是下一條要執(zhí)行的指令 ”,這 句話對嗎?為什么?答:ARM7處理器采用三級流水線。“PCI向的是下一條要執(zhí)行的指令”,這句話不對。在 ARM處理器中將PC程序計數(shù)器定義到R15寄存器,無論處理器處于何種狀態(tài),PC總是指向 芷在取值”指令的地址,一般來說,人們習慣性的約定將 芷在執(zhí)行的指令作為參考點 ”,成為當前第一條指令,那么 PC總是指向隨后的第三 條指令,或者說 PC總是指向當前正在執(zhí)行的指令地址再加上2條指令的地址,即指向正在執(zhí)行指令的下下一條指令,而不是指向下一條要執(zhí)行的指令。6 . 簡述ARM處理器中在線仿真器模塊 EmbeddedICE-RT的作用。答:A

17、RM處理器中的在線仿真器模塊EmbeddedICE-RT , 一般還帶有嵌入式宏跟蹤單元模塊ETM,實現(xiàn)ARM處理器的在線調(diào)試和運行過程的跟蹤功能;并且具有諸多ICE功能,例如實時尋址、斷點、單步、對 ARMCPU的完全控制、對 ASIC系統(tǒng)其余部分的訪問,以及對主機顯示器外 設(shè)訪問、鍵盤輸入和磁盤存儲。7 . ARM處理器的工作狀態(tài)分為哪二種?ARM處理器又是怎么定義和標志的?答:ARM處理器的工作狀態(tài)分為 ARM狀態(tài)和Thumb狀態(tài),這兩種狀態(tài)有程序狀態(tài)字CPSR中T標志位確定,為 0時處理器工作在 ARM狀態(tài),為1時處理器工作在 Thumb狀態(tài)。8 . ARM7TDMI支持哪幾種指令集,

18、各有什么特點?答:ARM7TDMI處理器內(nèi)核包含2套指令系統(tǒng),分別為 ARM指令集和Thumb指令集,兩種指令 集的特點是:ARM指令集:處理器執(zhí)行 32位字對齊方式的 ARM指令,每條ARM指令長度為32位,指令的功 能強大。Thumb指令集:處理器執(zhí)行 16位字對齊方式的 Thumb指令,每條Thumb指令長度為16位,是 ARM指令功能的子集。9 . ARM7處理器有哪些工作模式?如何實現(xiàn)不同模式之間的切換?舉例說明。答:ARM處理器供支持7種工作模式,分別為:用戶模式(usr);快速中斷模式(fiq);外部中斷模式(irq);管理模式(svc);數(shù)據(jù)訪問終止模式(abt);系統(tǒng)模式(s

19、ys);未定義指令中止 模式(und)。在7中模式中,除用戶模式外,其他的6種模式稱為特權(quán)模式,特權(quán)模式可以自由的切換處理器模式,而用戶模式不能直接切換到別的模式。特權(quán)模式下通過修改當前程序狀態(tài)寄 存器CPSR中控制位M4:0的值,來改變處理器的運行模式。例如MSRCPSR_c, # ( NoInt|SVC32Mode ) 從系統(tǒng)模式切換到管理模式MSRCPSR_c, # ( NoInt|SYS32Mode ) 從管理模式切換至U系統(tǒng)模式10 描述ARM7處理器的內(nèi)部寄存器結(jié)構(gòu),并分別說明快速中斷FIQ有何特點?答:ARM7微處理器共有37個32位寄存器,其中31個為通用寄存器,6個為狀態(tài)寄存

20、器。37個 寄存器定義如下:(1)31 個通用寄存器:R0R15、R8_fiq、R9_fiq、R10_fiq、R11_fiq、R12_fiq > R13_fiq、R14_fiq、R13_svc、R14_svc、R13_abt、R14_abt、R13_und、R14_und、R13_irq、R14_irq。6 個狀態(tài)寄存器: CPSR、SPSR_abt、SPSR_svo SPSR_irq、SPSR_fiq、SPSR_und??焖僦袛郌IQ,適用于對一個突發(fā)事件的快速響應,在 ARM狀態(tài)中,快中斷有 8個專用的寄存器,可以縮短狀態(tài)切換時需要的時間。當 CPSR中相應的F位清零,快速中斷被使能

21、。11 .什么是中斷延時?在實時系統(tǒng)中如何計算中斷延時時間?答:中斷延時是系統(tǒng)響應一個中斷所需要的時間,即從外部中斷請求信號發(fā)出到執(zhí)行對應的中斷服務(wù)程序ISR的第1條指令所需要的時間。FIQ的中斷延時計算,當FIQ使能時,最壞的延時包括:a) Tsyncmax:請求通過同步器的最長時間,為兩個處理器周期。b) Tldm :最長執(zhí)行時間,最長為 20個周期。c) Texc:數(shù)據(jù)中止異常進入時間,為三個周期。d) Tfiq : FIQ進入時間,為兩個周期 總的延時可為27個周期。12 .在內(nèi)存的數(shù)據(jù)存儲過程中,什么是 字對齊”和 半字對齊”?答:在內(nèi)存數(shù)據(jù)存儲過程中,一般分為小端存儲格式和大端存儲

22、格式。下面以小端存儲格式為例來說明字對齊和半字對齊:在小端存儲格式中,對于地址為 A的字單元,其中字節(jié)的低位字節(jié)到高位字節(jié)地址順序為A,A+1 , A+2 , A+3 ;對于地址為 A的半字單元,其中字節(jié)的低位字節(jié)到高位字節(jié)地址順序為A ,A+1。13 .簡述程序計數(shù)器(PC)在處理器工作中的作用。答:在ARM處理器中將PC程序計數(shù)器定義到 R15寄存器,無論處理器處于何種狀態(tài),PC總是指向 芷在取值”指令的地址。14 .簡述ARM處理器中的返回鏈接寄存器( LR)在處理器工作中的作用。答:鏈接寄存器 LR用于保存子程序返回地址或者異常處理程序的返回地址,LR寄存器一共有 6個,其中子程序的返

23、回地址使用一個R14,每種異常模式各自有一個專用的LR寄存器用于保存異常處理程序的返回地址,它們分別為R14_fiq、R14_svc、R14_abt、R14_und、R14_irq。15 .分別簡述 ARM處理器中的CPSR、SPSR在處理器工作中的作用。答:ARM內(nèi)核包含1個CPSR和5個僅供異常處理模式使用的SPSR。由于所有模式全部共享一個程序狀態(tài)寄存器CPSR,因此處理器所有的狀態(tài)全部都保存在CPSR中,也就是 ARM內(nèi)核是通過CPSR來監(jiān)視和控制內(nèi)部操作的。每種異常模式都有一個對應的程序狀態(tài)保存寄存器SPSR,用于保存任務(wù)在異常發(fā)生之前的CPSR狀態(tài)的當前值。16 .結(jié)合CPSR的結(jié)

24、構(gòu),說明程序狀態(tài)字中各個bit位的作用。3130292827876543210NZCVIFTM4M3M2M1M0答:條件代碼標志(共計 4bit)含義如下:N:運算結(jié)果的最高位反映在該標志位。對于有符號二進制補碼,結(jié)果為負數(shù)時N=1,結(jié)果為正數(shù)或零時N=0;Z:指令結(jié)果為0時Z=1 (通常表示比較結(jié)果 相等”),否則Z=0;C:當進行加法運算,最高位產(chǎn)生進位時C=1,否則C=0。當進行減法運算(包才CMP指令),最高位產(chǎn)生借位時 C=0,否則C=1。V:當進行加法/減法運算,并且發(fā)生有符號溢出時V=1 ,否則V=0,其它指令V不變。CPSR的最低8位為控制位,控制了處理器的工作方式。當發(fā)生異常

25、時,這些位被硬件改變。當處理器處于一個特權(quán)模式時,可用軟件操作這些位。它們分別是:中斷禁止位包括I和F位:當I位置位時,IRQ中斷被禁止;當F位置位時,F(xiàn)IQ中斷被禁止。T位反映了處理器的當前狀態(tài):當位T=1時,處理器正在 Thumb狀態(tài)下運行;當位T=0時,處理器正在 ARM狀態(tài)下運行。模式位包括M4:0共計5bit,這些位決定處理器的操作模式16 .簡述ARM7TDMI內(nèi)部有哪些寄存器及特點。答:ARM7微處理器共有37個32位寄存器,其中31個為通用寄存器,6個為狀態(tài)寄存器。37個 寄存器定義如下:(1)31 個通用寄存器:R0R15、R8_fiq、R9_fiq、R10_fiq、R11_

26、fiq、R12_fiq > R13_fiq、R14_fiq、R13_svc、R14_svc、R13_abt、R14_abt、R13_und、R14_und、R13_irq、R14_irq。6 個狀態(tài)寄存器: CPSR、SPSR_abt、SPSR_svo SPSR_irq、SPSR_fiq、SPSR_und。特點:在ARM狀態(tài)中,R0R7是通用寄存器,是不分組寄存器;R8R14, SPSR根據(jù)模式進行分組的寄存器;R15是程序計數(shù)器,不進行分組;CPSR是狀態(tài)寄存器,不進行分組。17 .什么是ARM處理器的異常? ARM處理器中有哪幾種異常?答:在ARM中,異常是一些事件,這些事件能導致正

27、常的程序執(zhí)行流程被暫時地停止,而進入到 該事件對應的處理器異常模式并對該事件進行處理。ARM中定義了復位、未定義指令、SWI (軟中斷)、預取指終止、預取數(shù)終止、irq以及fiq等7種異常,與之對應地 ARM7處理器有5種異常模式。18 .分別簡述 ARM7的IRQ、FIQ異常處理過程,說明其異常向量地址。答:IRQ異常的處理流程如下:進入IRQ異常模式。程序運行在用戶模式下,當一個 IRQ異常中斷發(fā)生時,內(nèi)核切換到中斷模式”,并自動的做如下處理。將異常處理程序的返回地址保存到異常模式下的R14(R14_irq)中。用戶模式的CPSR將被保存到中斷異常模式 SPSR_irq中。修改CPSR,將

28、I置1,禁止新的IRQ中斷產(chǎn)生,但不改變 F值,不限制FIQ中斷發(fā)生,清 零T標志位,進入 ARM狀態(tài),修改模式位,設(shè)置為 IRQ模式。將IRQ異常中斷入口向量地址0x00000018送入PC。在IRQ模式下,用戶模式的 R13和R14將不能操作,而 R13_irq和R14_irq可以操作,即 R13_irq保存IRQ模式下的地址指針,R14_irq保存了 “ IRQ斷返回地址+4”。退出IRQ異常模式。中斷服務(wù)程序執(zhí)行完畢后,使用一條指令將返回地址送入PC,即可實現(xiàn)IRQ中斷返回,在返回過程中處理器會自動將 SPSR_irq中的內(nèi)容復制到 CPSR,恢復中斷前的 處理器狀態(tài)。FIQ異常進入與

29、退出的流程與 IRQ類似,其異常入口地址是 0X0000001C。19 . ARM7處理器對哪些異??梢赃M行屏蔽?如何屏蔽或允許?答:FIQ和IRQ可以被屏蔽。將 CPSR的標志位I和F分別置位對應著IRQ和FIQ中斷被禁止, 清零這些位又可以將其使能。20 .說明CPSR中T位的作用,ARM7處理器如何切換狀態(tài)?答:CPSR中T標志位為0時處理器工作在 ARM狀態(tài),為1時處理器工作在 Thumb狀態(tài)。由于 ARM采用字對齊或者半字對齊的存儲模式,這意味著地址的最低一個比特位就不會在尋址過程中 使用到。故,使用地址的最低位進行區(qū)分,以何種模式取值和執(zhí)行指令,當?shù)刂返匚粸?時,置CPSR的T位為

30、1,反之,置位為 0。答:大端存儲模式:在大端存儲格式中,對于地址為 A的字單元,其中字節(jié)的低位字節(jié)到高位字 節(jié)地址順序為 A+3, A+2, A+1 , A;對于地址為 A的半字單元,其中字節(jié)的低位字節(jié)到高位字節(jié) 地址順序為A+1, Ao即數(shù)據(jù)的低字節(jié)存放在高地址中的順序進行存儲。小端存儲模式:在小端存儲格式中,對于地址為 A的字單元,其中字節(jié)的低位字節(jié)到高位字節(jié)地 址順序為A, A+1 , A+2, A+3;對于地址為 A的半字單元,其中字節(jié)的低位字節(jié)到高位字節(jié)地址 順序為A, A+1。即數(shù)據(jù)的高字節(jié)存放在高地址中的順序進行存儲。0x20030x20000x2000上圖中,左側(cè)為大端存儲模

31、式,右側(cè)為小 跑 端存儲模式。習題31、ARM7TDMI 支持哪幾種指令集, 各有什么特點?0x2003答:支持 ARM指令集和Thumb指令0x210x430x650x870x210x430x650x87集,各自特點是 ARM指令集的指令是32位,執(zhí)行效率高、功能全,每條指令可以根據(jù)條件執(zhí)行,但是代碼密度低。Thumb指令集指令是16位,在功能上是 ARM指令集的子集,功能并沒有降低。2、ARM指令的尋址方式有幾種?并指出下列指令中的尋址方式。答:ARM指令的尋址方式有8種,分別為立即尋址、寄存器尋址、寄存器移位尋址、寄 存器間接尋址、基址變址尋址、相對尋址、多寄存器尋址、堆棧尋址。SUBR

32、0,R1,R2 寄存器尋址LDRR0,R2寄存器間接尋址MVNR0,#0x0F2 立即尋址LDMIAR0,R1-R5 多寄存器尋址STRR2,R4,#0x02 !基址變址尋址LDRR1,R2,R3基址變址尋址MOVR1,R1,ROR#2 寄存器移位尋址LDRR1,R3,#0x04基址變址尋址3、簡述ARM指令集中第2個操作數(shù)(operand2)的三種形式。答:常數(shù)表達方式。該常數(shù)必須對應8位位圖,即常數(shù)是由一個8位的常數(shù)循環(huán)右移偶數(shù)位得到。例如:MOVR2 , #100;寄存器方式。Operand2是Rm寄存器方式,在寄存器方式下操作數(shù)即位寄存器中的數(shù)值。例如:SUBR0 , R1 , R2;

33、寄存器移位方式。Rm, shift表示將寄存器的移位結(jié)果作為操作數(shù),但Rm值保持不變。例如:MOVR0 , R1 , RRX;將R1帶擴展的循環(huán)右移 1位,存入 R0中。4、指出下列指令是否正確,若不正確請說明原因。MOVSR1,101不正確,立即尋址方式應該是 #101 MVNR1,#0x10F 正確STMDAR11,R2-R8!不正確,不能同時存儲在 R2和R8中ADDR0!,R2,#4 正確LDRR4,R5!不正確,LDR是存儲到單個寄存器的加載指令,而這個是兩個存儲器都進行存儲,應該為 LDRR4,R5MRSPC,CPSR不正確 MRS是將CPSR傳送到通用寄存器中,但這里的通用寄存器

34、不包括R15,即 PC LDMFDSR0!,R5-R8,R2正確ADDR3,R3,R7不正確,ADD指令不能訪問存儲器(9) LDRR11,R15 , R8!正確(10) BXSR0 正確5、何i胃ARM指令的條件碼?默認的條件碼是什么?舉例說明ARM指令的條件碼對指令執(zhí)行的影響。答:所謂的ARM指令的條件執(zhí)行”是指在指令碼中含有本條指令的執(zhí)行條件,當 CPSR中的條件碼標志滿足時,處理器執(zhí)行本條指令,否則本條指令不執(zhí)行。默認是無條件執(zhí)行。比如執(zhí)行指令"ANDEQR2 , R1 , R3”時,如果 CPSR中的Z=1時,執(zhí)行 R2=R1&R3 , 否則不執(zhí)行該指令。6、解釋滿

35、堆棧"、空堆棧”、遞增堆棧”和遞減堆棧" ?ARM指令系統(tǒng)中是如何支持的?答:滿堆棧:堆棧指針 SP指向最后壓入的堆棧有效數(shù)據(jù)項??斩褩#憾褩V羔?SP指向下一個待壓入數(shù)據(jù)的空位置。遞增堆棧:向高地址方向生長。遞減堆棧:向低地址方向生長。滿遞增:堆棧向上增長,空遞增:堆棧向上增長,滿遞減:堆棧向下增長,空遞減:堆棧向下增長,SP指向內(nèi)含有效數(shù)據(jù)項的最高棧單元。指令如LDMFA、STMFASP指向堆棧上的第一個空位置。指令如LDMEA、STMEA等;SP指向內(nèi)含有效數(shù)據(jù)項的最低棧單元。指令如LDMFD、STMFDSP指向堆棧下的第一個空位置。指令如LDMED、STMED等。7

36、、試說明MOV指令、LDR加載指令和LDR偽指令三者的區(qū)別。答:MOV指令是在寄存器間進行數(shù)據(jù)傳送,影響標志位。LDR指令是將存儲器中的數(shù)據(jù)按給定地址加載到寄存器中,不影響標志位。LDR偽指令是可以在一個立即數(shù)前面加等號,把一個地址寫入某寄存器。8、解釋B指令、BL指令與BX指令的功能差別,并舉例說明其使用方法。答:B指令是分支指令,BL指令是帶鏈接的分支指令,BX是帶狀態(tài)切換的分支指令。對于B指令" BWAITA ”指跳轉(zhuǎn)至標號 WAITA處開始執(zhí)行,B指令的跳轉(zhuǎn)范圍為土 32M ,對于BL指令,實現(xiàn)程序跳轉(zhuǎn),并保持PC到鏈寄存器LR中,跳轉(zhuǎn)范圍土 32M,舉例“ BLDELAY

37、” 完成的跳轉(zhuǎn)至標號 DELAY處執(zhí)行,并把PC-4存入LR。BX指令,帶狀態(tài)切換的跳轉(zhuǎn),比如“BXR0 ”表示跳轉(zhuǎn)R0指定的地址開始執(zhí)行,并查看 R00位的值,如果是1 ,對CPSR的T 位置位,解釋目標程序為Thumb指令,如果是 0,對CPSR的T位清零,解釋目標程序為ARM指令。9、分析下列兩段程序片斷的功能,試用類C語言寫出其等價功能。程序片斷2:CMP R0,#10CMPNER1,#20ADDNE R0,R0,R1答:10、使用 C代碼語句。答一(1),R0+;if(x=y) else a=b+c;R1+; elseRR0,x if(XR=yR0+R=b)卜列代IRQc=c*2+b

38、;(2) LDRR0,x, LDRR1,y中斷和關(guān)irq中斷功ldr部1/空白處內(nèi)容。 MRSRDR RCPSR12、如者ARMr虬二八 ; 存器賺瓣脾0內(nèi)舞覲情況。工理債電,寄存器及存小 0 , 0x80人唐斌一STM答:,習題4那幌露RMADDEQR4,R2,R31. MRSR1 , lCPSR, b者單元RR吐覦蛔小寫出執(zhí)行下列指令后,各寄MSRCPSRMPR1, R1 LDMDBR13, R0-R3CMPEQR2 , R3,(2),叫區(qū)忸13刪能R1+4;ADDR4Rf3,RR3 - R1+4;RU3NerR02,R3 R1R+R4-R1 R13+8 - R2加高工峭®以分為

39、哪幾種?各自的優(yōu)缺評期回研1二R1+4;答:計算機語言是*算機可以識別、理解的語言。計算遍1圾旬R1 KR怖匯編語什么是計算百和Wj級語百。機器語言(MachineLanguage)是由0和1二進制代碼表示和存儲的指令與數(shù)據(jù)。它的特 點是能被機器直接識別與執(zhí)行;程序所占內(nèi)存空間較少。其缺點是難認、難記、難編、易 錯。匯編語言是一種面向物理層操作的計算機語言。不同的處理器類型,具有不同的匯編語言。使用匯編語言編寫程序能夠直接利用硬件系統(tǒng)的特性(如寄存器、標志、中斷系統(tǒng)等) ,可直接對位、字節(jié)、字寄存器或存儲單元、I/O端口進行處理,同時也能直接使用CPU指令系統(tǒng)提供的各種尋址方式,編制出高質(zhì)量的

40、程序,這樣的程序不但占用內(nèi)存空間少,而且執(zhí)行 速度快。缺點:由于匯編語言不直接支持復雜的抽象數(shù)據(jù)類型,在描述目標系統(tǒng)模型時,需 要程序員自己組織各種抽象數(shù)據(jù)類型的存儲方式,使得匯編語言程序設(shè)計較高級語言困難的 多,需要較多的軟件開發(fā)時間,也增加了程序設(shè)計過程中出錯的可能性,程序維護也麻煩。高級語言(HighLevelLanguage )是脫離具體機器(即獨立于機器)的通用語言,不依賴 于特定計算機的結(jié)構(gòu)與指令系統(tǒng)。與目標系統(tǒng)的數(shù)學模型之間有著良好的對應關(guān)系,可在各 種機器上通用,具有很好的通用性和可移植性。缺點:處理器是不能直接執(zhí)行這種用高級語 言編寫的源程序,需要先將它翻譯成對應的目標程序(

41、即機器語言程序),才能運行。2 . 簡述ARM匯編語言上機操作過程。答:設(shè)計、編輯匯編語言源程序;匯編、連接、下載到目標系統(tǒng);調(diào)試運行;3 .簡述編寫一個匯編語言源程序的基本步驟。答:分析目標系統(tǒng),建立數(shù)學模型,確定算法根據(jù)算法設(shè)計流程圖合理分配寄存器,存儲空間和外設(shè)資源根據(jù)流程圖編寫源程序上機調(diào)試程序形成文檔4 .循環(huán)程序設(shè)計中,循環(huán)的基本結(jié)構(gòu)有幾種?其循環(huán)控制方法有幾種?各自的應用特點? 答:循環(huán)程序的基本結(jié)構(gòu):初始化部分:建立循環(huán)初始值。循環(huán)體:是循環(huán)程序的主體部分。修改部分:為執(zhí)行下一次循環(huán)而修改某些參數(shù)。控制部分:通過判斷循環(huán)結(jié)束條件是否成立,決定是否繼續(xù)執(zhí)行循環(huán)。結(jié)束處理部分:對循

42、環(huán)結(jié)束進行適當處理,如存儲結(jié)果和打印輸出等。循環(huán)程序設(shè)計中一個重要環(huán)節(jié)就是如何控制循環(huán)次數(shù)。循環(huán)控制方法:用計數(shù)控制循環(huán)。 特點:循環(huán)比較次數(shù)是已知的,因此可以用計數(shù)器控制循環(huán)。用條件控制循環(huán)。有些情況無法確定循環(huán)次數(shù),但循環(huán)結(jié)束的條件是已知的,這時可通過 循環(huán)測試結(jié)束條件是否滿足的方法,條件滿足結(jié)束循環(huán),否則繼續(xù)循環(huán)。5 .匯編子程序傳遞參數(shù)有哪幾種方式?答:寄存器傳遞參數(shù)方式存儲區(qū)域傳遞參數(shù)方式堆棧傳遞參數(shù)方式6 . C語言和ARM匯編語言進行程序編制時常用的開發(fā)方法有哪些?答:使用C語言和ARM7匯編語言進行程序編制時常用的開發(fā)方法:混合編程和交叉編程。7 . 簡述APCS規(guī)則。答:寄存

43、器使用規(guī)則。ARM 處理器寄存器組中的R0-R11用來保存局部變量;R12-R15用于系統(tǒng)專用:R12用于子程序內(nèi)部調(diào)用的片段寄存器;R13當前模式的堆棧指針;R14鏈接寄存器,保存子程序的返回地址;R15用作程序計數(shù)器。其中,由于 R4-R11用來保存局部變量,對于遵守APCS規(guī)則的函數(shù),在進入該函數(shù)的時候,程序員必須注意保存R4-R11中會被函數(shù)使用的寄存器,當返回時,再返回它們的值。堆棧使用規(guī)則。APCSW則中的堆棧為FD類型,也就是滿遞減堆棧,并且堆棧的操作是8字節(jié)對齊的,所以需要在匯編程序中用偽指令PRESERVE院告訴連接器,本程序使用的堆棧是字節(jié)對齊的。參數(shù)傳遞規(guī)則。ARM7處理

44、器寄存器組中R0-R3用于程序間的參數(shù)傳遞,其中 R0傳遞第 一個參數(shù),R1傳遞第二個參數(shù),以此類推;如果參數(shù)數(shù)目超過4個,那么必須使用堆棧進行傳遞。 8.實現(xiàn)將某個寄存器中的字數(shù)據(jù)拆分成4組字節(jié)數(shù)據(jù)的功能。答:不妨設(shè)數(shù)據(jù)在 R0中,拆成的數(shù)據(jù)存放在 R1R4中,程序代碼如下。9.LDRRMRinR0將一個字符串的地址放到丫糕姬就!"口 , MOMOVR2,R0LSROX08 放入 R3 中R0中。(約定:字符串以0為結(jié)束標志)R210.11.實現(xiàn)RR0繼續(xù)比較。i=r 與有 N2LDIT 中,蠹:n版t: LDR讖R0#鑲法的標諭嬲麋蜜搠到存儲在存儲器中,每個64位數(shù)占用8個字節(jié)的

45、sp U大順序排列的互不相等的字符號數(shù),IW,將 BUF1 ,和BUF21電整合并到 在 R1R4的低八位,局24為清零BUF2 中I BUF3LDRNDR0R2*講牌的第一個字符放入 實現(xiàn)10個64位有樗號數(shù)的相加運算。count: MOVR3,R0,LSR#0x08目:CMAR2mR3,;R3,#0XfF內(nèi)容與結(jié)束符 0進行比較MSVACRBY3,CODE2READONL y 習題UnfiENTR&uBUFB1、2、CMRR53=Nlo;:盤褊2_。LPC2000系列處理器中各種資源是如何映射的?ADM1lf#0,R4;BLRGO,fR0,#-12;AtOPR2,R2,R5;SUB

46、R0R0X8?LDRR3 .=3x20026答:存儲器重映射:將已經(jīng)映射過的存儲器再次映射的過程稱為存儲器重映射,它使同一物理存 儲單元映射多個不同的邏輯地址。原理:此時運用了異常向量表重映射技術(shù),就是將BootBlock、片內(nèi)Flash、片內(nèi)SRAM和片外存儲器。3、什么是中斷?敘述中斷處理過程。答:計算機在執(zhí)行正常程序過程中,當出現(xiàn)某種異常事件或某種外部請求時,處理器就暫停執(zhí)行當前的程序,而轉(zhuǎn)去執(zhí)行對異常事件或某種外部請求的處理操作。當處理完畢后,CPU再返回到被暫停執(zhí)行的程序,繼續(xù)執(zhí)行,這個過程稱為中斷。 中斷處理過程一般包括五個步驟:中斷請求,中斷響應,斷點保護,中斷處理和中斷返回。4

47、、 ARM7的中斷類型有哪些?哪種方式最快?當有多個中斷源同時向CPU發(fā)出中斷申請時,CPU依據(jù)什么來進行響應中斷?答:根據(jù)中斷源的不同,中斷可以分為硬件中斷和軟件中斷。有三類:非向量IRQ中斷,向量IRQ中斷,F(xiàn)IQ中斷。它們的優(yōu)先級依次升高。所以FIQ中斷的處理速度最快。當多個中斷源同時向 CPU發(fā)出中斷申請時,CPU只能按一定的次序處理相應和處理,這個響應的 次序稱為中斷優(yōu)先級。處理原則為:不同優(yōu)先級的多個中斷源同時發(fā)出中斷請求,按優(yōu)先級由高到低依次處理。低優(yōu)先級中斷正在處理,出現(xiàn)高優(yōu)先級請求,應轉(zhuǎn)去處理高優(yōu)先級請求,服務(wù)結(jié)束后再返回原優(yōu)先級較低的中斷服務(wù)程序繼續(xù)執(zhí)行。高優(yōu)先級中斷正在處

48、理,出現(xiàn)低優(yōu)先級請求,可暫不響應。中斷處理時,出現(xiàn)同級別請求,應在當前中斷處理結(jié)束以后再處理新的請求。5、 LPC2000系列有那些降低功耗的方法?簡述空閑模式和掉電模式的區(qū)別。答:降低功耗的方法有空閑模式和掉電模式。除了采用這兩種模式外,還允許程序?qū)δ硞€外設(shè)進行關(guān)閉控制,可以獨立的關(guān)閉應用中不需要的外設(shè),這樣進一步降低功耗??臻e模式和掉電模式的區(qū)別:在空閑模式下,處理器停止執(zhí)行指令,此時處理器,存儲器,內(nèi)部總 線以及相關(guān)的控制器不再消耗功率,但整個系統(tǒng)的時鐘仍然有效,外設(shè)也能在空閑模式下繼續(xù)工作, 并可產(chǎn)生中斷使處理器恢復運行。然而在掉電模式下,振蕩器關(guān)閉,這樣芯片內(nèi)部沒有任何時鐘。處理器狀

49、態(tài)和寄存器,外設(shè)寄存器,內(nèi)部SRAM值以及引腳的邏輯電平在掉電模式下被保持。6、 簡述LPC2000系列中PLL的工作原理,說明系統(tǒng)時鐘的配置過程。答:PLL接受的輸入時鐘頻率范圍為1025MHz , PLL的輸出時鐘信號是由電流控制振蕩器(CCO)分頻得到的,CCO的振蕩頻率由“相位頻率檢測”部件控制,該部件會比較輸出時鐘信號和CCO經(jīng)過M分頻后信號的相位和頻率,并根據(jù)誤差輸出不同的電流值以控制CCO的振蕩頻率,CCO的輸出頻率經(jīng)過 M分頻后再送給“相位頻率檢測”部件檢測以控制 CCO的振蕩頻率,經(jīng)過反復拉 鋸調(diào)節(jié)過程,能夠使得“相位頻率檢測”部件的兩路輸入信號頻率和相位逐步接近,漸漸穩(wěn)定到

50、預 期的頻率值上。這種反復拉鋸調(diào)節(jié)過程稱為PLL鎖定過程,輸出頻率穩(wěn)定后即“鎖定”成功。其配置過程:1 .選擇處理器的操作頻率,選才I振蕩器的頻率,計算 M值和P值;2 .配置PLLCON使能但不連接的 PLL的模式,根據(jù) P和M的值配置PLLCFG寄存器,發(fā)送 PLL 饋送序列,然后等待 PLL鎖定或中斷;3 .連接PLL ,發(fā)送PLL饋送序列。7、簡述LPC2000系列芯片內(nèi)部向量中斷控制器( VIC )的功能特點,如果定時器 0作為一個向 量中斷源,需要對 VIC進行哪些配置?簡述向量處理過程。答:向量中斷控制器(VIC)負責管理芯片的中斷源,最多可管理 32個中斷輸入請求,16個向量

51、IRQ中斷和1個非向量中斷,16個優(yōu)先級可動態(tài)分配給中斷請求,可產(chǎn)生軟中斷。VIC為每一個中斷分配中斷通道號,通道號就是每一種中斷源的唯一標識,中斷到來時,根據(jù)VIC通道號就能確定中斷源。1 .配置中斷選擇寄存器 VICIntSelect ,中斷通道4分配為IRQ中斷;2 .配置寄存器VICVectAddrO ,確定定時器0中斷的服務(wù)程序地址;3 .配置寄存器 VICVectCntlO ,向量IRQ通道0控制寄存器位分配位數(shù)值;4 .配置中斷時能寄存器,使能中斷。8、 FIQ、IRQ 有什么不同?向量 IRQ和非向量IRQ 有什么不同? 答:快速中斷請求 FIQ要求具有最高優(yōu)先級。向量IRQ具

52、有中等優(yōu)先級,該級別可分配 32個請求中的16個,32個請求中的任意一個都 可分配到16個向量IRQslot中的任意一個,其中 slot ()具有最高優(yōu)先級,而 slot15則為最低優(yōu)先 級。非向量IRQ的優(yōu)先級最低。習題61 .簡述LPC2000系列芯片的引腳設(shè)置寄存器PINSEL0、PINSEL1、PINSEL2的具體功能。答:這三個寄存器的主要功能是實現(xiàn)又引腳的功能選擇。具體來說PINSEL0和PINSEL1可以配置P0 口(P0.0P0.31)的功能,PINSEL2寄存器用來配置 P1.0P1.16弓I腳的功能。PINSELx的連 個比特位可配置一個引腳的功能,比如以 PINSEL1:

53、0兩個比特位的00、01、10可以配置P0.0為 GPIO、TxD(UART0)、PWM1 , 11 保留。2 .簡要描述LPC2000系列芯片內(nèi)部 GPIO的功能特點?舉例說明 GPIO輸入和輸出的應用。答:GPIO(GeneralPurposeInput/Outputports ,通用輸入輸出接口 )是用于二進制數(shù)據(jù)的輸入和輸出。芯片的某個引腳通過 MUX1功能選擇,對應 PINSELx寄存器選擇器功能。如果選擇該引腳為 GPIO那,再經(jīng)MUX2中的IOxDIR對應位選擇控制管腳的車入和輸出方向,GPIO管腳為輸入時通過IOxPIN寄存器讀入,GPIO為輸出時通過IOxSET和IOxCLR

54、寄存器控制輸出,實現(xiàn)對對應 GPIO管腳的控制。當引腳設(shè)置為GPIO輸出模式時,使用IOxSET寄存器設(shè)置其從引腳輸出高電平,向某位寫入1是對應引腳輸出高電平,寫入 0無效;使用IOxCLR寄存器設(shè)置從引腳輸出低電平,向某位寫入0是對應引腳輸出低電平。 GPIO輸入用于向ARM核中讀入數(shù)據(jù),GPIO輸出用于輸出數(shù)據(jù)。3 . LPC2000系列芯片外部中斷有幾種觸發(fā)方式?【例6.7】中外部中斷修改為 EINT1 , P0.5輸出控制LED,試編程實現(xiàn)。答:外部中斷有兩類四種觸發(fā)方式:邊沿觸發(fā)(上升沿觸發(fā)或者下降沿觸發(fā)),電平觸發(fā)(高電平觸發(fā)或低電平觸發(fā))。編程實現(xiàn)的代碼如下:4 .簡#nLPde

55、"CO0figa"J芯片內(nèi)部定時器的內(nèi)部由哪些模塊構(gòu)成?各模塊完成功能是什么?答#d前疆防岫如酸曹癡.5W 旭粉墉、加己LED她和捕獲控制模塊。分窈施洲UrqJEi刪VOd)決,提供每個定時器捕獲匹配的基本時鐘,屬于定時器的公共部分,可對外和接入時鐘進行預分頻。匹用熱32模塊:比較器隨時進行MR0MR3與TC的匹配,當TC計數(shù)值與某一 MRx的預置值相等時i=IOSET/甦LED育物制值捕撇&LED=0)部觸發(fā)捕獲時,將當前TC值裝在如CRx中。5 .采地0SET=L揄林/潮BED1秒的方波。答:elseIO0CLR=LED; 熄滅 LED6 .通WnLEdEXTNTgh腸=0俞出Wf展制int1,LEDWR o.is、0.5S和is頻率同時閃爍,假設(shè)Rntman捌強接 P0.1、P0.2和P0.3,試編程實現(xiàn)上述功能。答:eXTNT=0x02;清除EINT1中斷標志 PINSEL0=PINSEL0&(3<<10)|(2<<10);vTCVectA腓00/向量中斷結(jié)束 T0TC=0;inffiPR曾朋)T0MCR=0x02<<3;#nc_deq iRQ_f

溫馨提示

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

評論

0/150

提交評論