⑴ 单片机定时器初值计算方法
T=(2的N次方-X)12/单片机晶振频率
2 N为定时器的工作方式:
方式0时,N=13
方式1时,N=16
方式2时,N=8
注意晶振频率,晶振频率的十二分之一是机器频率,再取倒数是机器周期,把定时时间换算成多少个机器周期,当作T代入上式求出X,然后把X化为二进制数,(以方式1定时器0为例)高八位存入TH1,低八位存入TL1
⑵ 请问单片机定时器的初值是怎么设的
如果你用T0,就用TH0=0X__;TL0=0X__;复初值,TH0为高8位,TL0为低8位;T1、T2是一样的。
⑶ 51单片机定时器初值怎样计算
首先要知道一个计时脉冲的周期,计时脉冲频率是晶振频率的1/12,晶振12M时,计时脉冲频率是1MHz,周期是1us,因此定时1mS就是1000个脉冲,由于51定时器是加法计数,计数到最大值65536溢出,定时结束,产生中断,因此初值应该写为65536-1000,计数器分高8位和低8位,高8位的1代表256,低8位是不足256的那一部分,因此高8位初值为TH=(65536-1000)/256,低8位TL=(65536-1000)%256。
⑷ 单片机定时器初值计算方法有哪些
呵呵 正确为你解答:
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
呵呵 如满意 请选择满意回答
⑸ 关于单片机定时器赋初值的问题
要理解这个问题需要 看单片机原理 的 定时器 章节
首先 这个问题是 选择的 16位定时模式
定时初值=65536-50000=15536
因为MCS51单片机对定时器赋值 一次只能访问8位(即 TH0 和 TL0分开赋值)
也就是将 15536 拆成高八位和低八位
(65536-50000)/ 256 就是求高八位 数值
(65536-5000)% 256 就是求低八位 数值
如果还有不理解之处,请继续提问!
⑹ 单片机定时器初值设定公式
假设定时时间是X毫秒,那么初值为:
TH1=(65536-X*1000*晶振频率/12/1000000)/256;
TL1=(65536-X*1000*晶振频率/12/1000000)%256;
⑺ 单片机定时器赋初值问题
定时器是16位的,取整是高8 位,取余是低8 位。
例:50ms定时
TH0=(65536-50000)/256=60(整数60,余数176)=3CH
TL0=(65536-50000)%256=176=0B0H
⑻ 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单片机的系统时钟周期均为晶振的12分频。 单片机的定时器每计时一次为一个系统时钟周期(如果晶振频率为12MHz,一个系统时钟周期为12/(12M)=1/1000000秒) 单片机定时器定时是顺计时,计数到65536的时候才会产生中断,要定时2ms就得计时2000次,因此就用65536-2000 展开 作业帮用户 2017-07-06 举报
⑽ 单片机定时器装初值啥意思
定时器启动后,是自动加一的,加到了 65536,就会产生中断。
从零开始加,加到了 65536,产生中断,就用了 65536 us。
如果从55536开始加,加到 65536,产生中断,就用 10000 us。
初值,用来控制定时时间。
具体时间,还和定时器的方式,以及所用的晶振频率有关。