高级会员
- 积分
- 729
- 金钱
- 729
- 注册时间
- 2014-9-30
- 在线时间
- 124 小时
|
9金钱
STM32F030 的 芯片 ,HAL库 UM1785 手册 没有叙述:
EXTI 在中断程序内 如何去判断 究竟上升沿中断 还是
下降沿产生的中断 ??。请看 我的程序片段 ——
void EXTI0_1_IRQHandler(void)
{
/* USER CODE BEGIN EXTI0_1_IRQn 0 */
if(__HAL_GPIO_EXTI_GET_FLAG(GPIO_PIN_0) != RESET) //PF0、CH1有上下
{
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_4); //翻转 LED指示运行到这里了
if(如何判断 本次中断 是 上升沿) // 这个地方 HAL库 该怎么写呢 ?
{ // 上升沿 该做什么
}
else
{ // 下降沿 该做什么
}
__HAL_GPIO_EXTI_CLEAR_IT(GPIO_PIN_0);
}
if(__HAL_GPIO_EXTI_GET_FLAG(GPIO_PIN_1) != RESET) //PF1、CH2有上下
{
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_5); //翻转 LED指示运行到这里了
__HAL_GPIO_EXTI_CLEAR_IT(GPIO_PIN_1);
}
/* USER CODE END EXTI0_1_IRQn 0 */
HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_1);
/* USER CODE BEGIN EXTI0_1_IRQn 1 */
/* USER CODE END EXTI0_1_IRQn 1 */
}。
哎 没时间 去仔细 读 寄存器 ,既然 HAL 库了 ,
UM1785 也没有说 : 具体 判断 该次中断 是 上升?
还是 下降的 【我配置成 上升/下降 双向中断】。
上升 需要干 上升的事情 ,下降 需要干 下降的事情。
|
|