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

STM32的滴答定时器中断打断主函数while循环吗

liuxiaofei126 2019-12-14 浏览量:4494

做了一个LED模块,初始化时设置了LED闪亮参数,具体的闪烁任务在滴答定时器1MS中断执行,没在主函数while循环执行,整个程序就一个滴答定时器中断,但是在主函数while循环中有AD轮询采样,

这样的1ms中断会影响AD采样?

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
所有亮答 数量:9
  • 会的,adc采集放在定时中断里面吧比较好,主循环优先级是最低的,会被所有中断打断

  • 会打断,但不会影响你的功能。 定时器中断里只是做了LED闪烁,几十个时钟周期而已,对主程序的延时影响可以忽略不计。

  • 主流程中的普通操作都会被中断打断,包括while循环。

    是否该放在中断中执行,需要看相应操作是否需要那么精确的时间要求,你这个应用一般来说AD采用放中断中,闪烁放主循环可能更恰当,因为闪烁是对人看的,人对那么短的区别不敏感,只要还在闪就不会觉得有问题,即这里AD采样权限应该更高。

    当然其他环节中就不一定啦,所以需要根据具体情况安排相应任务优先级(设置中断等级之类)

  • 所有的中断都是会打断while循环的啊,你可以把AD的程序放在中断中了,用一个1ms的定时器中断,并把优先级设置高一些

  • 会被中断打断的。

    这个是单片机功能限制,中断一定会打断顺序执行的程序

    你可以在滴答定时器中断进行ADC的读取

  • 会,滴答定时器中断也是中断,只要是中断就能打断主循环的

  • 所有的中断都是会打断while循环的。

    中断的实时性就体现在这里了。

    在程序设计是,不要在while中设置比较重要的程序,实时性不高的要放在这里。实时性高的放在中断中

  • 当然是会打断的,滴答定时器定时时间到会产生中断,在中断执行任务会打断主程序

  • 滴答定时器本质还是一个定时器,在内部的中断计数中, 要打断主函数去执行中断函数

相关问题

问题达人换一批

STM32的滴答定时器中断打断主函数while循环吗