2023-10-27 17:52:14 [显示全部楼层]
8837浏览
查看: 8837|回复: 1

[教程] 一种简单定时运行程序的方法

[复制链接]
本帖最后由 TRIM 于 2026-2-2 21:40 编辑

【补】【2026/02/02】
今天突然发现帖子被一用户收录了,忘记自己竟然写过这样的帖子,那时还是初中吧
之前些程序一直是阻塞式的,于是自己摸索出了这种方法,但现在回头看,这种方法似乎是早就经常被使用的那种
另外,似乎系统定时器更加好些:
在开发板上,系统通过时钟中断来触发定时器,需要的资源更少,在处理精度要求高时更加高效、稳定
当然,写些不重要的程序,用些这种方法,还是不错的,这帖就留着给新手看看吧
----------------------------------------------------------------------------------



在编写程序时,我们在循环中一般需要隔一段时间运行一次代码,类似这种一种简单定时运行程序的方法图1
但是,在使用过程中发现了许多缺点
1.在运行程序时,需要一定的时间(尤其是需要有等待的),重复循环的时间其实大于5秒
2.在这个循环中,若想运行另一段需要一直重复执行(不需要延时)的代码,十分不方便
于是,探索出一种精确的定时重复执行的方法,如下:
一种简单定时运行程序的方法图2
可以看到,在循环中,用start_time变量保存程序每一次开始运行的时间,等到实际运行时间start_time的差大于等于5秒,再运行一次,如此反复
这样,可以更精确地运行,并且可以同时运行其他定时或不定时的程序,打破定时器和多线程数量有限的局面
【文章有些句子似乎有点难断句(作者语文不好),用加粗来分隔词语】




本帖被以下淘专辑推荐:

木子呢  管理员

发表于 2023-10-30 16:34:56

感谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

© 2013-2026 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail