EXIT(外部中断)
1、简介
- 外部中断是单片机实时地处理外部事件的一种内部机制。当某种外部事件发生时,单片机的中断系统将迫使CPU暂停正在执行的程序,转而去进行中断事件的处理;中断处理完毕后.又返回被中断的程序处,继续执行下去
2、具体步骤(以按键点灯为例)
HAL库
(1)初始化配置
- 将按键对应的管脚设置为"外部中断上升沿模式"
- 将GPIO设置为"上拉模式"
- 将优先级组设置为1
- 配置抢占优先级为1
- 配置子抢占优先级为1
- 将小灯对应GPIO管脚按照如下方式配置
(2)控制硬件
- 在主函数的
while
循环内进行延时while (1) { HAL_Delay(500); /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ }
- 在主函数外部声明一个回调函数
/* USER CODE BEGIN 4 */
//回调函数
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
if(GPIO_Pin == B1_Pin)//检测到按键触发
{
HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);//翻转按键信号
}
}
/* USER CODE END 4 */
原理:当按键被触发后,会形成外部冲断,单片机会去处理回调函数(即翻转小灯处管脚信号)
LL库
- 后续更新