• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32F4的定时器1与定时器10用同一个中断,怎么区分

莱克迷KW 2020-12-07 浏览量:487
void TIM1_UP_TIM10_IRQHandler(void)
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 在刚进入中断了里面判断下就行了啊

    if (TIM_GetITStatus(TIM1 TIM_IT_Update) != RESET)
    {
        TIM_ClearITPendingBit(TIM1 TIM_IT_Update);

    }
    else if (TIM_GetITStatus(TIM10 TIM_IT_Update) != RESET)
    {
        TIM_ClearITPendingBit(TIM10 TIM_IT_Update);

    }

    • 发布于 2020-12-07
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:5
  • 在中断里面通过中断标志位判断,不过这样会降低执行效率
    • 发布于2020-12-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 用的是同一个中断但是它的中断标志是不一样的,你区分不同的中断标志就可以了。最好的办法就是不要用同时用这两个定时器,那么多定时器呢你非要用一样的吗?
    • 发布于2020-12-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 在中断回调函数里判断中断的来源,然后再对中断进行处理。这是最常规的方法
    • 发布于2020-12-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 是同一个中断函数,可以在中断函数中来判断中断标志位来区分是哪个定时器的中断
    • 发布于2020-12-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 在中断处理函数里面再读取TIM1与TIM10的寄存器,判断中断具体是哪个定时器产生的
    • 发布于2020-12-26
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32F4的定时器1与定时器10用同一个中断,怎么区分