實(shí)驗(yàn)二 外部中斷實(shí)驗(yàn)(南大)

實(shí)驗(yàn)二 外部中斷實(shí)驗(yàn)(南大)

ID:15693881

大?。?6.00 KB

頁(yè)數(shù):3頁(yè)

時(shí)間:2018-08-04

實(shí)驗(yàn)二  外部中斷實(shí)驗(yàn)(南大)_第1頁(yè)
實(shí)驗(yàn)二  外部中斷實(shí)驗(yàn)(南大)_第2頁(yè)
實(shí)驗(yàn)二  外部中斷實(shí)驗(yàn)(南大)_第3頁(yè)
資源描述:

《實(shí)驗(yàn)二 外部中斷實(shí)驗(yàn)(南大)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、南昌大學(xué)實(shí)驗(yàn)報(bào)告學(xué)生姓名:學(xué)號(hào):專業(yè)班級(jí):卓越通信班實(shí)驗(yàn)類型:□驗(yàn)證□綜合設(shè)計(jì)□創(chuàng)新實(shí)驗(yàn)日期:201303實(shí)驗(yàn)成績(jī):實(shí)驗(yàn)二外部中斷實(shí)驗(yàn)一.實(shí)驗(yàn)?zāi)康恼莆誗3C2410A處理器外部中斷的引腳功能設(shè)置;掌握中斷初始化以及中斷服務(wù)函數(shù)的編寫(xiě)。二.實(shí)驗(yàn)設(shè)備硬件:PC機(jī)1臺(tái)MagicARM2410教學(xué)實(shí)驗(yàn)開(kāi)發(fā)平臺(tái)1臺(tái)軟件:Windows98/2000/XP操作系統(tǒng)ADS1.2集成開(kāi)發(fā)環(huán)境三.實(shí)驗(yàn)內(nèi)容設(shè)置GPF4引腳為外部中斷EINT4功能,下降沿觸發(fā)模式。初始化S3C2410A中斷控制器,設(shè)置EINT4為IRQ中斷,并使

2、能中斷允許。初始化完成后,等待外部中斷產(chǎn)生。中斷服務(wù)程序里負(fù)責(zé)把LED1控制口輸出信號(hào)取反,清除中斷標(biāo)志后退出中斷。四.實(shí)驗(yàn)原理a獨(dú)立按鍵KEY1電路使用了GPF4口,設(shè)置GPFCON寄存器可以選擇GPF4引腳為外部中斷EINT4功能,此時(shí)通過(guò)按下KEY1鍵即可觸發(fā)外部中斷;b對(duì)于S3C2410A的眾多中斷源,通過(guò)設(shè)置INTMOD寄存器可將它們分為IRQ中斷或FIQ中斷,一般只設(shè)置一個(gè)中斷源為FIQ中斷。對(duì)于多個(gè)IRQ中斷,通過(guò)PRIORITY寄存器可以設(shè)置中斷的優(yōu)先級(jí),一般將其設(shè)置為0使用默認(rèn)固定的優(yōu)先級(jí)即

3、可;c設(shè)置INTMSK寄存器使能某個(gè)中斷源的中斷允許,有些中斷源還需要設(shè)置SUBMASK寄存器使能(比如UART的發(fā)送中斷和接收中斷);d對(duì)于外部中斷EINT4~EINT23,由于它們?cè)赟3C2410A的中斷控制器中不是獨(dú)立中斷源(EINT4~EINT7共用一個(gè)中斷源,EINT8~EINT23共用另一個(gè)中斷源),所以還需要設(shè)置EINTMASK寄存器來(lái)使能某一個(gè)外部中斷;e由于S3C2410A的中斷控制器不是向量中斷控制器,即處理器硬件不能自動(dòng)獲取對(duì)應(yīng)于中斷源的中斷服務(wù)程序地址,所以在IRQ中斷服務(wù)程序中要通過(guò)

4、中斷標(biāo)志寄存器INTPND來(lái)獲得對(duì)應(yīng)的中斷服務(wù)程序地址(參考ARMExecutableImageforDeviceARM2410工程模板的Target.c文件,其中的IRQ_Exception函數(shù))。f在中斷服務(wù)程序中,退出中斷之前要清除中斷標(biāo)志,即對(duì)SRCPND和INTPND寄存器相應(yīng)位寫(xiě)1,先清除SRCPND寄存器,再清除INTPND寄存器。對(duì)于外部中斷EINT4~EINT23中斷,要最先清除EINTPEND寄存器中的中斷標(biāo)志。實(shí)驗(yàn)電路圖五.實(shí)驗(yàn)步驟(1)啟動(dòng)ADS1.2,使用ARMExecutableI

5、mageforDeviceARM2410工程模板建立一個(gè)工程EINT。(2)在工程src組中的main.c中編寫(xiě)實(shí)驗(yàn)代碼。(3)選用DebugRel生成目標(biāo),然后編譯鏈接工程。(4)將MagicARM2410實(shí)驗(yàn)箱上的啟動(dòng)方式選擇跳線JP8短接,然后按RST鍵復(fù)位系統(tǒng)。(5)選擇【Project】->【Debug】,啟動(dòng)AXD進(jìn)行JTAG仿真調(diào)試。(6)在中斷服務(wù)程序中設(shè)置斷點(diǎn),全速運(yùn)行程序,按下/釋放KEY1按鍵,使EINT4為低/高電平(產(chǎn)生中斷)。(7)取消中斷服務(wù)程序中有斷點(diǎn),全速運(yùn)行程序,按下/釋放

6、KEY1按鍵,觀察LED1燈的變化。六.實(shí)驗(yàn)參考程序(略)七.實(shí)驗(yàn)現(xiàn)象通過(guò)中斷程序設(shè)置可以控制LED燈的亮滅。按下/釋放KEY1按鍵,使EINT4為低/高電平(產(chǎn)生中斷),按下/釋放KEY1按鍵,LED1燈的滅了八.思考題:EINT4與EINT0的中斷設(shè)置和中斷標(biāo)志清除有什么異同?答:對(duì)于外部中斷EINT0,它在S3C2410A的中斷控制器中是獨(dú)立中斷源,為了使中斷控制器能夠接收中斷請(qǐng)求,只需在在啟動(dòng)代碼中將PSR的F位或I位設(shè)置為0,同時(shí)將中斷屏蔽寄存器(INTMASK)中的相應(yīng)位設(shè)置為0;但對(duì)于外部中斷E

7、INT4,由于它在S3C2410A的中斷控制器中不是獨(dú)立中斷源(EINT4~EINT7共用一個(gè)中斷源),滿足上述設(shè)置外還需要設(shè)置EINTMASK寄存器來(lái)使能某一個(gè)外部中斷(這里是EINT4)。而在中斷標(biāo)志清除中,二者都要在退出中斷之前要清除中斷標(biāo)志,即對(duì)SRCPND和INTPND寄存器相應(yīng)位寫(xiě)1,先清除SRCPND寄存器,再清除INTPND寄存器。對(duì)于外部中斷EINT4中斷,要最先清除EINTPEND寄存器中的中斷標(biāo)志。

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。