小弟刚学DSP6713,最近参考写了一个关于GPIO的程序,GP6管脚作为输入,出现上升沿时由GPINT6引起DSP中断,上升沿标志位是由FPGA给出的,不知什么原因运行完IRQ_enable(IRQ_EVT_GPINT6)后直接进入中断了,应该是运行完*startadd2=0xF0产生一个标志位,产生中断请求DSP发数,还有就是GPIO_intPolarity(hGpio,GPIO_PIN6,GPIO_RISING);把RISING上升沿改为FALLING下降沿时,一样会产生中断。不知是什么原因,请大虾帮助,极盼回答,非常希望有人能答解下,非常谢谢! hGpio = GPIO_open(GPIO_DEV0,GPIO_OPEN_RESET); GPIO_reset(hGpio); GPIO_pinEnable(hGpio,GPIO_PIN6); GPIO_pinDirection(hGpio,GPIO_PIN6,GPIO_INPUT); GPIO_intPolarity(hGpio,GPIO_PIN6,GPIO_RISING); IRQ_globalEnable(); IRQ_nmiEnable(); IRQ_map(IRQ_EVT_GPINT6, 6); IRQ_enable(IRQ_EVT_GPINT6); *startadd2=0xF0;
void GPIO1(void) { *startadd2=0x55; cnt++; if(cnt>20) { GPIO_close(hGpio); IER &=0x2; } } interrupt void int6(void) { GPIO1(); return; } |