我利用GPIO中断例程实现按键检测功能,同时加入了定时采样后,发现GPIO中断无法返回,不管是否清除了中断标志,我怀疑是不是例程里少了一步中断返回。
但不知道先楫对于处理完中断后返回应该怎么处理。
void isr_gpio(void)
{
if(gpio_check_pin_interrupt_flag(BOARD_APP_GPIO_CTRL, BOARD_APP_GPIO_INDEX,BOARD_APP_GPIO_PIN_DOWN))
{
printf("Down Key is on...\\n");
//board_delay_ms(200);
gpio_toggle_pin(BOARD_OP_GPIO_CTRL, BOARD_OP_GPIO_INDEX,BOARD_OP_GPIO_PIN);
board_delay_ms(200);
gpio_clear_pin_interrupt_flag(BOARD_APP_GPIO_CTRL, BOARD_APP_GPIO_INDEX,BOARD_APP_GPIO_PIN_DOWN);
}
}
SDK_DECLARE_EXT_ISR_M(BOARD_APP_GPIO_IRQ, isr_gpio)
更多回帖