版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、嵌入式系統(tǒng)復(fù)習(xí)題集 、基礎(chǔ)知識(shí)1、什么是代碼的臨界區(qū)?答:代碼的監(jiān)界區(qū)是指處理時(shí)不可分割的代碼,運(yùn)行這些代碼不允許被打斷。一旦這部分代 碼開(kāi)始執(zhí)行,則不允許任何中斷打入。中斷不調(diào)用任何臨界區(qū)的代碼或不訪問(wèn)任何臨界區(qū)使 用的共享資源時(shí),這個(gè)中斷是可能可以執(zhí)行。為確保臨界區(qū)代碼的執(zhí)行,在進(jìn)入臨界區(qū)之前 要關(guān)中斷,而臨界區(qū)代碼執(zhí)行完成以后要立即開(kāi)中斷。2、什么是嵌入式系統(tǒng)?答:嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì) 功能、可靠性、成本、體積及功耗嚴(yán)格要求的專(zhuān)用計(jì)算機(jī)系統(tǒng),具有完成復(fù)雜功能的硬件和 軟件且緊密耦合在一起的計(jì)算機(jī)系統(tǒng)。3、什么是嵌入式操作系統(tǒng)?為何要
2、使用嵌入式操作系統(tǒng)?答:運(yùn)用在嵌入式系統(tǒng)上的實(shí)時(shí)操作系統(tǒng),具有事件驅(qū)動(dòng)和任務(wù)(進(jìn)程)調(diào)度功能,且在有 限時(shí)隙內(nèi)能完成事件的響應(yīng)和任務(wù)(進(jìn)程)的切換,能可靠、實(shí)時(shí)、靈活地管理嵌入式系統(tǒng) 上的各種資源和任務(wù)。使用嵌入式操作系統(tǒng),能方便實(shí)時(shí)應(yīng)用軟件的開(kāi)發(fā)和有機(jī)地整合,能 有效地管理和協(xié)調(diào)各項(xiàng)工作,因此是開(kāi)發(fā)和運(yùn)行非常重要的環(huán)境。4、ARM狀態(tài)與Thumb狀態(tài)的互換以什么條件來(lái)判斷?似舉出狀態(tài)從ARM到Thumb或從Thumb至ij ARM切換的例子。答:其互換條件是執(zhí)行 BXregisters指令時(shí),判斷registers的最低一位bo是否為0或?yàn)? 來(lái)確定的,當(dāng)bo為0時(shí),則執(zhí)行的程序是 ARM狀
3、態(tài)的32位指令程序,當(dāng)bo為1時(shí),則執(zhí)行 的程序是Thumb狀態(tài)的16位指令程序。如下例:;從ARM狀態(tài)轉(zhuǎn)變?yōu)?Thumb狀態(tài)LDR R0, Lable+1BX R0;從Thumb狀態(tài)轉(zhuǎn)變?yōu)锳RM狀態(tài)LDR R0, LableBX R0ARM體系結(jié)構(gòu)支持多少種處理器模式,分別是什么?答:ARM體系結(jié)本支持7種處理器模式,分別是用戶(hù)模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統(tǒng)模式。6、子程序利用R14 (LR),獲得返回到主程序的下條指令,通常有直接輸入法和堆棧方法, 試填寫(xiě)下面兩種方法的代碼: TOC o 1-5 h z MOV PC,LRSTMFD SR , regist
4、ers, LRLDMFD SP!, registers,PC如果是異常處理后的返回,如IRQ中斷返回又如何改寫(xiě)代碼?7、在修復(fù)產(chǎn)生數(shù)據(jù)中止的原因后,不管處于哪種處理器操作狀態(tài),處理程序都必須執(zhí)行返 回指令:SUBS PC R14_abt,#8 ;而預(yù)取中止時(shí)為:SUBS PC R14_abt,#4試解釋減8原因?而在預(yù)取中止中為什么減4 ?答:由于ARM為三級(jí)流水,執(zhí)行段相對(duì)取指令段差為 8,產(chǎn)生數(shù)據(jù)中止是在執(zhí)行段結(jié)束點(diǎn)進(jìn)入, 此日PC值為數(shù)據(jù)中止指令地址 +8,即保存當(dāng)前 PC到R14_abt為數(shù)據(jù)中止指令地址+8,因此 在修復(fù)產(chǎn)生數(shù)據(jù)中止的原因后,返回地址應(yīng)為數(shù)據(jù)中止指令地址本身,處理程序
5、都必須執(zhí)行返回指令:SUBS PC R14_abt,#8才能實(shí)現(xiàn)其目的。而在預(yù)取中止中時(shí),出現(xiàn)中止異常是在譯碼段進(jìn)入執(zhí)行段的開(kāi)始點(diǎn),此時(shí)保存到 R14_abt 值為預(yù)取中止指令地址 +4 ,因此要恢復(fù)到中止指令地址必為當(dāng)前保存的R14_abt值減4,即執(zhí)行SUBS PC R14_abt,#樨作就可。什么是小端存儲(chǔ)?什么是大端存儲(chǔ)?答: 小端存儲(chǔ)就是其存儲(chǔ)格式為保存的字最低地址的字節(jié)看作是最低位字節(jié), 最高地址字節(jié)被看作是最高位字節(jié)。因此,存儲(chǔ)器系統(tǒng)字節(jié)0 連接到數(shù)據(jù)線(xiàn)7-0。大端存儲(chǔ)就是其存儲(chǔ)格式為將最高位字節(jié)保存在最低地址字節(jié),最低位字節(jié)保存在最高地址字節(jié)。因此存儲(chǔ)器系統(tǒng)字節(jié)0 連接到數(shù)據(jù)線(xiàn)
6、31-24 。ARM7TDMI 中 T、 D、 M 、 I 的含義是什么?答:T表示具有高密度16位白Thumb指令機(jī)擴(kuò)展功能;D表示具有支持片上調(diào)試功能;M表示具有64位乘法指令;I表示增加了 EmbededICE觀察點(diǎn)硬件。ARM7TDMI 采用幾級(jí)流水線(xiàn)?使用何種存儲(chǔ)器編址方式?答: ARM7TDMI 采用三級(jí)流水段,分別為取指段、譯碼段和執(zhí)行段。使用字節(jié)編址方式。ARM處理器模式和 ARM處理器狀態(tài)有何區(qū)別?答: ARM 處理器模式是指用戶(hù)模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統(tǒng)模式。每種模式都表明一種程序使用內(nèi)部寄存器和一些片內(nèi)外的硬件設(shè)備權(quán)利。而 ARM 處
7、理器狀態(tài)是指Thumb 狀態(tài)和 ARM 狀態(tài), 即程序指令的執(zhí)行譯碼按 16 位 Thumb 指令集還是按32 位 ARM 指令集譯碼執(zhí)行。分別列舉 ARM 的處理器模式和狀態(tài)。答: ARM 處理器模式分別是用戶(hù)模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式和系統(tǒng)模式。 ARM 處理器狀態(tài)是指16 位 Thumb 指令集運(yùn)行的 Thumb 狀態(tài)和 32 位 ARM指令集運(yùn)行的 ARM 狀態(tài)。PC 和 LR 分別使用哪個(gè)寄存器?答:PC使用R15; LR使用R14。14、R13寄存器的通用功能是什么?答: R13 寄存器在 ARM 狀態(tài)時(shí), 可用作通用寄存器功能, 但通常為堆棧指針S
8、P, 但在 Thumb狀態(tài)時(shí),其壓棧 PUSH和彈棧POP指令都要用到 R13 (SP)O15、CPSRt存器中哪些位用來(lái)定義處理器狀態(tài)?答:在CPSRt存器中b5位T定義處理器狀態(tài),T=0為ARM狀態(tài),T=1為T(mén)humb狀態(tài)。ARM 和 Thumb 指令的邊界對(duì)齊有何不同?答: ARM 指令長(zhǎng)度為 32 位,其邊界對(duì)齊存取地址位都是按b1:0=00 方式進(jìn)行,而Thumb指令長(zhǎng)度為 16 位,其邊界對(duì)齊存取地址位都是按b0=0 方式進(jìn)行。描述一下如何禁止IRQ和FIQ的中斷?答:對(duì)CPSR中白b7 (I位)和b6 (F位)標(biāo)志位置位時(shí),可分別來(lái)禁止 IRQ和FIQ中斷。定義R0=0 x123
9、45678,假設(shè)使用存儲(chǔ)指令將R0的值存放在0 x4000單元中。如果存儲(chǔ)器格式為大端格式,請(qǐng)寫(xiě)出在執(zhí)行加載指令將存儲(chǔ)器0 x4000 單元的內(nèi)容取出存放到 R2寄存器操作后得R2 的值;如果存儲(chǔ)器格式改為小端格式,所得的 R2 值又為多少?低地址 0 x4000 單元的字節(jié)內(nèi)容分別是多少?答:按大端格式和小端格式存儲(chǔ),從存儲(chǔ)器中讀出的值是不變的,R2=0 x12345678o按大端格式從 0 x4000 單元讀出的值為 0 x12, 按小端格式從0 x4000 單元讀出的值為0 x78 。請(qǐng)描述進(jìn)入內(nèi)核時(shí)異常操作步驟?答:在LR 中保存下一條指令的地址;2)將CPS或制到適當(dāng)?shù)?SPSR3)
10、根據(jù)異常將CPSR莫式強(qiáng)制設(shè)為某一值;4)強(qiáng)制PC從相關(guān)的異常處取指。異常結(jié)束時(shí),異常處理程序必須將LR 中的值減去偏移量后移入PC。6)將SPSR勺值復(fù)制回CPSR清零在入口置位的中斷禁止標(biāo)志。請(qǐng)描述一下ARM7TDMI 產(chǎn)生異常的條件分別是什么?各種異常會(huì)使處理器進(jìn)入哪種模式?進(jìn)入異常時(shí)內(nèi)核有何操作?各種異常的返回指令又是什么?模式 快中斷模式 中斷模式 中止模式中止模式 未定義指令模式管理模式返回指令SUBS PC,R14_fiq,#4SUBS PC, R14_irq,#4SUBS PC, R14_abt,#4SUBS PC, R14_abt,#8MOVS PC, R14_undMOVS
11、 PC, R14_svc答: ARM7TDMI 產(chǎn)生異常:異常條件快速中斷請(qǐng)求中斷請(qǐng)求預(yù)取中止請(qǐng)求數(shù)據(jù)中止請(qǐng)求未定義指令中斷請(qǐng)求軟件中斷請(qǐng)求進(jìn)入內(nèi)核時(shí)異常操作是:1 ) 將 LR 中保存下一條指令的地址;2)將CPS限制到適當(dāng)?shù)?SPSR3)根據(jù)異常將CPSR莫式強(qiáng)制設(shè)為某一值;4)強(qiáng)制PC從相關(guān)的異常處取指。5 ) 異常結(jié)束時(shí),異常處理程序必須將LR 中的值減去偏移量后移入PC。6)將SPSR勺值復(fù)制回CPSR 7 ) 清零在入口置位的中斷禁止標(biāo)志。簡(jiǎn)單描述一下ARM7 的三級(jí)流水線(xiàn),并說(shuō)明其對(duì)程序設(shè)計(jì)的影響。答: ARM7 的三級(jí)流水分為取指段、分析段和執(zhí)行段。對(duì)程序設(shè)計(jì)的影響:提高指令執(zhí)
12、行的速度,并使處理和存儲(chǔ)系統(tǒng)連續(xù)操作。ARMThumbPCPC取指PC-4PC-2譯碼PC-8PC-4執(zhí)行由此看出,它對(duì)子程序調(diào)用返回、異?;謴?fù)返回, LR 值需減一個(gè)常數(shù)值作為返回地址。ARM7TDMI(-S)有幾種尋址方式?LDR R1, R0, #0 x08屬于哪種尋址方式?答:有 9 種,分別是:寄存器尋址、立即尋址、寄存器移位尋址、寄存器間接尋址、基址尋址、多寄存器尋址、堆棧尋址、塊拷貝尋址、相對(duì)尋址。其中:LDR R1, R0, #0 x08屬于基址尋址。ARM 指令的條件碼有多少個(gè)?默認(rèn)條件碼是什么?答: ARM 指令的條件碼有16 個(gè),默認(rèn)條件碼是: AL 編碼為 1110 即
13、無(wú)條件執(zhí)行。ARM 指令中第二個(gè)操作數(shù)有哪幾種形式?列舉5 個(gè) 8 位圖立即數(shù)。答: ARM 指令中第2 個(gè)操作數(shù)有3 種形式:#immed_8r 常數(shù)表達(dá)式;Rm寄存器方式;Rm,shift 寄存器移位方式。例如:0 x3FC、 0、 0 xF0000000、 200、 0 xF0000001。將ARM指令中,使用第2個(gè)操作數(shù)時(shí),第2操作數(shù)的形式可為常數(shù)表達(dá)式#immed_8r,這種常數(shù)的合理表達(dá)方式是什么?答:這種常數(shù)須對(duì)應(yīng) 8 位位圖數(shù)據(jù)的循環(huán)移位偶數(shù)位得到的任何 32 位數(shù)據(jù)。將ARM指令中,使用第2個(gè)操作數(shù)時(shí),第2操作數(shù)的形式可為常數(shù)表達(dá)式#immed_8r,請(qǐng)說(shuō)明下面常數(shù)哪些合理,
14、哪些非法?0 x3FC,0 x1F,0 x1FE,0,0 xF0000000,511,0 xFFFF,0 x1010,0 xF0000010,200,0 xF000000,1 0 x12800000 ,0 x4000003B, 0 x0016C000答: 合法常量:0 x3FC/0/0 xF0000000/200/0 xF0000001/0 x1F, 0 x12800000 , 0 x4000003B , 0 x0016C000;非法常量:0 x1FE/511/0 xFFFF0/x1010/0 xF0000010。將比較兩個(gè)值大小,并進(jìn)行相應(yīng)加1 處理, C 代碼為:if(ab) a+;els
15、e b+;寫(xiě)出對(duì)應(yīng)的ARM指令程序(其中設(shè) R0為a, R1為b) ?答: CMPR0, R1ADDHIR0, R0, #1;若 R0R1 則 R0=R0+1ADDLS R1, R1, #1;若 R0?R1,貝U R1=R1 + 1將 C 代碼:if(a!=10)&(b!=20) a=a+b 轉(zhuǎn)化為 ARM 指令程序?答: CMP R0, #10;比較 R0是否為10CMPNE R1, #20;若R0不為10,則比較 R1是否為20CMPNE R0, R0, R1 ;若 R0 不為 10 且 R1 不為 20,指令執(zhí)行, R0=R0+R1LDR/STR旨令的偏移形式有哪 4種? LDRB和LD
16、RSBf何區(qū)另答: LDR/STR 指令的偏移形式有:1)零偏移;2)前索引偏移;3)程序相對(duì)偏移;4)后索引偏移。LDRB僅為無(wú)符號(hào)字節(jié)數(shù)據(jù)裝載,其裝載后的高24位為0,而LDRSB為有符號(hào)字節(jié)數(shù)據(jù)裝載,高24 位為符號(hào)位的擴(kuò)展。請(qǐng)指出MOV指令與LDR加載指令的區(qū)別及用途。答: MOV 指令是數(shù)據(jù)處理過(guò)程中的操作,可以傳遞立即數(shù)和寄存器到另一個(gè)寄存器的操作,而LDR加載指令用于將存儲(chǔ)器單元數(shù)據(jù)裝載到寄存器的操作。CMP 指令的操作是什么?寫(xiě)一個(gè)程序, 判斷 R1 的值是否大于0 x30, 是則將 R1 減去0 x30。答:CMP指令操作是比較操作;判斷R1的值是否大于0 x30,是則將R1
17、減去0 x30程序如下:CMP R1, #0 x30SUBGT R1,R1,#0 x30 OrCMP R1, #0 x30SUBHI R1,R1,#0 x30調(diào)用子程序是用 B還是用BL指令?請(qǐng)寫(xiě)出返回子程序的指令?答:調(diào)用子程序是用BL 指令。返回子程序的指令:BL lableMOV PC,LRLDR偽指令用途?其指令格式與LDR裝載指令的差別?答:LDR偽指令用于加載32位的立即數(shù)或一個(gè)地址值到指定寄存器,映射真正指令類(lèi)型由編譯程序決定;LDR偽指令指令格式為 LDR Rn,=expr LDR加載指令為L(zhǎng)DR Rn,地址值。ARM 狀態(tài)與 Thumb 狀態(tài)的切換指令是什么?請(qǐng)舉例說(shuō)明。答:
18、ARM狀態(tài)與Thumb狀態(tài)的切換指令是 BX Rm=例如:ARM_CODE ADR R0,THUMB_CODE+1BX R0CODE 16THUMB_CODE MOV R0,#10 MOV R1,#20 ADD R0,R1 B THUM_CODE ENDThumb狀態(tài)與ARM狀態(tài)的寄存器有區(qū)別嗎?Thumb指令對(duì)哪些寄存器訪問(wèn)受到一定限制?答:Thumb狀態(tài)與ARM狀態(tài)的寄存器本身并無(wú)區(qū)別,都是32位寄存器。但Thumb指令僅對(duì)R8-R15受到一定限。Thumb指令集的堆棧入棧、出棧指令是哪兩條?答:壓棧指令:PUSH reglist,LR;彈棧指令:POP reglist,PCThumb指令
19、集的BL指令轉(zhuǎn)移范圍為何能達(dá)到 ?4MB?其指令編碼是怎樣的?答:Thumb指令集的BL采用2條這樣的指令組合成 22位半字偏移(符號(hào)擴(kuò)展為32位),使指 令轉(zhuǎn)移范圍為?4MB。其指令編碼為:1111+H+offset11共16位。其中H為1位,offset11為 了 11 位。在中斷向量中轉(zhuǎn)移指令為什么沒(méi)有用B指令?而是用什么指令實(shí)現(xiàn)跳轉(zhuǎn)的?答:在中斷向量中車(chē)t移指令沒(méi)有用B指令是由于B指令轉(zhuǎn)移范圍僅在?32MB內(nèi),因此滿(mǎn)足不了中斷向量的全地址范圍內(nèi)的轉(zhuǎn)移。實(shí)際中斷向量中轉(zhuǎn)移指令是用LDR PC ,addr,和文字池(DCD偽指令)來(lái)實(shí)現(xiàn)的,它可以實(shí)現(xiàn)4GB范圍內(nèi)跳轉(zhuǎn)。LPC2114可使用的
20、外部晶振頻率范圍是多少(使用/不使用PLL功能時(shí))?描述一下LPC2210的P0.14、P1.20、P1.26、BOOT1和BOOT0弓I腳在芯片復(fù)位時(shí)分另有什么作用?并簡(jiǎn)單說(shuō)明LPC2000系列ARM7微控制器的復(fù)位處理流程。答:使用PLL功能時(shí),外部晶振頻率范圍為10-25MHZ;不使用PLL功能時(shí)為1-30MHZ。在復(fù)位時(shí),LPC2210的P0.14決定外部復(fù)位后是否進(jìn)入ISP狀態(tài),如為低電平則進(jìn)入 ISP狀態(tài)。P1.20決定復(fù)位后是否使用 P1.16-P1.25作為跟蹤端口進(jìn)行跟蹤同步。P1.26決定復(fù)位后是否使用 P1.31-P1.26作為調(diào)試端口。BOOT1和BOOT0引腳在芯片復(fù)
21、位時(shí)決定復(fù)位后存儲(chǔ)器的來(lái)源以及存儲(chǔ)器的寬度。LPC2000系歹U ARM7微控制器的復(fù)位處理流程: 流程略。LPC2000系列ARM7微控制器對(duì)向量表有何要求(向量表中的保留字)?答:LPC2000系歹U ARM7微控制器要求:在向量表中所有32位向量按有符合數(shù)據(jù)累加之和為0,這時(shí)向量表才有效,且芯片復(fù)位后,能脫機(jī)獨(dú)立運(yùn)行。因此向量表中的保留字是配置數(shù)據(jù) 累加和為0而留著的。如何啟動(dòng)LPC2000系列ARM7微控制器的ISP功能?相關(guān)電路應(yīng)該如何設(shè)計(jì)?答:微控制器在復(fù)位后可能有多種初始狀態(tài),決定于引腳狀態(tài)和只讀存儲(chǔ)器的數(shù)據(jù)。當(dāng)有外 部復(fù)位信號(hào)?Reset , P0.14低電平時(shí),進(jìn)入ISP狀態(tài)
22、,當(dāng)P0.14為高電平時(shí),同時(shí) BOOT0和 BOOT1為高電平時(shí),進(jìn)入 ISP狀態(tài)。LPC2000系歹U ARM7微控制器片內(nèi)Flash是多少位寬度的接口?它是通過(guò)哪個(gè)功能模塊來(lái)提高 Flash 的訪問(wèn)速度?答:LPC2000系列ARM7微控制器片內(nèi)Flash是128位寬度的接口,是通過(guò)數(shù)據(jù)緩沖模塊、預(yù) 取緩沖模塊、分支跟蹤緩存模塊、兩Flash存儲(chǔ)模塊來(lái)提高 Flash的訪問(wèn)速度。LPC2210的BANK0存儲(chǔ)塊使用 32位總線(xiàn),訪問(wèn)BANK0時(shí),地址線(xiàn) A1、A0是否有效?EMC模塊中的BLSO-BLS3具有什么功能?答:如果存儲(chǔ)器組配置成32 位寬度,地址線(xiàn) A0 和 A1 無(wú)用,這是
23、由于地址位的增減與存儲(chǔ)器數(shù)據(jù)增減同步,此日A0和A1可作為GPIO使用(由PINSEL皴置)。EMC模塊中的BLSO-BLS3具有字節(jié)定位的選擇信號(hào)功能,當(dāng)BLSO 為低時(shí),存取定位到低8 位字節(jié)上,當(dāng) BLS1 為低時(shí),存取定位次到低8位字節(jié)上,當(dāng)BLS2為低時(shí),存取定位到次高字節(jié),當(dāng)BLS3為低時(shí),存取定位到高位字節(jié)上。如果存儲(chǔ)器組配置寄存器中 RBLE 位置 1 ,表示按字節(jié)區(qū)分存儲(chǔ)器組,現(xiàn)有程序:LDR R0, =0X80000001MOV R1,0X55STR R1,R0請(qǐng)問(wèn)執(zhí)行STR指令后,存儲(chǔ)器地址線(xiàn)上的地址應(yīng)為0X80000000,數(shù)據(jù)線(xiàn)的前16位數(shù)據(jù)中,低8位為 無(wú)效 ,高8
24、位為 0X55 。EMC模塊中的引腳線(xiàn) BLS0和BLS1電平分另 為 高電平 和 低電平 。 (填高低電平)在startup.s啟動(dòng)代碼中,設(shè)置異常向量表時(shí),IRQ入口處為什么放置LDR PC, PC, # -0 x0f0指令而非 LDR PC IRQ_Addr。答:這是由于LDR PC, IRQ_Addr 指令不能提供靈活的轉(zhuǎn)移地址,在處理時(shí)就要耗費(fèi)大量的時(shí)間解決IRQ轉(zhuǎn)移分類(lèi)問(wèn)題。 而LDR PC, PC, # -0f0指令轉(zhuǎn)移地址來(lái)源于完部的VICVectAddr寄存器保存的地址值。 不同的中斷異常,其VICVectAddr 的值不同, 可通過(guò)初始配置, 節(jié)省了軟件的轉(zhuǎn)移選擇開(kāi)銷(xiāo)。在s
25、tartup.s啟動(dòng)代碼中,設(shè)置異常向量表時(shí),IRQ入口處放置LDR PC PC, # -0 x0f0指令中PC-0 x0FF0地址單元是指向VICVectAddr寄存器的地址。BOOT0和BOOT1與BCFG029: 28的關(guān)系和區(qū)別是什么?答:Bank0用于引導(dǎo)程序運(yùn)行, BCFG029: 28的復(fù)位值與BOOT0和BOOT1設(shè)定有關(guān)。BOOT0和 BOOT1 與 BCFG029: 28的關(guān)系:Bank復(fù)位時(shí)BOOT1:0的狀態(tài)BCFG29: 28存儲(chǔ)器寬度0LL008位0LH0116位0HL1032 位0HH1032 位1xx1032 位2xx0116位3xx008位而對(duì) Bank1、B
26、ank2 和 Bank3 而言,BCFG29:28決定存儲(chǔ)器寬度,與 BOOT1:0設(shè)定無(wú)關(guān)。對(duì)Bank0而言,BCFG29: 28的復(fù)位值由BOOT1:0設(shè)定決定,且存儲(chǔ)器寬度也由 BOOT1:0 決定。請(qǐng)問(wèn)引腳連接模塊選擇寄存器有哪些?請(qǐng)舉一個(gè)例子說(shuō)明選擇寄存器的功能?答:引腳連接模塊選擇寄存器有PINSEL0 PINSEL1和PINSEL2如設(shè)定:PINSEL0 &= 0 x00000001則選擇 P0.0 腳,功能為 TxD(UART0)啟動(dòng)代碼中總線(xiàn)引腳設(shè)置為:ResetInit LDR R0,=PINSEL2IF : DEF:EN_CRPLDR R1,=0 x0f814910ELS
27、ELDR R1,=0 x0f814914ENDIFSTR R1,R0分析每條代碼的含義,并說(shuō)明PINSEL2配置0 x0f814910和配置0 x0f814914的區(qū)別?答:程序清單中,當(dāng)預(yù)定義有EN_CR際時(shí),將會(huì)編譯程序清單LDR R1,=0 x0f814910語(yǔ)句,并將PINSEL2寄存器設(shè)置為 0 x0f814910 ,否則編譯 LDR R1,=0 x0f814914語(yǔ)句,并將PINSEL2 寄存器設(shè)置為0 x0f814914。區(qū)別:前一種執(zhí)行禁止使用JTAG口調(diào)試,起到加密作用。后一種使用JTAG 口調(diào)試。LPC2000 系列 ARM7 微控制器具有引腳功能復(fù)用特性,那么如何設(shè)置某個(gè)
28、引腳為指定功能?答:例如通過(guò)設(shè)置 PINSEL01:0=00時(shí),引腳為 GPIO功能;設(shè)置為01時(shí),引腳為 UART0的 TxD功能。設(shè)置為10時(shí),引腳為PWM1功能腳。設(shè)置引腳為 GPIO 功能時(shí),如何控制某個(gè)引腳單獨(dú)輸入 /輸出?當(dāng)需要知道某個(gè)引腳當(dāng)前的輸出狀態(tài)時(shí),是讀取IOPIN寄存器還是讀取IOSET寄存器?答:設(shè)置引腳為GPIO功能時(shí),控制某個(gè)引腳單獨(dú)輸入/輸出是用IODIR方向控制寄存器控制,寄存器中每位對(duì)應(yīng)控制著I/O位,如IODIR0對(duì)應(yīng)PX.0腳,IODIR31對(duì)應(yīng)PX.31腳,寫(xiě)入1時(shí)對(duì)應(yīng)引腳作為輸出功能,寫(xiě)入 0 時(shí)作為輸入功能。當(dāng)需要知道某個(gè)引腳當(dāng)前的輸出狀態(tài)時(shí), 是讀
29、取IOPIN寄存器。P0.2和P0.3 口是I2C接口,當(dāng)設(shè)置它們?yōu)?GPIO時(shí),是否需要外接上拉電阻才能輸出高電平?答:需要外接上拉電阻1-10K?,這是因此I2C接口兩根線(xiàn)都開(kāi)漏輸出。使用SPI主模式時(shí),SSEL3I腳是否可以作為 GPIO?若不能,SSEL引腳應(yīng)如何處理?答:使用SPI主模式時(shí),SSEL3I腳不可以作為 GPIO,對(duì)SSEL弓唧的處理,使用SPI主模式時(shí), 必須選擇相應(yīng)的引腳用作SSE能并使其保持高電平。LPC2114的兩個(gè)UART是符合什么標(biāo)準(zhǔn)?哪一個(gè) UART可用ISP通信?哪一個(gè) UART具有 MODEM 接口?答:必須符合 16C550 工業(yè)標(biāo)準(zhǔn);UART0可用I
30、SP通信,UART1具有MODEM接口功能。LPC2114具有幾個(gè)32位定時(shí)器? PWM定時(shí)器是否可以作通用定時(shí)器使用?答:LPC2114具有2個(gè)32位定時(shí)器,定時(shí)器 0和定時(shí)器1, PWM定時(shí)器是專(zhuān)用定時(shí)器,不可 作通用定時(shí)器使用。LPC2000 系列ARM7 微控制器具有哪兩種低耗模式?如何降低系統(tǒng)的功耗?答: LPC2000 系列 ARM7 微控制器具空閑模式和掉電模式的低耗模式。在空閑模式下,處理器、存儲(chǔ)器系統(tǒng)和相關(guān)控制器以及內(nèi)部總線(xiàn)不再消耗功率,但外設(shè)繼續(xù)保持并可產(chǎn)生中斷使處理器恢復(fù)運(yùn)行。在掉電模式下,振蕩器關(guān)閉,芯片沒(méi)有任何內(nèi)部時(shí)鐘,處理器狀態(tài)和寄存器、外設(shè)寄存器以及內(nèi)部SRAM
31、值在掉電模式下被保持。芯片的邏輯電平保持靜態(tài)。復(fù)位或特定的不需要時(shí)鐘仍能工作的中斷可終止掉模式,并使芯片恢復(fù)正常運(yùn)行。有符號(hào)和無(wú)符號(hào)加法下面給出A和B的值,可先手動(dòng)計(jì)算 A+B,并預(yù)測(cè)N、Z、V和C標(biāo)志位的值。其中(A, B)值分別為(0 xFFFF000F 0X0000FFF1)或(0 x7FFFFFFF,0 x02345678或(67654321、23110000 ), 將三組用分別用LDR偽指令向寄存器(R0, R1)附值。其程序如下:START LDR R0, =ALDR R1, =BLOOP BL ADD_SUBB LOOPADD_SUB ADDS R0,R0,R1MOV PC,LR
32、END試判斷如果A 和 B 為有符號(hào)數(shù)時(shí),計(jì)算結(jié)果和標(biāo)志位的狀態(tài)?如果為無(wú)符號(hào)數(shù)時(shí),計(jì)算結(jié)果和標(biāo)志的狀態(tài)?答:0 xFFFF000F0 x7FFFFFFF+0 x0000FFF10 x02345678結(jié)果: 0 x1000000000 x82345677N=0;Z=1;V=0;C=1N=1;Z=0;V=1;C=058、把下面的C代碼轉(zhuǎn)換成匯編代碼。數(shù)組始地址的存儲(chǔ)區(qū)內(nèi),類(lèi)型為10ng(即32位)。67654321 A23110000 B90764321N=0 ;Z=0;V=O ;C=0a 和 b 分別存放在以 0 x4000 和 0 x5000 為起F0r(I=0;I8;I+)答:LDRLDR
33、MOVLOOPLDRSTRSUBSBPLAI=b7-I;R0, =0 x3FFCR1, =0 x5028R2, 0 x0008R3,R1,# -4 R3, R0,#4 R2,R2,#1 LOOP59、60、假設(shè)有一個(gè)基于FACTORIALLOOPMOVR6, #10MOVR4, R6SUBS R6,R6,#1MULNE R4,R4,R6BNE LOOPLPC2114 的系統(tǒng),所使用的晶振為11.0592MHz 石英晶振。請(qǐng)計(jì)算計(jì)算一個(gè)數(shù) n 的階乘,即 n!=n*(n-1)*(n-2) (1)。解:由公式:件,因出最大的系統(tǒng)時(shí)鐘(cclk)頻率為多少M(fèi)Hz?此時(shí)PLL的M值和P值各為多少?請(qǐng)列
34、出計(jì)算 公式,并編寫(xiě)設(shè)置 PLL的程序段。由公式:Fcclk = M*Fosc ,要使Fcclk最大,F(xiàn)osc為11.0592MHz ,必M為最大時(shí)滿(mǎn)足條 因 LPC2114 的 Fcclk 最大值為 60MHZ,而 60/11.0592 ? 5.4 Mmax 僅能設(shè)置為 5當(dāng)前條件下的最大的系統(tǒng)時(shí)種Fcclk =5*11.0592=55.296MHZ,此日M值為5,寫(xiě)入MSEL的值為4;又由公式:Fcco=Fosc * M * 2 * P ; 而 Fcco 在 156-320MHZ 內(nèi),因此:158 (11.0592*5*2 ) ?1.4 P320/ (11.0592*5*2 ) ? 2.8
35、9 故:P取 2。PSEL=1設(shè)置PLL的程序段:PLLCON=1PLLCFG = 60/Fosc -1PLLCFG=(PLLCFG&0 x1F) | (320(/ 11.0592*5*2 ) -1)5)PLLFEED = 0 xaa;PLLFEED = 0 x55;存儲(chǔ)器重映射:LPC2210具有(D )種存儲(chǔ)映射模式。A 3; B 5 ; C 1; D 4 ;當(dāng)程序已固化到片內(nèi)Flash,向量表保存在 0 x00000000起始處,則 MAP1:0的值應(yīng)該為 ( B ) 。A 00; B 01; C 10 ; D 11;LPC2000系列ARM7微控制器存儲(chǔ)器重映射的目標(biāo)起始地址為(0 x
36、00000000 ),共有( 16 ) 個(gè)字。A0 x00000000,8B0 x40000000,8C0 x00000000,16D0 x7FFFE000,8外部中斷喚醒掉電設(shè)計(jì):以下代碼是初始化部中斷0,用它來(lái)喚醒掉電的LPC2114,請(qǐng)?zhí)羁?。PINSEL0 = 0 x00000000;PINSEL1 = (PINSEL1& 0 xFFFFFFFC)|0 x00000001;設(shè)置 I/O 口連接,P0.16 設(shè)置為 EINT0EXTMODE = EXTMODE & 0 xFE ;設(shè)置EINT0為電平觸發(fā)模式EXTPOLAR = EXTPOLAR & 0 xFE ;設(shè)置 EINT0為低電平觸
37、發(fā)EXTWAKE = EXTWAKE | 0 x01 ;/ 允許外部中斷0 喚醒掉電的 CPUEXTINT = 0 x0F ;/ 清除外部中斷標(biāo)志。使用定時(shí)器時(shí)脈寬測(cè)量: 脈沖從 P0.0 口輸入, 程序等待 P0.0 口變?yōu)榈碗娖胶髥?dòng)定時(shí)器測(cè)量,當(dāng)P0.0 口變?yōu)楦唠娖綍r(shí),停止定時(shí)器,然后從T0TC寄存器讀取定時(shí)計(jì)數(shù)值。編寫(xiě)程序代碼?答:TOPR = 0;while(IO0PIN & 0 x01) != 0);TOTCR = 0 x01;While (IO0PIN & 0 x01) = = 0);TOTCR = 0 x00;Time = TOTC;U0RBR寄存器和U0THR寄存器的地址是
38、完全一樣的,是不是說(shuō)明接收寄存器和發(fā)送寄存器是同一物理寄存器?它們是怎樣區(qū)分的?答:雖然U0RBR寄存器和U0THR寄存器的地址是完全一樣,但接收寄存器和發(fā)送寄存器不是同 一物理寄器。它們是通過(guò)讀寫(xiě)信號(hào)線(xiàn)來(lái)區(qū)分的,當(dāng)為 WE操作時(shí),選擇U0THR寄存器;當(dāng)為 RD操作時(shí),選擇U0RBR寄存器。改錯(cuò):ARM 狀態(tài)與 Thumb 狀態(tài)的切換是要影響處理器的模式或寄存器的內(nèi)容的。 ( X )特權(quán)模式是哪些模式?為什么叫特權(quán)模式?答:特權(quán)模式除了用戶(hù)模式外,其它模式均為特權(quán)模式,即:系統(tǒng)模式、快中斷模式、中斷模式、管理模式、中止模式、未定義模式。之所以稱(chēng)為特權(quán)模式是因?yàn)锳RM內(nèi)部寄存器和一些片內(nèi)外設(shè)在
39、硬件設(shè)計(jì)上只允許這些模式訪問(wèn)。此外,特權(quán)模式可以自由的切換處理器模式,而用戶(hù)模式不能直接切換到別的模式。異常模式是哪些模式?答:異常模式由快中斷模式、中斷模式、管理模式、中止模式、未定義模式。判錯(cuò):進(jìn)入異常模式可以通過(guò)程序切換進(jìn)入,也可以由特定的異常進(jìn)入。(V)在ARM7TDMI處理器內(nèi)部有37 個(gè)用戶(hù)可見(jiàn)的寄存器,這些寄存器分成兩大類(lèi):一類(lèi)為通用32位寄存器,有 31 個(gè),另一類(lèi)為狀態(tài)寄存器,有 6 個(gè)。未分組的寄存器有 R0-R7共8個(gè)。在任何模式下,這些寄存器都對(duì)應(yīng)于相同的32位物理寄存器。寄存器R8 R12有兩個(gè)分組的物理寄存器。一個(gè)用于除FIQ模式之外的所有寄存器模式,另一個(gè)用于 F
40、IQ模式。這樣在發(fā)生 FIQ中斷后,可以加速 FIQ的處理速度。當(dāng)使用STR或STM指令保存R15時(shí),保存值與 R15值是不一致的,為什么?答:這是由于 R15是當(dāng)前指令的地址,而 ARM為多級(jí)流指令操作,當(dāng)在執(zhí)行段執(zhí)行保存PC時(shí),此時(shí)的PC值已不是當(dāng)前指令的 PC值,而是當(dāng)前地址的加一個(gè)偏移常量,如 8或12。判錯(cuò):ARM執(zhí)行STR或STM指令保存R15時(shí),其保存的值與當(dāng)前指令地址PC 一致的。(X)請(qǐng)判斷下面程序段的作用是獲取常量值,即跳轉(zhuǎn)時(shí)地址 =PC+常量+偏移地址中的常量,通常為 8。 TOC o 1-5 h z SUBR1,PC,#4STRPC,R0LDRR0,R0SUBR0,R0
41、,R1如果異常處理程序已經(jīng)把返回的地址拷貝到堆棧,那么可以使用一條多寄存器傳送指令來(lái)恢復(fù)用戶(hù)寄存器并實(shí)現(xiàn)返回。SUB LR,LR,#4STMFD SP!,R0-R3,LRLDMFD SP!,R0-R3,PCA請(qǐng)解釋“! ”和“人”的含義?答:“一表示最后的地址值要寫(xiě)回SR表示這是一條特殊形式的指令。這條指令在從存儲(chǔ)器中裝載PC的同時(shí)( PC是最 后恢復(fù)的),SPS他恢復(fù)到CPSRARM7TDMI處理器采用是“哈佛結(jié)構(gòu)”而非馮諾依曼(Von Neumann)結(jié)構(gòu)。(X)ARM7TDMI處理器指令和數(shù)據(jù)共用一條 32位數(shù)據(jù)總線(xiàn)。只有裝載、保存和交換指令可訪問(wèn)存儲(chǔ)器中的數(shù)據(jù)。(V)ARM指令集哪幾大
42、類(lèi)指令?答:ARM指令集5大類(lèi)指令,它們是:分支指令;數(shù)據(jù)處理指令;加載和存儲(chǔ)指令;協(xié)處理 器指令;雜項(xiàng)指令。從尋址方式的地址計(jì)算方法分,加載/存儲(chǔ)指令有4種格式。零偏移、前索引偏移、程序相對(duì)偏移、后索引偏移,請(qǐng)標(biāo)出下面指令屬于哪一種:LDR R0,R1,#0 x04; LDRR0,R1,#0 x04LDRR0,label ;LDR R0,R1 ;在多寄存器加載指令 LDMIA R0!, R1-R4,LR人中,請(qǐng)解釋“! ”和“人”的作用?答:“一表示在操作結(jié)束后,將最后的地址寫(xiě)回R0中;表示兩方面,一方面進(jìn)行數(shù)據(jù)傳送且寄存器列表不包含PC時(shí),加載/存儲(chǔ)的寄存器是用戶(hù)模式下的,而不是當(dāng)前模式的
43、寄存器。另一方面,若在LDM指令且寄存器列表中包含有PC時(shí)使用,那么除了正常的多寄存器傳送外,還將SPS他拷貝到CPSR中,這可用于異常處理返回。該后綴不允許在用戶(hù)模式或系統(tǒng)模式下使用。ARM狀態(tài)下的壓棧和出棧操作可以用數(shù)據(jù)塊傳送指令完成,為什么還要用堆棧指令進(jìn)行堆棧操作?答:如STMDA R0!,R5-R6 LDMIB R0!,R5-R6的數(shù)據(jù)塊傳送指令進(jìn)行堆棧操作,也可用STMED R0!,R5-R6 LDMED R0!,R5-R6的堆棧指令進(jìn)行堆棧操作。兩段代碼的執(zhí)行結(jié)果 是一樣的,但是使用堆棧指令的壓棧和出棧操作編程很簡(jiǎn)單,前后模式一致即可,而使用數(shù) 據(jù)塊指令進(jìn)行壓棧和出棧操作則需要考
44、慮空與滿(mǎn)、加與減對(duì)應(yīng)的問(wèn)題。LPC2000系列微控制器包含四大部分:ARM7TDMI-S CPC ARM7局夸B總線(xiàn)及相關(guān)夸B件、AHB高性能總線(xiàn)及相關(guān)部件、VLSI外設(shè)總線(xiàn)及相關(guān)部件。AHB外設(shè)分配了8 M字節(jié)的地十范圍, 它位于4G字節(jié)ARM尋址空間的最頂端。AHB可接外設(shè)12 8 個(gè),每個(gè)分配 16KB 的地址空間。VPB外設(shè)分配了2M字節(jié)的地址范圍.從3.5GB地址點(diǎn)開(kāi)始,VPB可分配128個(gè)外設(shè),每個(gè) VPB外設(shè)都分配了 16KB的地址空間。向量中斷控制器(VIC)最多可以管理32個(gè)中斷請(qǐng)求,LPC2000實(shí)際管理了 19個(gè)中斷請(qǐng)求。外部存儲(chǔ)器控制器(EMC)支持4個(gè)BANK的外部S
45、RAM或Flash,每個(gè)BANK最多名MB 容量。對(duì)SRAM的寫(xiě)入一次操作后,如果發(fā)生芯片復(fù)位,實(shí)際的SRAM內(nèi)容將不會(huì)反映最近一次的寫(xiě)操作。(V)在LPC2000系列芯片中,對(duì) SRAM執(zhí)行一次寫(xiě)入操作,此時(shí)芯片復(fù)位,為什么實(shí)際的SRAM內(nèi)容將不會(huì)反映最近一次的寫(xiě)操作?答:由于SRAM控制器包含一個(gè)回寫(xiě)緩沖區(qū),它總是保存著軟件發(fā)送到SRAM的最后一個(gè)字?jǐn)?shù)據(jù)。該數(shù)據(jù)只有在軟件請(qǐng)求下一次寫(xiě)操作時(shí)才寫(xiě)入SRAM。如果發(fā)生芯片復(fù)位,實(shí)際的SRAM內(nèi)容將不反映最近一次的寫(xiě)操作。為什么整個(gè)BootBlock塊被映射到片內(nèi)存儲(chǔ)器空間的頂端?答:這是為了兼容將來(lái)的器件,以便將來(lái)的芯片內(nèi)置不同的RAM和FAL
46、SH都不會(huì)影響B(tài)ootBlock 的位置。實(shí)現(xiàn)掉電喚醒不需要在向量中斷控制器VIC中使能相應(yīng)的中斷。(X)異常向量表可能來(lái)源于內(nèi)部Flash、內(nèi)部SRAM內(nèi)部BootBlock、外部存儲(chǔ)器。(V)對(duì)LPC2210來(lái)說(shuō),當(dāng) MEMMAP寄存器的MAP1:0=11時(shí),當(dāng)引腳BOOT1和BOOT0全為高電平,復(fù)位后從外部Flash執(zhí)行程序。(X)對(duì)LPC2210來(lái)說(shuō),當(dāng) MEMMAP寄存器的MAP1:0=11時(shí),當(dāng)引腳BOOT1和BOOT0不全為高電平但芯片加密,復(fù)位后從外部Flash執(zhí)行程序。(X)與外部存儲(chǔ)器的連接時(shí),如果存儲(chǔ)器組配置成32位寬度,地址線(xiàn)A0和A1為什么無(wú)用,且可作為GPIO使用
47、?答:與外部存儲(chǔ)器的連接時(shí),如果存儲(chǔ)器組配置成32位寬度,則尋址是按字(4字節(jié))操作,但存儲(chǔ)器地址是按字節(jié)編址,因此只有當(dāng)A0和A1不參與尋址時(shí)才是按字操作,因此 A0和A1這兩根線(xiàn)可用作 GPIO而不影響尋址。與外部存儲(chǔ)器的連接時(shí), 如果存儲(chǔ)器組配置成 16位寬度,地址線(xiàn) A0為什么無(wú)用?同一寄存器組的器件寬度可以不一致。 (X)與外部存儲(chǔ)器連接的是32位寬度,請(qǐng)畫(huà)出4片8位存儲(chǔ)器芯構(gòu)成32位存儲(chǔ)器的連接示意圖?中斷控制器將32個(gè)中斷輸入進(jìn)行分配,可轉(zhuǎn)向的中斷類(lèi)型是FRQ、向量IRQ 和 非向量IRQ。請(qǐng)描述ARM內(nèi)核是如何通過(guò)向量中斷控制器VIC獲取中斷服務(wù)程序地址的?答:在發(fā)生向量IRQ
48、中斷后,VIC能將對(duì)應(yīng)中斷的服務(wù)程序地址保存的寄存器VICVectAddr0-15中按對(duì)應(yīng)VICVectCntl0-15的優(yōu)先級(jí)順序選取級(jí)別最高的地址,并送入 VICVectAddr寄存器中, 而非向量中斷是將 VICDefVectAddr送入VICVectAddr寄存器中,在異常向量表的IRQ異常入口 處放置一條指令,將 VICVectAddr寄存器的內(nèi)容裝入程序計(jì)數(shù)器PC,就可以跳轉(zhuǎn)到當(dāng)前中斷的服務(wù)函數(shù)。請(qǐng)編寫(xiě)一段C代碼。要求設(shè)置外部中斷0產(chǎn)生向量IRQ中斷后執(zhí)行中斷服務(wù)程序IRQ_Eint0()。答:PINSEL1 = (PINSEL1&0XFFFFFFFC) | 0 x0綠置 P0.1
49、6 為外部中斷VICIntSelect = 0 x00000000; 設(shè)置所有中斷為IRQ中斷 VICVectCntl0 = (0 x20 | 14);將EINT0設(shè)置為優(yōu)先級(jí) 0,使能IRQ中斷 VICVectAddr。= (int)IRQ_Eint0;EXTINT = 0 x01;清除外部中斷0的標(biāo)志后使能外部中斷0 VICIntEnable = (114);簡(jiǎn)述向量IRQ的中斷入口地址的形成過(guò)程?答:初始化時(shí),向量IRQ的入口地址保存在 VICVectAddrx寄存器中,通過(guò) VICVectCntlx保存 中斷源類(lèi)型,當(dāng)有所設(shè)置的IRQ中斷源發(fā)生中斷時(shí),中斷控制器(VIC)將中斷源所對(duì)應(yīng)
50、的向量IRQ入口地址寄存器 VICVectAddrx內(nèi)容保存到 VICVectAddr并由ARM通過(guò)異常向量表所對(duì) 應(yīng)的入口地址 0 x00000018執(zhí)行LDR PC PC, # -0 xFF0指令就完成將 VICVectAddr地址內(nèi)容裝 載到PC中形成中斷入口地址跳轉(zhuǎn),進(jìn)入中斷服務(wù)程序。簡(jiǎn)述非向量IRQ的中斷入口地址的形成過(guò)程?答:初始化時(shí),非向量 IRQ的入口地址保存在 VICDefVectAddr,當(dāng)有所設(shè)置的非向量IRQ中斷源發(fā)生中斷時(shí),中斷控制器( VIC)將中斷源所對(duì)應(yīng)的非向量IRQ入口地址寄存器VICDefVectAddr內(nèi)容保存到VICVectAddr,并由 ARM通過(guò)異常
51、向量表所對(duì)應(yīng)的入口地址0 x00000018執(zhí)行LDR PC PC, # -0 xFF0脂令就完成將 VICVectAddr地址內(nèi)容裝載到 PC中形成 中斷入口地址跳轉(zhuǎn),進(jìn)入中斷服務(wù)程序。簡(jiǎn)述向量IRQ和非向量IRQ的中斷入口地址形成異同?答:相同點(diǎn):同為IRQ中斷,ARM通過(guò)異常向量表所對(duì)應(yīng)的入口地址 0 x00000018執(zhí)行LDR PC PC, # -0 xFF0俏令就完成將 VICVectAddr地址內(nèi)容裝載到 PC中形成中斷入口地址跳轉(zhuǎn) ,進(jìn)入中 斷服務(wù)程序。不同點(diǎn):VIC形成VICVectAddr地址,一個(gè)是從向量地址寄存器VICVectAddrx讀取,一個(gè)是從寄存器VICDefVectAddr讀取。設(shè)置引腳為GPIO為輸出模式時(shí),向IOxSET寄存器對(duì)應(yīng)位寫(xiě)1時(shí)輸出高電平,寫(xiě)0時(shí)輸出低電平。(X)VIC寄存器 VICIntSelect 的作用。VIC寄存器 VICVectCntlx 的作用 。VIC寄存器 VICVectAddrx 的作用 。VIC寄存器 VICVectAddr 的作用。VIC寄存器 VICDefVectAddr 的作用LPC2000型中的定時(shí)器功能除了可作計(jì)數(shù)操作外,還可作:信號(hào)捕獲和信號(hào)匹配發(fā)生。I2C的2根線(xiàn)分別是串行數(shù)據(jù)SDA和串行時(shí)鐘 SCL簡(jiǎn)述
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度餐飲業(yè)食品添加劑使用規(guī)范協(xié)議書(shū)模板3篇
- 二零二五年飯館員工勞動(dòng)合同與員工福利配套協(xié)議3篇
- 二零二五年鈑金噴涂維修產(chǎn)業(yè)數(shù)字化轉(zhuǎn)型承包協(xié)議2篇
- 2024版權(quán)質(zhì)押合同質(zhì)權(quán)實(shí)現(xiàn)及債務(wù)清償
- 2024年物業(yè)管理公司關(guān)于小區(qū)保潔服務(wù)合同
- 二零二五年度智慧城市建設(shè)項(xiàng)目宣傳推廣服務(wù)合同3篇
- 2024版電動(dòng)伸縮門(mén)銷(xiāo)售協(xié)議3篇
- 2024年股權(quán)投資合同范本:投資金額與股權(quán)比例
- 2025年度新能源汽車(chē)充電樁建設(shè)合作協(xié)議范本3篇
- 二零二五年度環(huán)保設(shè)備模具定制合同范本3篇
- 奶茶督導(dǎo)述職報(bào)告
- 山東萊陽(yáng)核電項(xiàng)目一期工程水土保持方案
- 白熊效應(yīng)(修訂版)
- 小學(xué)數(shù)學(xué)知識(shí)結(jié)構(gòu)化教學(xué)
- 視頻監(jiān)控維保項(xiàng)目投標(biāo)方案(技術(shù)標(biāo))
- 社會(huì)組織能力建設(shè)培訓(xùn)
- 立項(xiàng)報(bào)告蓋章要求
- 2022年睪丸腫瘤診斷治療指南
- 被執(zhí)行人給法院執(zhí)行局寫(xiě)申請(qǐng)范本
- 主變壓器試驗(yàn)報(bào)告模板
- 安全防護(hù)通道施工方案
評(píng)論
0/150
提交評(píng)論