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

滴答定时器中断做延时函数会影响其他程序执行?

huihui163 2020-12-12 浏览量:1668
主循环里有滴答定时器中断函数做延时,会影响其他程序执行?比如mcu_systick_delay(200);
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 取决于你的设计,看你这个延时函数是如何写。我一般是在定时器中断中第递减一个计数值,这样就做到了延时不是死等待,这样就不影响后续的执行了。

    然后是你的处理函数要有及时的返回值。

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

其他答案 数量:5
  • 延时是直接死等在那里了,会阻塞其他任务的进行,操作系统的滴答定时器不一样,那个使用中断来进行任务调度。
    • 发布于2020-12-13
    • 举报
    • 评论 0
    • 1
    • 0

  • 会的,嘀嗒定时器是阻塞延时,所以延时的时候不能执行其他任务
    • 发布于2020-12-12
    • 举报
    • 评论 1
    • 0
    • 1
liuxiaofei126 回复了 yhj416606438 :都说了是滴答定时器中断了 回复

  • 抵达定时器也是定时器,所以他也有优先级,所以再使用的时候,一定要考虑好时序问题
    • 发布于2020-12-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 看你使用的滴答延时函数怎么实现的,一般来讲都是阻塞延时的,一个while一直查寻时间是否超时,所以这个时候cpu一直用来干延时这个事情,就阻塞了main里的其他任务。
    • 发布于2020-12-13
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个要看mcu_systick_delay这个函数是怎么实现的,参考HAL库那个延时函数,一般就没问题
    • 发布于2020-12-26
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

滴答定时器中断做延时函数会影响其他程序执行?