找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5504|回复: 18
收起左侧

51单片机如何精确延时且不占用程序时间?

  [复制链接]
ID:811405 发表于 2021-2-7 11:26 | 显示全部楼层 |阅读模式
1黑币
如何让51单片机在进行精确定时的同时不占用其它程序的时间,执行定时程序的同时也不影响程序其它功能。

回复

使用道具 举报

ID:359272 发表于 2021-2-7 13:04 | 显示全部楼层
使用定时器,中断中设置标志位,主循环中判断执行业务逻辑
回复

使用道具 举报

ID:883242 发表于 2021-2-7 13:40 | 显示全部楼层
定时器自动重装载,中断处理程序进行变量递增。
回复

使用道具 举报

ID:854384 发表于 2021-2-7 13:46 | 显示全部楼层
可以通过定时/计数器试试,这样可以实现较短时间的影响,几乎是同时的
回复

使用道具 举报

ID:517466 发表于 2021-2-7 13:52 | 显示全部楼层
使用定时器中断。
回复

使用道具 举报

ID:752974 发表于 2021-2-7 14:01 | 显示全部楼层
要精确延时,就得用定时器,有关延时代码用汇编,再经测试,调整预装的数据。
回复

使用道具 举报

ID:277550 发表于 2021-2-7 14:19 | 显示全部楼层
单CPU,完全不占用别的过程的时间,是不可能的。不影响功能,可以设计到。
回复

使用道具 举报

ID:429356 发表于 2021-2-7 14:34 | 显示全部楼层
定时器
回复

使用道具 举报

ID:824490 发表于 2021-2-7 16:09 | 显示全部楼层
定义好程序结构,用定时器中断,是可以的
回复

使用道具 举报

ID:743654 发表于 2021-2-8 08:55 | 显示全部楼层
用定时器中断
回复

使用道具 举报

ID:236982 发表于 2021-2-8 12:41 | 显示全部楼层
定时器中断不占用
回复

使用道具 举报

ID:390416 发表于 2021-2-8 18:43 | 显示全部楼层
定时器 +  我们的框架式编程思路
回复

使用道具 举报

ID:47286 发表于 2021-2-8 19:49 | 显示全部楼层
楼上的师兄们都说的很清楚了 用定时器中断 要补充的是 严格的说不可能不占用程序时间 定时器产生中断后 中断服务中的判断和计算也一样消耗程序时间 只是比让cpu空转死等那种好多了 这点跑简单的程序没问题 但程序大了还是有影响的
回复

使用道具 举报

ID:115204 发表于 2021-2-9 07:26 | 显示全部楼层
定时器中断占用的资源最少
回复

使用道具 举报

ID:811405 发表于 2021-2-9 09:44 | 显示全部楼层
slf252 发表于 2021-2-7 13:04
使用定时器,中断中设置标志位,主循环中判断执行业务逻辑

好的,试试是神马样
回复

使用道具 举报

ID:811405 发表于 2021-2-9 09:45 | 显示全部楼层
Hephaestus 发表于 2021-2-7 13:40
定时器自动重装载,中断处理程序进行变量递增。

嗯,好的,谢谢
回复

使用道具 举报

ID:420836 发表于 2021-2-9 09:59 | 显示全部楼层
最好使用定时器中断
回复

使用道具 举报

ID:664567 发表于 2021-2-9 10:46 | 显示全部楼层
最好的办法就是利用定时器中断
回复

使用道具 举报

ID:879537 发表于 2021-2-9 13:46 | 显示全部楼层
编写一个定时器中断程序,需要时打开中断,即可定时
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表