arm嵌入式系統(tǒng)基礎(chǔ)教程課后答案_第1頁
arm嵌入式系統(tǒng)基礎(chǔ)教程課后答案_第2頁
arm嵌入式系統(tǒng)基礎(chǔ)教程課后答案_第3頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、arm嵌入式系統(tǒng)基礎(chǔ)教程課后答案【篇一:arm嵌入式系統(tǒng)基礎(chǔ)教程習(xí)題答案周立功】/p>1、舉出3個(gè)書本中未提到的嵌入式系統(tǒng)的例子。答:紅綠燈控制,數(shù)字空調(diào),機(jī)頂盒2、什么叫嵌入式系統(tǒng)嵌入式系統(tǒng):以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。3、什么叫嵌入式處理器?嵌入式處理器分為哪幾類?嵌入式處理器是為完成特殊的應(yīng)用而設(shè)計(jì)的特殊目的的處理器。嵌入式微處理器(embeddedmicroprocessorunit,empu)嵌入式微控制器(microcontrollerunit,mcu)嵌入式dsp處理器(embedd

2、eddigitalsignalprocessor,edsp)嵌入式片上系統(tǒng)(systemonchip)4、什么是嵌入式操作系統(tǒng)?為何要使用嵌入式操作系統(tǒng)?是一段在嵌入式系統(tǒng)啟動后首先執(zhí)行的背景程序,首先,嵌入式實(shí)時(shí)操作系統(tǒng)提高了系統(tǒng)的可靠性。其次,提高了開發(fā)效率,縮短了開發(fā)周期。再次,嵌入式實(shí)時(shí)操作系統(tǒng)充分發(fā)揮了32位cpu的多任務(wù)潛力。第二章1、嵌入式系統(tǒng)項(xiàng)目開發(fā)的生命周期分哪幾個(gè)階段?各自的具體任務(wù)是什么?項(xiàng)目的生命周期一般分為識別需求、提出解決方案、執(zhí)行項(xiàng)目和結(jié)束項(xiàng)目4個(gè)階段。識別需求階段的主要任務(wù)是確認(rèn)需求,分析投資收益比,研究項(xiàng)目的可行性,分析廠商所應(yīng)具備的條件。提出解決方案階段由各

3、廠商向客戶提交標(biāo)書、介紹解決方案。執(zhí)行項(xiàng)目階段細(xì)化目標(biāo),制定工作計(jì)劃,協(xié)調(diào)人力和其他資源;定期監(jiān)控進(jìn)展,分析項(xiàng)目偏差,采取必要措施以實(shí)現(xiàn)目標(biāo)。結(jié)束項(xiàng)目階段主要包括移交工作成果,幫助客戶實(shí)現(xiàn)商務(wù)目標(biāo);系統(tǒng)交接給維護(hù)人員;結(jié)清各種款項(xiàng)。2、為何要進(jìn)行風(fēng)險(xiǎn)分析?嵌入式項(xiàng)目主要有哪些方面的風(fēng)險(xiǎn)?在一個(gè)項(xiàng)目中,有許多的因素會影響到項(xiàng)目進(jìn)行,因此在項(xiàng)目進(jìn)行的初期,在客戶和開發(fā)團(tuán)隊(duì)都還未投入大量資源之前,風(fēng)險(xiǎn)的評估可以用來預(yù)估項(xiàng)目進(jìn)行可能會譜遇的難題。需求風(fēng)險(xiǎn);時(shí)間風(fēng)險(xiǎn);資金風(fēng)險(xiǎn);項(xiàng)目管理風(fēng)險(xiǎn)3、何謂系統(tǒng)規(guī)范?制定系統(tǒng)規(guī)范的目的是什么?規(guī)格制定階段的目的在于將客戶的需求,由模糊的描述,轉(zhuǎn)換成有意義的量化數(shù)據(jù)

4、。4、何謂系統(tǒng)規(guī)劃?為何要做系統(tǒng)規(guī)劃系統(tǒng)規(guī)劃就是擬定一個(gè)開發(fā)進(jìn)程,使項(xiàng)目在合理的進(jìn)程范圍中逐漸建構(gòu)完成。其目地是讓客戶可以進(jìn)一步地掌握系統(tǒng)開發(fā)的進(jìn)程,并確定檢查點(diǎn),以讓雙方確定項(xiàng)目是否如預(yù)期中的進(jìn)度完成。5、為什么在項(xiàng)目結(jié)束前需要進(jìn)行項(xiàng)目討論?項(xiàng)目的討論一個(gè)項(xiàng)目進(jìn)行的反饋機(jī)制。通過這一個(gè)程序,項(xiàng)目團(tuán)隊(duì)的經(jīng)驗(yàn)才可以被記錄下來,也就是說,這是一個(gè)撰寫項(xiàng)目歷史的過程。第三章1、arm7tdmi中的t、d、m、i的含義是什么?64位乘法指令(帶m后綴的)、支持片上調(diào)試(帶d后綴的)、高密度16位的thumb指令機(jī)擴(kuò)展(帶t后綴的)和embededice觀察點(diǎn)硬件(帶i后綴的)2、arm7tdmi采用幾

5、級流水線?使用何種存儲器編址方式?3、arm處理器模式和arm處理器狀態(tài)有何區(qū)另U?處理器模式指的是處理器在執(zhí)行程序時(shí)在不同時(shí)刻所處的不同狀態(tài),處理器狀態(tài)指的是處理器當(dāng)前所執(zhí)行的指令集。4、分別列舉arm的處理器模式和狀態(tài)。狀態(tài):arm指令thumb指令arm狀態(tài)32位,這種狀態(tài)下執(zhí)行的是字方式的thumb狀態(tài)16位,這種狀態(tài)下執(zhí)行半字方式的模式:中止模式、未定義用戶模式、快中斷模式、中斷模式、管理模式、模式和系統(tǒng)模式。5、pc和lr分別使用哪個(gè)寄存器?pc使用r15寄存器,lr使用r14寄存器6、r13寄存器的通用功能是什么?堆棧第四章1、基礎(chǔ)知識(1) arm7tdmi(-s)有幾種尋址方

6、式?lorr1,r0,#0x08屬于哪種尋址方式?1. 寄存器尋址;2.立即尋址;3.寄存器移位尋址;4.寄存器間接尋址;5.基址尋址;6.多寄存器尋址;7.堆棧尋址;8.塊拷貝尋址;9.相對尋址;lorr1,r0,#0x08屬于基址尋址。(2) arm指令的條件碼有多少個(gè)?默認(rèn)條件碼是什么?16條,默認(rèn)條件碼是al。(3) arm指令中第二個(gè)操作數(shù)有哪幾種形式?舉例5個(gè)8位圖立即數(shù)。(1) 立即數(shù);(2)寄存器;(3)寄存器及移位常數(shù);0x3fc(0xff2)、0、0xf0000000(0xf024)、200(0xc8)、0xf0000001(0x1f28)。(4) ldr/str指令的偏移

7、形式有哪4種?ldrb和ldrsb有何區(qū)另U?(1)零偏移;(2)前索引偏移;(3)程序相對偏移;(4)后索引偏移。ldrb就是讀出指定地址的數(shù)據(jù)并存入指定寄存器,ldrsb讀出指定地址的數(shù)據(jù),并高24位用符號位擴(kuò)展,再存入指定寄存器。(5) 請指出mov指令與ldr加載指令的區(qū)別及用途。mov將8位圖(pattern)立即數(shù)或寄存器(operand2)傳送到目標(biāo)寄存器(rd),可用于移位運(yùn)算等操作。讀取指定地址上的存儲器單元內(nèi)容,執(zhí)行條件al.(6) cmp指令的操作是什么?寫一個(gè)程序,判斷r1的值是否大于0x30,是則將r1減去0x30。cmp指令將寄存器rn的值減去operand2的值,

8、根據(jù)操作的結(jié)果更新cpsr中的相應(yīng)條件標(biāo)志位,以便后面的指令根據(jù)相應(yīng)的條件標(biāo)志來判斷是否執(zhí)行。cmpr1,0x30subhir1,r1,0x30(7) 調(diào)用子程序是用b還是用bl指令?請寫出返回子程序的指令?bl指令用于子程序調(diào)用。movpc,r14(8) 請指出ldr偽指令的用法。指令格式與ldr加載指令的區(qū)別是什么?ldr偽指令用于加載32位的立即數(shù)或一個(gè)地址值到指定寄存器。第二個(gè)數(shù)為地址表達(dá)式。(9) arm狀態(tài)與thumb狀態(tài)的切換指令是什么?請舉例說明。bx指令,(10) thumb狀態(tài)與arm狀態(tài)的寄存器有區(qū)另U嗎?thumb指令對哪些寄存器的訪問受到一定限制?thumb狀態(tài)下不能

9、更新cpsr中的alu狀態(tài)標(biāo)志。,thumb指令對r8r15寄存器訪問受限。(11) thumb指令集的堆棧入棧、出棧指令是哪兩條?pushpop2有符號和無符號加法下面給出a和b的值,您可先手動計(jì)算a+b,并預(yù)測n、z、v和c標(biāo)志位的值。然后修改程序清單4.1中r0、r1的值,將這兩個(gè)值裝載到這兩個(gè)寄存器中(使用ldr偽指令,如ldrr0,=0xffff0000),使其執(zhí)行兩個(gè)寄存器的加法操作。調(diào)試程序,每執(zhí)行一次加法操作就將標(biāo)志位的狀態(tài)記錄下來,并將所得結(jié)果與您預(yù)先計(jì)算得出的結(jié)果相比較。如果兩個(gè)操作數(shù)看作是有符號數(shù),如何解釋所得標(biāo)志位的狀態(tài)?同樣,如果這兩個(gè)操作數(shù)看作是無符數(shù),所得標(biāo)志位又

10、當(dāng)如何理解?0xffff000f0x7fffffff67654321(a)+0x0000fff1+0x02345678+23110000(b)結(jié)果:()()()3數(shù)據(jù)訪問把下面的c代碼轉(zhuǎn)換成匯編代碼。數(shù)組a和b分別存放在以0x4000和0x5000為起始地址的存儲區(qū)內(nèi),類型為long(即32位)把編寫的匯編語言進(jìn)行編譯連接,并進(jìn)行調(diào)試。for(i=0;i8;i+)ai=b7-i;第五章1、基礎(chǔ)知識:(1) lpc2114可使用的外部晶振頻率范圍是多少(使用/不使用pll功能時(shí))?晶振頻率范圍:130mhz,若使用pll或isp功能為:1025mhz。描述一下lpc2210的po.14、p1.2

11、0、p1.26、boot1和boot0引腳在芯片復(fù)位時(shí)分別有什么作用?并簡單說明lpc2000系列arm7微控制器的復(fù)位處理流程。p0.14的低電平強(qiáng)制片內(nèi)引導(dǎo)裝載程序復(fù)位后控制器件的操作,即進(jìn)入isp狀態(tài)。p1.20的低電平使p1.25p1.16復(fù)位后用作跟蹤端口。p1.26的低電平使p1.31p1.26復(fù)位后用作一個(gè)調(diào)試端口。當(dāng)reset為低時(shí),boot0與bootl一同控制引導(dǎo)和內(nèi)部操作。引腳的內(nèi)部上拉確保了引腳未連接時(shí)呈現(xiàn)高電平。外部復(fù)位輸入:當(dāng)該引腳為低電平時(shí),器件復(fù)位,i/o口和外圍功能進(jìn)入默認(rèn)狀態(tài),處理器從地址0開始執(zhí)行程序。復(fù)位信號是具有遲滯作用的ttl電平。(2) lpc20

12、00系列arm7微控制器對向量表有何要求(向量表中的保留字)?向量表所有數(shù)據(jù)32位累加和為零(0x000000000x0000001c的8個(gè)字的機(jī)器碼累加),才能脫機(jī)運(yùn)行用戶程序,這是lpc2114/2124/2212/2214的特性。(3) 如何啟動lpc2000系列arm7微控制器的isp功能?相關(guān)電路應(yīng)該如何設(shè)計(jì)?(4) lpc2000系列arm7微控制器片內(nèi)flash是多位寬度的接口?它是通過哪個(gè)功能模塊來提高flash的訪問速度?128位,通過存儲器加速模塊(mam)來提高flash的訪問速度若lpc2210的bank0存儲塊使用32位總線,訪問bank0時(shí),地址線a1、a0是否有效

13、?emc模塊中的blsobls4具有什么功能?無效,(如果存儲器組配置成16位寬,則不需要a0;8位寬的存儲器組需要使用a0。);字節(jié)定位選擇信號。(5) lpc2000系列arm7微控制器具有引腳功能復(fù)用特性,那么如何設(shè)置某個(gè)引腳為指定功能?通過引腳功能選擇寄存器的設(shè)定來設(shè)置某個(gè)引腳為指定功能(6) 設(shè)置引腳為gpio功能時(shí),如何控制某個(gè)引腳單獨(dú)輸入/輸出?當(dāng)前要知道某個(gè)引腳當(dāng)前的輸出狀態(tài)時(shí),是讀取iopin寄存器還是讀取ioset寄存器?gpio方向寄存器,iopin。(7) p0.2和p0.3口是i2c接口,當(dāng)設(shè)置它們?yōu)間pio時(shí),是否需要外接上拉電阻才能輸出高電平?(8) 使用spi主

14、模式時(shí),ssel引腳是否可以作為gpio?若不能,ssel引腳應(yīng)如何處理?不能用彳gpio,ssel應(yīng)設(shè)這高電平,處于末激活狀態(tài)。(9) lpc2114具有幾個(gè)uart是符合什么標(biāo)準(zhǔn)?哪一個(gè)uart可用作isp通信?哪一個(gè)uart具有modem接口?uart0,uart1;uart0用于isp通信,uart1具有modem接口。(10) lpc2114具有幾個(gè)32位定時(shí)器?pwm定時(shí)器是否可以作通用定時(shí)器使用?兩個(gè)32位定時(shí)器,pwm定時(shí)器不能用作通用定時(shí)器使用lpc2000系列arm7微控制器具有哪兩種低耗模式?如何降低系統(tǒng)的功耗?2個(gè)低功耗模式:空閑和掉電;2、計(jì)算pll設(shè)置值:假設(shè)有一個(gè)

15、基于lpc2114的系統(tǒng),所使用的晶振為11.0592mhz石英晶振。請計(jì)算出最大的系統(tǒng)時(shí)鐘(ccls)頻率為多少mhz?此時(shí)pll的m值和p值各為多少?請列出計(jì)算公式,并編寫設(shè)置pll的程序段?!酒篴rm嵌入式系統(tǒng)基礎(chǔ)教程習(xí)題答案周立功】/p>1、舉出3個(gè)書本中未提到的嵌入式系統(tǒng)的例子。答:紅綠燈控制,數(shù)字空調(diào),機(jī)頂盒2、什么叫嵌入式系統(tǒng)嵌入式系統(tǒng):以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。3、什么叫嵌入式處理器?嵌入式處理器分為哪幾類?嵌入式處理器是為完成特殊的應(yīng)用而設(shè)計(jì)的特殊目的的處理器。嵌入式微處理

16、器(embeddedmicroprocessorunit,empu)嵌入式微控制器(microcontrollerunit,mcu)嵌入式dsp處理器(embeddeddigitalsignalprocessor,edsp)嵌入式片上系統(tǒng)(systemonchip)4、什么是嵌入式操作系統(tǒng)?為何要使用嵌入式操作系統(tǒng)?是一段在嵌入式系統(tǒng)啟動后首先執(zhí)行的背景程序,首先,嵌入式實(shí)時(shí)操作系統(tǒng)提高了系統(tǒng)的可靠性。其次,提高了開發(fā)效率,縮短了開發(fā)周期。再次,嵌入式實(shí)時(shí)操作系統(tǒng)充分發(fā)揮了32位cpu的多任務(wù)潛力。第二章1、嵌入式系統(tǒng)項(xiàng)目開發(fā)的生命周期分哪幾個(gè)階段?各自的具體任務(wù)是什么?項(xiàng)目的生命周期一般分為

17、識別需求、提出解決方案、執(zhí)行項(xiàng)目和結(jié)束項(xiàng)目4個(gè)階段。識別需求階段的主要任務(wù)是確認(rèn)需求,分析投資收益比,研究項(xiàng)目的可行性,分析廠商所應(yīng)具備的條件。提出解決方案階段由各廠商向客戶提交標(biāo)書、介紹解決方案。執(zhí)行項(xiàng)目階段細(xì)化目標(biāo),制定工作計(jì)劃,協(xié)調(diào)人力和其他資源;定期監(jiān)控進(jìn)展,分析項(xiàng)目偏差,采取必要措施以實(shí)現(xiàn)目標(biāo)。結(jié)束項(xiàng)目階段主要包括移交工作成果,幫助客戶實(shí)現(xiàn)商務(wù)目標(biāo);系統(tǒng)交接給維護(hù)人員;結(jié)清各種款項(xiàng)。2、為何要進(jìn)行風(fēng)險(xiǎn)分析?嵌入式項(xiàng)目主要有哪些方面的風(fēng)險(xiǎn)?在一個(gè)項(xiàng)目中,有許多的因素會影響到項(xiàng)目進(jìn)行,因此在項(xiàng)目進(jìn)行的初期,在客戶和開發(fā)團(tuán)隊(duì)都還未投入大量資源之前,風(fēng)險(xiǎn)的評估可以用來預(yù)估項(xiàng)目進(jìn)行可能會譜遇的

18、難題。需求風(fēng)險(xiǎn);時(shí)間風(fēng)險(xiǎn);資金風(fēng)險(xiǎn);項(xiàng)目管理風(fēng)險(xiǎn)3、何謂系統(tǒng)規(guī)范?制定系統(tǒng)規(guī)范的目的是什么?規(guī)格制定階段的目的在于將客戶的需求,由模糊的描述,轉(zhuǎn)換成有意義的量化數(shù)據(jù)。4、何謂系統(tǒng)規(guī)劃?為何要做系統(tǒng)規(guī)劃系統(tǒng)規(guī)劃就是擬定一個(gè)開發(fā)進(jìn)程,使項(xiàng)目在合理的進(jìn)程范圍中逐漸建構(gòu)完成。其目地是讓客戶可以進(jìn)一步地掌握系統(tǒng)開發(fā)的進(jìn)程,并確定檢查點(diǎn),以讓雙方確定項(xiàng)目是否如預(yù)期中的進(jìn)度完成。5、為什么在項(xiàng)目結(jié)束前需要進(jìn)行項(xiàng)目討論?項(xiàng)目的討論一個(gè)項(xiàng)目進(jìn)行的反饋機(jī)制。通過這一個(gè)程序,項(xiàng)目團(tuán)隊(duì)的經(jīng)驗(yàn)才可以被記錄下來,也就是說,這是一個(gè)撰寫項(xiàng)目歷史的過程。第三章1、arm7tdmi中的t、d、m、i的含義是什么?64位乘法指令

19、(帶m后綴的)、支持片上調(diào)試(帶d后綴的)、高密度16位的thumb指令機(jī)擴(kuò)展(帶t后綴的)和embededice觀察點(diǎn)硬件(帶i后綴的)2、arm7tdmi采用幾級流水線?使用何種存儲器編址方式?3、arm處理器模式和arm處理器狀態(tài)有何區(qū)另U?處理器模式指的是處理器在執(zhí)行程序時(shí)在不同時(shí)刻所處的不同狀態(tài),處理器狀態(tài)指的是處理器當(dāng)前所執(zhí)行的指令集。4、分別列舉arm的處理器模式和狀態(tài)。狀態(tài):arm狀態(tài)32位,這種狀態(tài)下執(zhí)行的是字方式的arm指令thumb狀態(tài)16位,這種狀態(tài)下執(zhí)行半字方式的thumb指令模式:用戶模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統(tǒng)模式。5、pc和l

20、r分別使用哪個(gè)寄存器?pc使用r15寄存器,lr使用r14寄存器6、r13寄存器的通用功能是什么?堆棧第四章1、基礎(chǔ)知識(1) arm7tdmi(-s)有幾種尋址方式?lorr1,r0,#0x08屬于哪種尋址方式?1. 寄存器尋址;2.立即尋址;3.寄存器移位尋址;4.寄存器間接尋址;5.基址尋址;6.多寄存器尋址;7.堆棧尋址;8.塊拷貝尋址;9.相對尋址;lorr1,r0,#0x08屬于基址尋址。(2) arm指令的條件碼有多少個(gè)?默認(rèn)條件碼是什么?16條,默認(rèn)條件碼是al。(3) arm指令中第二個(gè)操作數(shù)有哪幾種形式?舉例5個(gè)8位圖立即數(shù)。立即數(shù);(2)寄存器;(3)寄存器及移位常數(shù);0

21、x3fc(0xff2)、0、0xf0000000(0xf024)、200(0xc8)、0xf0000001(0x1f28)。(4) ldr/str指令的偏移形式有哪4種?ldrb和ldrsb有何區(qū)另U?(1)零偏移;(2)前索引偏移;(3)程序相對偏移;(4)后索引偏移。ldrb就是讀出指定地址的數(shù)據(jù)并存入指定寄存器,ldrsb讀出指定地址的數(shù)據(jù),并高24位用符號位擴(kuò)展,再存入指定寄存器。(5) 請指出mov指令與ldr加載指令的區(qū)別及用途。mov將8位圖(pattern)立即數(shù)或寄存器(operand2)傳送到目標(biāo)寄存器(rd),可用于移位運(yùn)算等操作。讀取指定地址上的存儲器單元內(nèi)容,執(zhí)行條件

22、al.(6) cmp指令的操作是什么?寫一個(gè)程序,判斷r1的值是否大于0x30,是則將r1減去0x30。cmp指令將寄存器rn的值減去operand2的值,根據(jù)操作的結(jié)果更新cpsr中的相應(yīng)條件標(biāo)志位,以便后面的指令根據(jù)相應(yīng)的條件標(biāo)志來判斷是否執(zhí)行。cmpr1,0x30subhir1,r1,0x30(7) 調(diào)用子程序是用b還是用bl指令?請寫出返回子程序的指令?bl指令用于子程序調(diào)用。movpc,r14(8) 請指出ldr偽指令的用法。指令格式與ldr加載指令的區(qū)別是什么?ldr偽指令用于加載32位的立即數(shù)或一個(gè)地址值到指定寄存器。第二個(gè)數(shù)為地址表達(dá)式。(9) arm狀態(tài)與thumb狀態(tài)的切換

23、指令是什么?請舉例說明。bx指令,(10) thumb狀態(tài)與arm狀態(tài)的寄存器有區(qū)另U嗎?thumb指令對哪些寄存器的訪問受到一定限制?thumb狀態(tài)下不能更新cpsr中的alu狀態(tài)標(biāo)志。,thumb指令對r8r15寄存器訪問受限。(11) thumb指令集的堆棧入棧、出棧指令是哪兩條?pushpop2有符號和無符號加法下面給出a和b的值,您可先手動計(jì)算a+b,并預(yù)測n、z、v和c標(biāo)志位的值。然后修改程序清單4.1中r0、r1的值,將這兩個(gè)值裝載到這兩個(gè)寄存器中(使用ldr偽指令,如ldrr0,=0xffff0000),使其執(zhí)行兩個(gè)寄存器的加法操作。調(diào)試程序,每執(zhí)行一次加法操作就將標(biāo)志位的狀態(tài)

24、記錄下來,并將所得結(jié)果與您預(yù)先計(jì)算得出的結(jié)果相比較。如果兩個(gè)操作數(shù)看作是有符號數(shù),如何解釋所得標(biāo)志位的狀態(tài)?同樣,如果這兩個(gè)操作數(shù)看作是無符數(shù),所得標(biāo)志位又當(dāng)如何理解?0xffff000f0x7fffffff67654321(a)+0x0000fff1+0x02345678+23110000(b)結(jié)果:()()()3數(shù)據(jù)訪問把下面的c代碼轉(zhuǎn)換成匯編代碼。數(shù)組a和b分別存放在以0x4000和0x5000為起始地址的存儲區(qū)內(nèi),類型為long(即32位)把編寫的匯編語言進(jìn)行編譯連接,并進(jìn)行調(diào)試。for(i=0;i8;i+)ai=b7-i;第五章1、基礎(chǔ)知識:lpc2114可使用的外部晶振頻率范圍是多

25、少(使用/不使用pll功能時(shí))?晶振頻率范圍:130mhz,若使用pll或isp功能為:1025mhz。描述一下lpc2210的po.14、p1.20、p1.26、boot1和boot0引腳在芯片復(fù)位時(shí)分別有什么作用?并簡單說明lpc2000系列arm7微控制器的復(fù)位處理流程。p0.14的低電平強(qiáng)制片內(nèi)引導(dǎo)裝載程序復(fù)位后控制器件的操作,即進(jìn)入isp狀態(tài)。p1.20的低電平使p1.25p1.16復(fù)位后用作跟蹤端口。p1.26的低電平使p1.31p1.26復(fù)位后用作一個(gè)調(diào)試端口。當(dāng)reset為低時(shí),boot0與boot1一同控制引導(dǎo)和內(nèi)部操作。引腳的內(nèi)部上拉確保了引腳未連接時(shí)呈現(xiàn)高電平。外部復(fù)位輸

26、入:當(dāng)該引腳為低電平時(shí),器件復(fù)位,i/o口和外圍功能進(jìn)入默認(rèn)狀態(tài),處理器從地址0開始執(zhí)行程序。復(fù)位信號是具有遲滯作用的ttl電平。(1) lpc2000系列arm7微控制器對向量表有何要求(向量表中的保留字)?向量表所有數(shù)據(jù)32位累加和為零(0x000000000x0000001c的8個(gè)字的機(jī)器碼累加),才能脫機(jī)運(yùn)行用戶程序,這是lpc2114/2124/2212/2214的特性。(2) 如何啟動lpc2000系列arm7微控制器的isp功能?相關(guān)電路應(yīng)該如何設(shè)計(jì)?(3) lpc2000系列arm7微控制器片內(nèi)flash是多位寬度的接口?它是通過哪個(gè)功能模塊來提高flash的訪問速度?128位

27、,通過存儲器加速模塊(mam)來提高flash的訪問速度(4) 若lpc2210的bank0存儲塊使用32位總線,訪問bank0時(shí),地址線a1、a0是否有效?emc模塊中的blsobls4具有什么功能?無效,(如果存儲器組配置成16位寬,則不需要a0;8位寬的存儲器組需要使用a0。);字節(jié)定位選擇信號。(5) lpc2000系列arm7微控制器具有引腳功能復(fù)用特性,那么如何設(shè)置某個(gè)引腳為指定功能?通過引腳功能選擇寄存器的設(shè)定來設(shè)置某個(gè)引腳為指定功能(6) 設(shè)置引腳為gpio功能時(shí),如何控制某個(gè)引腳單獨(dú)輸入/輸出?當(dāng)前要知道某個(gè)引腳當(dāng)前的輸出狀態(tài)時(shí),是讀取iopin寄存器還是讀取ioset寄存器

28、?gpio方向寄存器,iopin。(7) p0.2和p0.3口是i2c接口,當(dāng)設(shè)置它們?yōu)間pio時(shí),是否需要外接上拉電阻才能輸出高電平?(8) 使用spi主模式時(shí),ssel引腳是否可以作為gpio?若不能,ssel引腳應(yīng)如何處理?不能用彳gpio,ssel應(yīng)設(shè)這高電平,處于末激活狀態(tài)。(9) lpc2114具有幾個(gè)uart是符合什么標(biāo)準(zhǔn)?哪一個(gè)uart可用作isp通信?哪一個(gè)uart具有modem接口?uart0,uart1;uart0用于isp通信,uart1具有modem接口。(10) lpc2114具有幾個(gè)32位定時(shí)器?pwm定時(shí)器是否可以作通用定時(shí)器使用?兩個(gè)32位定時(shí)器,pwm定時(shí)器

29、不能用作通用定時(shí)器使用lpc2000系列arm7微控制器具有哪兩種低耗模式?如何降低系統(tǒng)的功耗?2個(gè)低功耗模式:空閑和掉電;2、計(jì)算pll設(shè)置值:假設(shè)有一個(gè)基于lpc2114的系統(tǒng),所使用的晶振為11.0592mhz石英晶振。請計(jì)算出最大的系統(tǒng)時(shí)鐘(ccls)頻率為多少mhz?此時(shí)pll的m值和p值各為多少?請列出計(jì)算公式,并編寫設(shè)置pll的程序段。3、存儲器重影射:(1) lpc2210具有(4)種存影射模式。3514(2) 當(dāng)程序已固化到片內(nèi)flash,向量表保存在0x00000000起始處,貝Umap1:0的值應(yīng)該為(2)。00011011(3) lpc2000系列apm7微控制器ccq

30、重影射的目標(biāo)起始地址為(),共有()個(gè)字。0x00000000,80x40000000,80x00000000,160x7fffe000,84、外部中斷喚醒掉電設(shè)計(jì):以下代碼是初始化外部中斷0,用它來喚醒掉電的lpc2114,請?zhí)羁?。pinsel0=0x00000000;pinseli=(pinsel10xfffffffc)|0x01;/設(shè)置i/o連接,po.16設(shè)置為eintoextmode=0x00;/設(shè)置eint0為電平觸發(fā)模式extpolar=0x00;/設(shè)置eint0為低電平觸發(fā)extwake=0x01;允許外部中斷0喚醒掉電的cpuextint=0x0f;清除外部中斷標(biāo)識第四章程序

31、清單4.1寄存器相加;文件名:testi.s;功能:實(shí)現(xiàn)兩個(gè)寄存器相加【篇三:周立功,arm嵌入式系統(tǒng)基礎(chǔ)教程課后習(xí)題答案】舉出3個(gè)書本中未提到的嵌入式系統(tǒng)的例子。答:紅綠燈控制,數(shù)字空調(diào),機(jī)頂盒2、什么叫嵌入式系統(tǒng)嵌入式系統(tǒng):以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。3、什么叫嵌入式處理器?嵌入式處理器分為哪幾類?嵌入式處理器是為完成特殊的應(yīng)用而設(shè)計(jì)的特殊目的的處理器。嵌入式微處理器(embeddedmicroprocessorunit,empu)嵌入式微控制器(microcontrollerunit,mcu)嵌入

32、式dsp處理器(embeddeddigitalsignalprocessor,edsp)嵌入式片上系統(tǒng)(systemonchip)4、什么是嵌入式操作系統(tǒng)?為何要使用嵌入式操作系統(tǒng)?是一段在嵌入式系統(tǒng)啟動后首先執(zhí)行的背景程序,首先,嵌入式實(shí)時(shí)操作系統(tǒng)提高了系統(tǒng)的可靠性。其次,提高了開發(fā)效率,縮短了開發(fā)周期。再次,嵌入式實(shí)時(shí)操作系統(tǒng)充分發(fā)揮了32位cpu的多任務(wù)潛力。第二章1、嵌入式系統(tǒng)項(xiàng)目開發(fā)的生命周期分哪幾個(gè)階段?各自的具體任務(wù)是什么?項(xiàng)目的生命周期一般分為識別需求、提出解決方案、執(zhí)行項(xiàng)目和結(jié)束項(xiàng)目4個(gè)階段。識別需求階段的主要任務(wù)是確認(rèn)需求,分析投資收益比,研究項(xiàng)目的可行性,分析廠商所應(yīng)具備

33、的條件。提出解決方案階段由各廠商向客戶提交標(biāo)書、介紹解決方案。執(zhí)行項(xiàng)目階段細(xì)化目標(biāo),制定工作計(jì)劃,協(xié)調(diào)人力和其他資源;定期監(jiān)控進(jìn)展,分析項(xiàng)目偏差,采取必要措施以實(shí)現(xiàn)目標(biāo)。結(jié)束項(xiàng)目階段主要包括移交工作成果,幫助客戶實(shí)現(xiàn)商務(wù)目標(biāo);系統(tǒng)交接給維護(hù)人員;結(jié)清各種款項(xiàng)。2、為何要進(jìn)行風(fēng)險(xiǎn)分析?嵌入式項(xiàng)目主要有哪些方面的風(fēng)險(xiǎn)?在一個(gè)項(xiàng)目中,有許多的因素會影響到項(xiàng)目進(jìn)行,因此在項(xiàng)目進(jìn)行的初期,在客戶和開發(fā)團(tuán)隊(duì)都還未投入大量資源之前,風(fēng)險(xiǎn)的評估可以用來預(yù)估項(xiàng)目進(jìn)行可能會譜遇的難題。需求風(fēng)險(xiǎn);時(shí)間風(fēng)險(xiǎn);資金風(fēng)險(xiǎn);項(xiàng)目管理風(fēng)險(xiǎn)3、何謂系統(tǒng)規(guī)范?制定系統(tǒng)規(guī)范的目的是什么?規(guī)格制定階段的目的在于將客戶的需求,由模糊的

34、描述,轉(zhuǎn)換成有意義的量化數(shù)據(jù)。4、何謂系統(tǒng)規(guī)劃?為何要做系統(tǒng)規(guī)劃系統(tǒng)規(guī)劃就是擬定一個(gè)開發(fā)進(jìn)程,使項(xiàng)目在合理的進(jìn)程范圍中逐漸建構(gòu)完成。其目地是讓客戶可以進(jìn)一步地掌握系統(tǒng)開發(fā)的進(jìn)程,并確定檢查點(diǎn),以讓雙方確定項(xiàng)目是否如預(yù)期中的進(jìn)度完成。5、為什么在項(xiàng)目結(jié)束前需要進(jìn)行項(xiàng)目討論?項(xiàng)目的討論一個(gè)項(xiàng)目進(jìn)行的反饋機(jī)制。通過這一個(gè)程序,項(xiàng)目團(tuán)隊(duì)的經(jīng)驗(yàn)才可以被記錄下來,也就是說,這是一個(gè)撰寫項(xiàng)目歷史的過程。第三章1、arm7tdmi中的t、d、m、i的含義是什么?64位乘法指令(帶m后綴的)、支持片上調(diào)試(帶d后綴的)、高密度16位的thumb指令機(jī)擴(kuò)展(帶t后綴的)和embededice觀察點(diǎn)硬件(帶i后綴的

35、)2、arm7tdmi采用幾級流水線?使用何種存儲器編址方式?3、arm處理器模式和arm處理器狀態(tài)有何區(qū)另U?處理器模式指的是處理器在執(zhí)行程序時(shí)在不同時(shí)刻所處的不同狀態(tài),處理器狀態(tài)指的是處理器當(dāng)前所執(zhí)行的指令集。4、分別列舉arm的處理器模式和狀態(tài)。狀態(tài):arm狀態(tài)32位,這種狀態(tài)下執(zhí)行的是字方式的arm指令模式:用戶模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統(tǒng)模式。5、pc和lr分別使用哪個(gè)寄存器?pc使用r15寄存器,lr使用r14寄存器6、r13寄存器的通用功能是什么?堆棧第四章1、基礎(chǔ)知識(1) arm7tdmi(-s)有幾種尋址方式?lorr1,r0,#0x08

36、屬于哪種尋址方式?1.寄存器尋址;2.立即尋址;3.寄存器移位尋址;4.寄存器間接尋址;5.基址尋址;6.多寄存器尋址;7.堆棧尋址;8.塊拷貝尋址;9.相對尋址;lorr1,r0,#0x08屬于基址尋址。(2) arm指令的條件碼有多少個(gè)?默認(rèn)條件碼是什么?16條,默認(rèn)條件碼是al。(3) arm指令中第二個(gè)操作數(shù)有哪幾種形式?舉例5個(gè)8位圖立即數(shù)。(1)立即數(shù);(2)寄存器;(3)寄存器及移位常數(shù);0x3fc(0xff2)、0、0xf0000000(0xf024)、200(0xc8)、0xf0000001(0x1f28)。(4) ldr/str指令的偏移形式有哪4種?ldrb和ldrsb有

37、何區(qū)另U?(1)零偏移;(2)前索引偏移;(3)程序相對偏移;(4)后索引偏移。ldrb就是讀出指定地址的數(shù)據(jù)并存入指定寄存器,ldrsb讀出指定地址的數(shù)據(jù),并高24位用符號位擴(kuò)展,再存入指定寄存器。(5) 請指出mov指令與ldr加載指令的區(qū)別及用途。mov將8位圖(pattern)立即數(shù)或寄存器(operand2)傳送到目標(biāo)寄存器(rd),可用于移位運(yùn)算等操作。讀取指定地址上的存儲器單元內(nèi)容,執(zhí)行條件al.cmp指令的操作是什么?寫一個(gè)程序,判斷r1的值是否大于0x30,是則將r1減去0x30。cmp指令將寄存器rn的值減去operand2的值,根據(jù)操作的結(jié)果更新cpsr中的相應(yīng)條件標(biāo)志位

38、,以便后面的指令根據(jù)相應(yīng)的條件標(biāo)志來判斷是否執(zhí)行。cmpr1,0x30subhir1,r1,0x30(6) 調(diào)用子程序是用b還是用bl指令?請寫出返回子程序的指令?bl指令用于子程序調(diào)用。movpc,r14(7) 請指出ldr偽指令的用法。指令格式與ldr加載指令的區(qū)別是什么?ldr偽指令用于加載32位的立即數(shù)或一個(gè)地址值到指定寄存器。第二個(gè)數(shù)為地址表達(dá)式。(8) arm狀態(tài)與thumb狀態(tài)的切換指令是什么?請舉例說明。bx指令,(9) thumb狀態(tài)與arm狀態(tài)的寄存器有區(qū)另U嗎?thumb指令對哪些寄存器的訪問受到一定限制?thumb狀態(tài)下不能更新cpsr中的alu狀態(tài)標(biāo)志。,thumb指

39、令對r8r15寄存器訪問受限。(10) thumb指令集的堆棧入棧、出棧指令是哪兩條?pushpop2有符號和無符號加法下面給出a和b的值,您可先手動計(jì)算a+b,并預(yù)測n、z、v和c標(biāo)志位的值。然后修改程序清單4.1中r0、r1的值,將這兩個(gè)值裝載到這兩個(gè)寄存器中(使用ldr偽指令,如ldrr0,=0xffff0000),使其執(zhí)行兩個(gè)寄存器的加法操作。調(diào)試程序,每執(zhí)行一次加法操作就將標(biāo)志位的狀態(tài)記錄下來,并將所得結(jié)果與您預(yù)先計(jì)算得出的結(jié)果相比較。如果兩個(gè)操作數(shù)看作是有符號數(shù),如何解釋所得標(biāo)志位的狀態(tài)?同樣,如果這兩個(gè)操作數(shù)看作是無符數(shù),所得標(biāo)志位又當(dāng)如何理解?0xffff000f0x7ffff

40、fff67654321(a)+0x0000fff1+0x02345678+23110000(b)結(jié)果:()()()3數(shù)據(jù)訪問把下面的c代碼轉(zhuǎn)換成匯編代碼。數(shù)組a和b分別存放在以0x4000和0x5000為起始地址的存儲區(qū)內(nèi),類型為long(即32位)把編寫的匯編語言進(jìn)行編譯連接,并進(jìn)行調(diào)試。for(i=0;i8;i+)ai=b7-i;第五章1、基礎(chǔ)知識:(1) lpc2114可使用的外部晶振頻率范圍是多少(使用/不使用pll功能時(shí))?晶振頻率范圍:130mhz,若使用pll或isp功能為:1025mhz。描述一下lpc2210的po.14、p1.20、p1.26、boot1和boot0引腳在芯片復(fù)位時(shí)分別有什么作用?并簡單說明lpc2000系列arm7微控制器的

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論