ARM中外部中斷的配置流程供參考
1)使能端口的時鐘;
本文引用地址:http://cqxgywz.com/article/201611/318693.htm2)將需要的端口配置成輸入端口,具體的寄存器為:端口配置低寄存器(GPIOx_CRL)和端口配置高寄存器(GPIOx_CRH),
例如,GPIOA->CRL&=0XFFFFFFF0;//PA0設置成輸入
GPIOA->CRL|=0X00000008;
設置該端口默認的電平,具體的寄存器為:端口輸出數據寄存器(GPIOx_ODR) (x=A..E),
例如,GPIOA->ODR|=1<<13;
3) 設置IO口和中斷線的映射關系,ARM7中支持16個輸入點,對應的配置寄存器為:外部中斷/事件控制器(EXTIX)寄存器(X:1~4),
設定需要配置的輸入點,將該輸入點對應的寄存器置位,目的是設置成為:
PA[x]腳
PB[x]腳
PC[x]腳
PD[x]腳
PE[x]腳
假如是13設置為PA腳:那么代碼可以這樣了寫:
AFIO->EXTICR[EXTADDR]&=~(0x000F< 4)設置中斷的觸發條件; 5)配置中斷分組,并使能中斷; 6)編寫中斷服務函數。


評論