找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2805|回复: 12
收起左侧

讨论一下,单片机主函数里加延时函数会影响定时器计数精准吗?

  [复制链接]
ID:299943 发表于 2022-4-30 15:44 | 显示全部楼层 |阅读模式
如题
回复

使用道具 举报

ID:77479 发表于 2022-4-30 16:36 | 显示全部楼层
不会的,定时器是独立工作的。
回复

使用道具 举报

ID:220661 发表于 2022-4-30 16:50 | 显示全部楼层
应该说:自动重装的不会受影响。
回复

使用道具 举报

ID:883242 发表于 2022-4-30 16:55 | 显示全部楼层
为什么会影响?单片机跑跟定时器无关的代码,和定时器运转完全没有关系。
回复

使用道具 举报

ID:332444 发表于 2022-4-30 20:56 | 显示全部楼层
会有些影响相应中断又是是需要时间的
回复

使用道具 举报

ID:1023023 发表于 2022-4-30 21:23 | 显示全部楼层
应该是没有影响的,这个延时不是用定时器弄的精准延时和定时器没关系的
回复

使用道具 举报

ID:624769 发表于 2022-4-30 22:26 | 显示全部楼层
延时函数 只是一种说法, 其实就是一个没有意义的代码的执行过程。
你说延时函数是否会影响定时器计时精准, 其实就和问 单片机主函数里面 在执行代码,会不会影响定时器计时精准一样……
回复

使用道具 举报

ID:514254 发表于 2022-5-1 00:29 | 显示全部楼层
反过来定时器会影响延时函数精度。
回复

使用道具 举报

ID:916679 发表于 2022-5-1 00:30 | 显示全部楼层
说到延时函数,好久没用过51的我拿了个12系列的,在我完全没有查看任何说明文档的时候就直接把89系列的程序稍微做了点改动,烧到12上了,结果就是关于时间和定时的程序模块执行全部乱了,,,赶紧查了一下,原来12系列一个振荡周期=一个机器周期,者处理速度比89快了5到10多倍。指令集也不一样,自然个语句执行周期不一样,软件延时函数不能像之前那样,不过最后还是直接再ISP软件里直接生成对应延时函数和定时器配置函数。但老想着有没有啥好办法写个通用的延时函数,最后再哔站看到一位大神更具软件生成的微秒延时函数结合赋值语句和循环语句指令周期查指令集表,硬是一条语句一条语句算出来了。毫秒延时通过反复调用软件生成的微秒延时函数实现。我记着好像基本误差不超过50微秒还是多少,但我觉得已经非常不错了。
回复

使用道具 举报

ID:584814 发表于 2022-5-1 23:26 | 显示全部楼层
理论上延时不影响定时器,但反过来不一定。
回复

使用道具 举报

ID:278457 发表于 2022-5-3 03:25 | 显示全部楼层
没有什么影响,就是单片机计算速度有一点点影响.可以忽略不计.
回复

使用道具 举报

ID:420836 发表于 2022-5-3 08:54 | 显示全部楼层
单片机定时器是基于中断的。 它们不受主函数中的延迟调用的影响。
回复

使用道具 举报

ID:711539 发表于 2022-5-3 09:51 | 显示全部楼层
主函数里的延时函数不操作定时器的寄存器就不会影响定时器中断计数。而定时器中断设置过小的话,就会影响主函数里的延时精度。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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