用STM32F103配置两个外部中断程序引脚为PB4和PB5
时间: 2024-05-08 09:15:03 浏览: 17
步骤如下:
1. 打开 CubeMX 软件,新建一个工程,并选择 STM32F103C8T6 芯片。
2. 在 Pinout 标签页中,选择 PB4 和 PB5 引脚。
3. 右键 PB4 引脚,选择 External Interrupt Mode,并选择 Rising Edge 作为触发方式。
4. 右键 PB5 引脚,选择 External Interrupt Mode,并选择 Rising Edge 作为触发方式。
5. 在 Configuration 标签页中,开启 NVIC 中断控制器,并启用 EXTI4 和 EXTI9_5 中断。
6. 在代码中编写 EXTI4 和 EXTI9_5 的中断处理程序即可。例如:
```c
void EXTI4_IRQHandler(void)
{
if (EXTI_GetITStatus(EXTI_Line4) != RESET)
{
// 处理 PB4 中断事件
EXTI_ClearITPendingBit(EXTI_Line4);
}
}
void EXTI9_5_IRQHandler(void)
{
if (EXTI_GetITStatus(EXTI_Line5) != RESET)
{
// 处理 PB5 中断事件
EXTI_ClearITPendingBit(EXTI_Line5);
}
}
```
注意,在 CubeMX 中配置的 EXTI 中断线号与实际中断线号之间有一定的偏移量。例如,PB4 对应的 EXTI_Line4 实际上是 4 + 16 = 20,PB5 对应的 EXTI_Line5 实际上是 5 + 16 = 21。因此在中断处理程序中使用 EXTI_GetITStatus 和 EXTI_ClearITPendingBit 函数时,需要使用实际中断线号。