GPIO中斷實(shí)驗(yàn)_第1頁
GPIO中斷實(shí)驗(yàn)_第2頁
GPIO中斷實(shí)驗(yàn)_第3頁
GPIO中斷實(shí)驗(yàn)_第4頁
GPIO中斷實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、GPIO中斷實(shí)驗(yàn)中斷實(shí)驗(yàn)二、與GPIO中斷相關(guān)庫函數(shù)講解一、GPIO外部中斷介紹內(nèi)容提要:三、中斷處理過程四、按鍵中斷控制LED燈亮滅一、 GPIO中斷功能介紹 可編程控制GPIO中斷 屏蔽中斷發(fā)生 邊沿觸發(fā) 上升沿 下降沿 雙邊沿(上升/下降沿) 電平觸發(fā) 高電平觸發(fā) 低電平觸發(fā) 中斷優(yōu)先級(jí)可調(diào)整GPIO模塊由 7個(gè)模塊組成,每個(gè)對(duì)應(yīng)一個(gè)獨(dú)立的GPIO端口(端口A,端口B, 端口C, 端口D, 端口E, 端口F和端口G)。每個(gè)GPIO口都具備中斷能力。GPIOGPIO管腳五種中斷方式管腳五種中斷方式上升沿觸發(fā):GPIO_RISING_EDGE用于檢測無抖動(dòng)的上升沿下降沿觸發(fā):GPIO_FAL

2、LING_EDGE用于檢測無抖動(dòng)的下降沿高電平觸發(fā):GPIO_HIGH_LEVEL用于檢測高電平狀態(tài)低電平觸發(fā):GPIO_LOW_LEVEL用于檢測低電平狀態(tài)雙邊沿觸發(fā):GPIO_BOTH_EDGE用于檢測無抖動(dòng)的雙邊沿內(nèi)容提要:二、與GPIO中斷相關(guān)庫函數(shù)講解一、GPIO外部中斷介紹三、中斷處理過程四、按鍵中斷控制LED燈亮滅GPIO中斷實(shí)驗(yàn)中斷實(shí)驗(yàn)二、與GPIO中斷相關(guān)庫函數(shù)講解函數(shù)原型void GPIOIntTypeSet (unsigned long ulPort, unsigned char ucPins, unsigned long ulIntType);功能說明設(shè)置GPIO口引腳

3、中斷類型參數(shù)ulPort:端口名稱GPIO_PORTx_BASEucPins: 引腳名稱GPIO_PIN_nulIntType:中斷類型(以下五選一)GPIO_FALLING_EDGE GPIO_RISING_EDGEGPIO_BOTH_EDGES GPIO_LOW_LEVEL GPIO_HIGH_LEVEL返回值無函數(shù)來源GPIO.c GPIO.h二、與GPIO中斷相關(guān)庫函數(shù)講解函數(shù)原型void GPIOPinIntEnable (unsigned long ulPort, unsigned char ucPins);功能說明使能引腳中斷函數(shù)來源GPIO.c GPIO.h函數(shù)原型void I

4、ntEnable (unsigned long ulInterrupt);功能說明使能某個(gè)外設(shè)中斷函數(shù)來源Interrupt.c Interrupt.h二、與GPIO中斷相關(guān)庫函數(shù)講解函數(shù)原型void GPIOPinIntClear (unsigned long ulPort, unsigned char ucPins);功能說明清除引腳中斷狀態(tài)(一般用于中斷服務(wù)子程序中)函數(shù)來源GPIO.c GPIO.h函數(shù)原型long GPIOPinIntStatus (unsigned long ulPort, tBoolean bMasked);功能說明獲取端口的中斷狀態(tài),用于判斷哪個(gè)引腳產(chǎn)生中斷返回

5、值返回未被屏蔽的引腳中斷狀態(tài)函數(shù)來源SysCtl.c SysCtl.h內(nèi)容提要:二、與GPIO中斷相關(guān)庫函數(shù)講解一、GPIO外部中斷介紹三、中斷處理過程三、按鍵中斷控制LED燈亮滅GPIO中斷實(shí)驗(yàn)中斷實(shí)驗(yàn)三、中斷處理過程1.中斷初始化設(shè)置中斷類型使能引腳中斷使能外設(shè)中斷使能總中斷GPIOIntTypeSet (GPIO_PORTB_BASE,GPIO_PIN_4, GPIO_LOW_LEVEL);GPIOPinIntEnable (GPIO_PORTB_BASE,GPIO_PIN_4);IntEnable (INT_GPIOB);IntMasterEnable ( );三、中斷處理過程2.中斷

6、服務(wù)子程序:GPIO_PORTB_ISR(void)讀取中斷狀態(tài)清中斷中斷處理自動(dòng)返回ulstatus=GPIOPinIntStatus(GPIO_PORTB_BASE,TRUE);GPIOPinIntClear (GPIO_PORTB_BASE, ulstaus);switch(ulstatus) case 0X01:Do What You Want; break; case 0X08:Do What You Want; break;DoNothing三、中斷處理過程3.修改中斷向量表:Startup.s(原始)原始中斷向量表除了幾個(gè)特殊的,其他全部為默認(rèn)值,即:IntDefaultHand

7、er每一個(gè)中斷的向量后均由注釋,通過注釋可以看出是哪種異常。三、中斷處理過程3.修改中斷向量表:Startup.s(修改后)以使用GPIO_PORTB端口中斷為例,如果中斷服務(wù)子程序命名為GPIO_PORTB_ISR,則需修改中斷服務(wù)子程序,首先使用extern申明外部變量,然后將B端口中斷向量改為中斷服務(wù)子程序名稱。其他以此類推!其他以此類推!內(nèi)容提要:二、與GPIO中斷相關(guān)庫函數(shù)講解一、GPIO外部中斷介紹三、異常處理過程三、按鍵中斷控制LED燈亮滅GPIO中斷實(shí)驗(yàn)中斷實(shí)驗(yàn)四、按鍵中斷控制LED亮滅硬件電路任務(wù):任務(wù):編程實(shí)現(xiàn)PB4PB7引腳上的四個(gè)按鈕分別控制PB0PB3上的四顆LED,開始所有LED點(diǎn)亮,鍵被按下時(shí),熄滅對(duì)應(yīng)的LED。四、按鍵中斷控制LED亮滅程序清單詳見

溫馨提示

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

評(píng)論

0/150

提交評(píng)論