关于9b96的GPIO中断和中断向量表

2019-03-24 16:06发布

9b96每个GPIO管脚都可以作为外部中断输入GPIOIntTypeSet(GPIO_PORTJ_BASE, GPIO_PIN_3, GPIO_LOW_LEVEL);   //设置PJ3作为中断源,低电平触发GPIOPinIntEnable(GPIO_PORTJ_BASE, GPIO_PIN_3);                                 //使能中断但是我不是特别懂中断服务程序该怎样注册
void GPIOPortIntRegister(GPIO_PORTJ_BASE, void (*pfnIntHandler)(void))上边这个函数用来注册中断服务程序,但参数中只有一个基址,那他怎么确定是PJ3的中断还有第二个参数是不是只要写个函数名就可以了
另外一个问题,就是加入中断服务程序后要放到中断向量表中,中断向量表在下面,应该写到什么位置?        EXPORT  __Vectors__Vectors        DCD     StackMem + Stack            ; Top of Stack        DCD     Reset_Handler               ; Reset Handler        DCD     NmiSR                       ; NMI Handler        DCD     FaultISR                    ; Hard Fault Handler        DCD     IntDefaultHandler           ; MPU Fault Handler        DCD     IntDefaultHandler           ; Bus Fault Handler        DCD     IntDefaultHandler           ; Usage Fault Handler        DCD     0                           ; Reserved        DCD     0                           ; Reserved        DCD     0                           ; Reserved        DCD     0                           ; Reserved        DCD     IntDefaultHandler           ; SVCall Handler        DCD     IntDefaultHandler           ; Debug Monitor Handler        DCD     0                           ; Reserved        DCD     IntDefaultHandler           ; PendSV Handler        DCD     IntDefaultHandler           ; SysTick Handler        DCD     IntDefaultHandler           ; GPIO Port A        DCD     IntDefaultHandler           ; GPIO Port B        DCD     IntDefaultHandler           ; GPIO Port C        DCD     IntDefaultHandler           ; GPIO Port D        DCD     IntDefaultHandler           ; GPIO Port E        DCD     IntDefaultHandler           ; UART0        DCD     IntDefaultHandler           ; UART1        DCD     IntDefaultHandler           ; SSI        DCD     IntDefaultHandler           ; I2C        DCD     IntDefaultHandler           ; PWM Fault        DCD     IntDefaultHandler           ; PWM Generator 0        DCD     IntDefaultHandler           ; PWM Generator 1        DCD     IntDefaultHandler           ; PWM Generator 2        DCD     IntDefaultHandler           ; Quadrature Encoder        DCD     IntDefaultHandler           ; ADC Sequence 0        DCD     IntDefaultHandler           ; ADC Sequence 1        DCD     IntDefaultHandler           ; ADC Sequence 2        DCD     IntDefaultHandler           ; ADC Sequence 3        DCD     IntDefaultHandler           ; Watchdog        DCD     IntDefaultHandler           ; Timer 0A        DCD     IntDefaultHandler           ; Timer 0B        DCD     IntDefaultHandler           ; Timer 1A        DCD     IntDefaultHandler           ; Timer 1B        DCD     IntDefaultHandler           ; Timer 2A        DCD     IntDefaultHandler           ; Timer 2B        DCD     IntDefaultHandler           ; Comp 0        DCD     IntDefaultHandler           ; Comp 1        DCD     IntDefaultHandler           ; Comp 2        DCD     IntDefaultHandler           ; System Control        DCD     IntDefaultHandler           ; Flash Control        DCD     IntDefaultHandler           ; GPIO Port F        DCD     IntDefaultHandler           ; GPIO Port G        DCD     IntDefaultHandler           ; GPIO Port H        DCD     IntDefaultHandler           ; UART2 Rx and Tx        DCD     IntDefaultHandler           ; SSI1 Rx and Tx        DCD     IntDefaultHandler           ; Timer 3 subtimer A        DCD     IntDefaultHandler           ; Timer 3 subtimer B        DCD     IntDefaultHandler           ; I2C1 Master and Slave        DCD     IntDefaultHandler           ; Quadrature Encoder 1        DCD     IntDefaultHandler           ; CAN0        DCD     IntDefaultHandler           ; CAN1        DCD     IntDefaultHandler           ; CAN2        DCD     IntDefaultHandler           ; Ethernet        DCD     IntDefaultHandler           ; Hibernate        DCD     IntDefaultHandler           ; USB0        DCD     IntDefaultHandler           ; PWM Generator 3        DCD     IntDefaultHandler           ; uDMA Software Transfer        DCD     IntDefaultHandler           ; uDMA Error 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
ddllxxrr
1楼-- · 2019-03-24 20:11
< void (*pfnIntHandler)(void))

这个就是你的中断函数名字,同时写到

中断相量表中,是第几管脚的,就在第几管脚写

比如:中断函数为 MYINT 在GPIOA.

就写
EXTERN MYINT
DCD     MYINT           ; GPIO Port A
jayce
2楼-- · 2019-03-24 22:01
 精彩回答 2  元偷偷看……
jayce
3楼-- · 2019-03-24 23:48
自己再顶一下……
David_Lee
4楼-- · 2019-03-25 01:36

原帖由 jayce 于 2011-7-2 19:30 发表 一个GPIO口的八个管脚只能有一个中断函数吗,它不能区分是哪个管脚吗?另外假如是GPIOJ怎么办?里面好像没有GPIOJ THX

 

貌似是可以区分到管脚的,进入中断后,把中断标志位读出来判断一下即可。

o0pingu0o
5楼-- · 2019-03-25 06:41
 精彩回答 2  元偷偷看……
o0pingu0o
6楼-- · 2019-03-25 10:53
有GPIOJ口呀。

一周热门 更多>

相关问题

    相关文章