导航:首页 > 操作系统 > 单片机定时器4个小时有偏差

单片机定时器4个小时有偏差

发布时间:2022-06-13 04:54:11

1. 51单片机定时器不准确,请进

进入T1中断后关所有中断 EA= 0,同时里面的指令最好用汇编实现可以计算出指令运行时间,考虑上这一部分时间,同时把T1中断的优先级设定为最高优先级。只要你的晶振质量可靠定时还是非常准确的!

2. 单片机定时器做的时钟,定时不准。

单片机定时器做时钟,确切的说在环境温度变化不大的前提下,可以调整的很准,毕竟它是基于MHz级的晶振的,提两点建议,1】建议使用12MHz晶振;2】请注意对于不同的编程,定时器赋值时,如果需要50ms定时则绝不一定是赋值50000,也不一定是循环20次就是1S;你琢磨下这里的道理,你就明白了,具体方法是,找一个比较准的时钟,比如在线时钟,每10小时记录一次找出规律,细细调整,毕竟它是在微秒范围内进行调整,你肯定行的,祝成功。

3. 单片机数字时钟比实际时间的慢啊怎么办

单片机是利用定时器实现计时的,根据定时器的定时计算出的时间常数,是理想状态下的数值。
如晶振频率是12M,用定时器T0,按定时20ms 计算的时间常数
TH0=(65536-20000)/256=0XB1
TL0=(65536-20000)%256=0XE0
如果按这个数写程序,电子钟计时的时间肯定就比实际的时间慢。当然了,这需要时间长了,才能体现出来,如果只是计时几个小时是比较不出来的。必须是长时间的计时,比如计时一周以上就体现出来计时的误差了。
这是因为,单片机计时的误差还是比较小的,假如一天慢1秒,那计时一周了,就慢7秒,才会发现的。
为什么会慢呢,是因为定时到,要中断,单片机从响应中断,到在中断程序中重写时间常数,才能重新计时的,这是需要时间,只是这时间只有几个微秒。就产生了计时误差了。可是这向微秒的误差,累计一周后就累计成几秒了。
要计时比较准确的还是有办法的,就是给时间常数的TL0加几个数,来补偿误差。
通常加8就行,不过,还需要长时间的计时来校正。
在中断程序中的时间常数改为
TH0=0XB1;
TL0=0XE8; //这低8位加8,补偿误差
这样补偿后,还有误差,再改这低8位,慢了就加,快了就减

4. 单片机定时过程中是否存在误差,主要由哪些因素影响

那就这样说吧,误差有的可能性不大,你硬件上不出什么大毛病,晶振能正常工作,那就不存在误差了,重要的是你在编写程序的时候吧定时器的值算好就ok了。

5. 为什么51单片机的定时器计时不准确

中断函数里面尽量少放语句,如果产生脉冲波形就只放一个

6. 51单片机时钟不准,8小时就慢1分钟,请大家帮忙看看

不用外部的时钟,照样可以得到准确的时间,精度可以和晶振的精度相同。

采用定时器2,自动重装初始值,就是一个可行的方法。

采用定时器0、1,也可以,只是中断的次数,频繁了一些。

7. 关于51单片机定时器的问题。我用郭天祥的51学习班做了一个电子表,发现时间很不准

TH0=(65536-10000)/256;
TL0=(65536-10000)%256;关键点在这两句上11.0592的晶振要比12M的快,但是加上中断跳转指令执行的时间,还有中断执行的时间加在一起就慢了很多,要试着减掉这些时间,我得经验值是:中断不要很多,多了不是更增加执行时间了吗?我做时钟都是用最大的计时时间来减少中断插入的影响,这里用50ms,再减掉5毫秒就基本上差不多了。

8. 51单片机内置定时器制作计时的误差怎么产生的。

首先,单片机定时器的记数的频率是由单片机的时钟频率所决定的,而单片机的时钟频率是由外部晶振或内部震荡电路所决定的。不管是外部晶振还是内部晶振,本身都是有误差的!然后又受外部的温度、湿度、电磁干扰的影响,他们的频率也是在变化的。这是无法避免的。然后,人在操作时也是有误差的,例如51单片机工作在模式1的16位的定时器。当发生定时中断后,要重装定时器的初值,而执行这两条指令也是要花时间的。这个误差很小,可以忽略。最后就是当你 的中断函数过长,其执行时间已经超过了定时周期,这时候将会丢失中断。因为在发生下一次中断的时候,而CPU还在执行本次的中断服务程序。由于同优先级的中断不能被打断,所以就会丢失中断信号,这是产生了错误,而非误差,所以中断函数尽量短!

9. 51单片机定时器问题,定时不精准,差不多30s就有一秒的误差,

65536-46080=19456个机器周期。
你使用11.0592M,如果单片机是12T的话,那就是每秒有11059200/12=921600个周期
19456/921600=0.0211111秒
再加上你在中断函数中到TH0,TL0赋值的操作,包括,跳转,关键数据入栈,TH0,TL0赋值等的时间。
换句话说,你一次中断大概是0.021120秒
接下来,你就自己算吧

10. 请教单片机定时器问题。为什么我用定时器做秒钟溢出设计了一个闹钟,但码管显示时间不准(相差几倍)

是你接输出的时候信号线干扰了晶震的频率,时间就不准了

阅读全文

与单片机定时器4个小时有偏差相关的资料

热点内容
剪应力计算法 浏览:819
如何自己搭建url跳转服务器 浏览:983
广数980tb3用g83钻孔怎么编程 浏览:576
程序员上海与北京 浏览:405
安卓手机的动态照片为什么卡 浏览:538
ad编译集成库时最常见的问题 浏览:846
matlab微分方程编程 浏览:700
安卓手机如何打开esp文件 浏览:545
什么app能安装应用 浏览:199
手机用什么app看电视剧电影好 浏览:603
导入原理图为什么文件夹不显示 浏览:656
androidapp风格 浏览:211
php取服务器url地址 浏览:293
linux时间调度算法 浏览:771
单片机最小电路详解 浏览:185
请求要求命令 浏览:806
电脑文件夹发微信显示被占用 浏览:295
手机怎么看加密视频 浏览:207
怎样解压手机es文件包 浏览:661
2017年学什么编程 浏览:935