大家好!
我在设置GPIO中断过程中遇到了下列问题,请专家指点迷津:
(1)首先, INTC module initialization ;
(2) Enable NMIs
(3)Enable global interrupts
(4)Open the INTC Module for Vector ID: 4 and Event ID: 89(因为我设置的是GPIO_15作为中断输入)
(5)Enabling the events.
(6)设置GPIO_0到GPIO_7为input,GPIO_15也为input
设置GPIO_15为上升沿中断,并清除其下降沿中断;
(7)使能GPIO中断
(8)在中断服务程序中我做的是读取GPIO_0到GPIO_7的输入状态,用的方法是读IN_DATE寄存器的状态。GPIO_0到GPIO_7的输入我是通过外部周期性的不断输入0或者1.
结果在缓存中看到的是这样的状态0 0 255 255 0 0 255 255……….
正确的结果应该是0 255 0 255 0 255 0 255 才对呀。怎么会出现这样的错误。请专家指点。
Jane Lu:
Hi Chen bin,
建议您只给GPIO_15一次脉冲信号,看看DSP进了1次还是2次中断服务程序,然后再继续排查问题。
Jane