EX_INTERRUPT_HANDLER(FlagA_ISR){ if(*pFIO_FLAG_D == PF0) { printf("interrupt is PF0!\n"); *pLED_DAT =0xfe; *pFIO_FLAG_C = PF0; }
请问下怎么查询pFIO_FLAG_D,和PF0中的值,
另外,问下(*pFIO_FLAG_D == PF0和(*pFIO_FLAG_D & PF0)的效果是否一样;
这段是哪个程序下的?把这个程序打个包发上来看一下
我改了一下标题,把问题简要的写在标题上,单单一个“求助”杵在那里,容易忽略了
这是bf53x_gpio_interrupt中的程序
在仿真状态,通过哦VDSP++工具可以查看pFIO_FLAG_D,查看方法如下图:
(*pFIO_FLAG_D = = PF0)和(*pFIO_FLAG_D & PF0)的效果在这个例子程序中是一样的,因为该程序没有对其他PF脚进行操作。不过建议使用(*pFIO_FLAG_D & PF0)。
*pFIO_FLAG_C = PF0; 修改成 *pFIO_FLAG_C |= PF0;