我试图在中执行非常简单的中断代码,在STM32F401RE中,我按下按钮,LED2应该根据按钮触发的外部中断打开。
我使用的用户按钮(蓝色按钮)在核板F401,这是对应于PC13根据板数据表喷出。我尝试了不同的选项,但LED2仍然关闭,下面是我使用的代码:
int main(void)
{
sysconfig();
Interrupt_config();
while(1)
{
if(flag)
{
GPIOA->ODR |= (1<<5);
}
}
}我使用了轮询方法(没有中断),当只使用LED_initialize();Button_init()按下按钮时,LED_initialize就会很好地打开;
发布于 2022-02-23 12:43:41
还没有检查您的IRQ设置代码,但是PC13需要的处理程序是EXTI15_10_IRQHandler。
编辑:
另一个问题: EXTICR是4个字长。这是不正确的:SYSCFG->EXTICR[4] |=(1<<5);。
https://stackoverflow.com/questions/71236767
复制相似问题