想在定时器在中执行一段函数,可是这段函数都超过20ms了

[复制链接]
549|9
手机看帖
扫描二维码
随时随地手机跟帖
原味_郭| | 2016-4-10 15:41 | 显示全部楼层
定时器中执行很大时间的程序,这是江湖大忌,最好不要这样。

使用特权

评论回复
myidear| | 2016-4-12 08:30 | 显示全部楼层
那就设定一个标志位,把这段20ms的函数放在主函数中执行

使用特权

评论回复
chrise23| | 2016-4-19 16:08 | 显示全部楼层
尽量精简这段20ms的函数,或者设定一个标志位,在主函数中执行,执行完毕后再进行中断检测。

使用特权

评论回复
tomyoct|  楼主 | 2016-4-19 17:07 | 显示全部楼层
把定时器中的时间加大,比如1s中,这样20ms就没事了。但是需要根据你的实际情况添加的

使用特权

评论回复
magicoctoy| | 2016-4-19 17:24 | 显示全部楼层
这么大的一个时间,应该是串口发送,或者ad检测吧,最好不要放在定时器中。

使用特权

评论回复
Creas_Tall| | 2016-4-19 18:47 | 显示全部楼层
超过20ms,这个函数就没有必要再定时器中运行了。

使用特权

评论回复
叶覃| | 2016-4-20 20:32 | 显示全部楼层
定时器中加延时,会很大的影响效率的,千万不要这么干。

使用特权

评论回复
cnb12345| | 2016-4-26 16:41 | 显示全部楼层
这不科学

使用特权

评论回复
tomyoct|  楼主 | 2017-4-17 19:06 | 显示全部楼层
myidear 发表于 2016-4-12 08:30
那就设定一个标志位,把这段20ms的函数放在主函数中执行

这个是个好办法,中断中设置了标志位,检测到然后主函数执行了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

27

主题

232

帖子

0

粉丝