导航:首页 > 操作系统 > 单片机定时器定时公式

单片机定时器定时公式

发布时间:2023-01-11 09:46:42

㈠ 51单片机的定时器计时怎样计算

51但单片机的定时,要先计算,然后根据要求编写程序,计算会用到公式:t=Tc×(2L-TC)=12/f×(2L-TC) t是定时时间 Tc是机器周期 fs是晶振频率 L是计数器的长度 对于T0,T1有下面三种方式: 方式0:L=13 方式1:L=16 方式2:L=8 对于T2:L=16 然后剩下的就是按照算出的常数编写程序了,就靠你自己了。。。。

㈡ 关于单片机定时器的求算,怎么算出来的

51单片机定时器是“溢出”计时的,所以计算方法是:
(假设定时X毫秒(这里设定在溢出范围内),晶振频率是F兆赫兹),那么计算公式是:
初值=65536-(X*1000)*(F/12)

㈢ 51单片机各种位数定时器初值计算方法

对12MHz ,1个机器周期 1us ,12/fosc = 1us


方式0是13位定时器,最大时间间隔 = 2^13 = 8.192ms

方式1是16位定时器,最大时间间隔 = 2^16 = 65.536ms

方式2是8位定时器,最大时间间隔 = 2^8 = 0.256ms =256 us

方式3 仅适用于T0,此时T0分成两个8位计数器,T1停止计数

当选用定时器的方式1时,设机器周期为Tcy,定时器产生一次中断的时间为t,那么需要计数的个数N=t/Tcy,装入THX和TLX中的数分别为:

THX = (2^16 - N)/256 TLX = (2^16 -N )%256(此处的X为定时器0或定时器1)

公式为:(2^y - X)*Tcy = t

Tosc= 1/ fosc

一个机器周期 = 12个时钟周期 = 12/fosc

溢出速率 = 1 / 溢出时间
故:初值X = 2^y – t/Tcy

THX = 高八位
TLX = 低八位

注:

X:定时器初值

N:计数值

y:定时器工作方式

fosc:晶振频率

Tcy:机器周期,Tosc:时钟周期
Tcy = 1/Tosc

㈣ 51单片机用定时器计时应该如何计算求大神支招

这个其实很简单的,你只需要知道一个条件即可:晶振频率。
因为51单片机的机器周期计算公式是12/晶振频率MHz,若晶振为12MHz,则机器周期就是12/(12×10^6)=1us,也就是说计数器没1us计数一次。
那么有了这个条件就好办多了,一般来说,12MHz晶振下,16位定时器满计数是65536次,每次1us,最大就能计时65.536ms,则65536减去多少就是定时多少,如(65536-X)/256,就是定时X微秒。
那么如果晶振不是12MHz,就要把上述的X乘以12/晶振,得到的值就是定时时长。原理相同。
有不懂的地方随时回复我。
希望我的回答能帮助到你。

㈤ 单片机定时器初值计算方法有哪些

呵呵 正确为你解答:
1 可以按定时时间的计算公式, 计算出定时器的时间常数X:
定时时间T=(2的N次方-X)12/单片机晶振频率
2 N为定时器的工作方式:
方式0时,N=13
方式1时,N=16
方式2时,N=8
3 根据定时时间和工作方式,计算出时间常数X
把X转换成二进制数,高8位送给TH1,低8位送给TL1,就可以启动定时器开始定时了。

例如: 工作在方式1,定时时间为1000微秒 晶振频率=12MHZ
则 定时时间T=(2的16次方-X)12/12MHZ=1000 解出 X=64536=FC18H

呵呵 如满意 请选择满意回答

㈥ avr单片机定时器TCNT0=,公式是什么

TCNT0 是8位T0寄存器, 所以赋值范围是0~255,。

晶振 / 分频 = 分频后的时钟

1 /分频后的时钟 = 分频后的每个时钟周期

定时器溢出时间 /分频后时钟每周期时间 = 定时器经过N + 1次累后溢出

256 -定时间经过N次累后溢出 =TCNT0预装值、重装值

例子:8M晶振; 64分频;定时器溢出时间定为 1ms

8000 000 / 64 = 125000(分频后的时钟)

1 / 125000 = 0.000 008 s (分频后的每个时钟周期)

0.001s / 0.000 008s = 125 (定时器经过125 + 1次后溢出)

256 - 125 = 131 (TCNT0预装值、重装值)

㈦ 单片机定时器计算

计算定时器,最原始的公式是(65536-初值)*12/晶振值=定时的时间,由此式子推出:初值=65536-(晶振值*定时时间/12)。则TH0=初值/256,TL0=初值%256,最终结果就是
TH0
=
255-CLOCK/TIME_PER_SEC/12/256;
TL0
=
255-CLOCK/TIME_PER_SEC/12%256;
其中除以TIME_PER_SEC,是因为TIME_PER_SEC表示要定时的时间的倒数。

㈧ 51单片机定时器初值公式

1.简单说起,256表示一个8位分界点,对它求模得高位字节存在TH0中,求余得低位字节放在TL0中,拿十进制打比:15/10得十位1,15%10得个位数5
2.12Mhz时,单周期指令时间为12/fsoc=1us
方式1为16位定时/计数器
故定时1ms为:TH0=(2^16-1000)/2^8,
TL0=(2^16-1000)%256
当为11.0592MHz时,单周期指令时间为12/fsoc=12/11.0592us
由于采用方式0,为13为定时器,TH0高8位和TL0的低5位
故定时1ms为:
TH0=(2^13-1000/(12/11.0592))/2^5,
TL0=(2^16-1000/(12/11.0592))%2^5
这么晚了 写写不容易,多给些分以此鼓励俺
O(∩_∩)O~

㈨ 请问哪位能仔细的讲一下51系列单片机定时器定时计算时间的公式或方法

这个很好理解啊,假设定时器工作在方式1,也就是最大定时为65536US(假设12M晶振,51单片机)
那么你想定时多小为Xus
就直接拿TL0=(65536-x)/256 TL1=(65536-X)%256就可以了的

就好像一个杯子,他最多能装1L的水,而你只想往杯子里加400ml,那么你就必须先往杯子里装
(1000-400)ml的水, 这样的话,是不是你再往杯子里加400Ml的水,就会溢出呢,定时器也是这样的

阅读全文

与单片机定时器定时公式相关的资料

热点内容
查看dns地址命令 浏览:765
android录屏工具 浏览:838
成都互动直播系统源码 浏览:953
usb蓝牙android 浏览:405
服务器显示error1什么意思 浏览:708
python代码精简 浏览:457
文件加密了怎么找到了 浏览:193
jellyfin插件怎么选择主服务器 浏览:836
asp用户注册源码 浏览:48
什么是照片压缩文件 浏览:392
java调用js代码 浏览:979
昆山市民app怎么修改身份信息 浏览:779
php登陆次数 浏览:744
python字符转成数字 浏览:822
海川用的是什么服务器 浏览:376
口才是练出来的pdf 浏览:458
云服务器哪个公司性价比高 浏览:517
源码论坛打包 浏览:558
php怎么做成word 浏览:692
python批量生成密钥 浏览:492