昨天请教的问题,我已经解决了,在中断里面进行判断是PE6还是PF8脚就可以实现不同的按键点亮不同的LED灯了。
今天又发现另一个问题了,PE6和PF6接两个按键,中断点亮不同的LED,但是由于两个管脚同属于EXTI6,且中断入口一样,我的中断处理程序如下:
uint16_t GPIO_IDDataE6,GPIO_IDDataF6; GPIO_IDDataE6 = GPIO_ReadInputData(GPIOE);
GPIO_IDDataF6 = GPIO_ReadInputData(GPIOF);
if((GPIO_IDDataE6 & 0x0040) >> 6 == 0)
{
GPIO_SetBits(GPIOE, GPIO_Pin_2);
EXTI_ClearITPendingBit(EXTI_Line6);
}
if((GPIO_IDDataF6 & 0x0040) >> 6 == 0)
{
GPIO_SetBits(GPIOE, GPIO_Pin_4);
EXTI_ClearITPendingBit(EXTI_Line6);
}
程序出现的结果是:每次只有PE6先进中断点亮对应的小灯,PF6才进中断点灯;如果先按PF6按键,则程序进不去中断,不知道可有人遇到过这种情况,大家都是怎么处理的?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
那为什么PE6进一次中断后,PF6就能进去中断了?
一周热门 更多>