TH0=0xFC和TL0=0x67怎么理解?在51单片机定时1ms怎么得前面的数值?

 我来答
惠企百科
2022-09-28 · 百度认证:北京惠企网络技术有限公司官方账号
惠企百科
惠企百科网是一家科普类综合网站,关注热门中文知识,集聚互联网精华中文知识,本着自由开放、分享价值的基本原则,向广大网友提供专业的中文知识平台。
向TA提问
展开全部

频率是12M时,需计数的脉冲个数是1000,因此定时器初值是(65536-1000)。

其中高8位代表的是有多少个256,低8位是不足256部分。

1 mS 应该用

TH0=(65536-1000)/256; // 定时时间 1mS

TL0=(65536-1000)%256;

(65536-1000) 与 -1000 不是一个概念

(65536-1000) = 64536 十六进制 为 0xFC18

-1000 为负1000 编译后的 十六进制 会变成 0xFB18

扩展资料:

定时设置完成后,应按“设定”键检查多次定时设定情况是否与实际情况一致。如有异,请按时间需要进行调整或重新设定。

注:如果每天不需要设定20组,而其他组已设定,必须按“清除”键,将多余各组的时间程序清除。

如设置的时间程序是跨天的,需要逐一将“开”与“关”时间程序相对应的星期模式对应好。

参考资料来源:百度百科-定时器

百度网友97988ad7e4
2022-11-26
知道答主
回答量:8
采纳率:0%
帮助的人:5206
展开全部
c51单片机需要用到下面的概念:
时钟频率=11.0592兆赫兹=11059200赫兹
时钟周期 = 频率的倒数=1 / 11059200
机器周期=12个时钟周期=12 / 11059200
开始计算:
下面的x指的是多少个机器周期才能到达1ms也就是0.001s
x * (12 / 11059200) = 0.001(秒)
x = (0.001 * 11059200) / 12
x = 921.6 (机器周期个数) 约等于 921(机器周期个数)
由于装填计时器数据时需要用到16位所以最大为0xFFFF=65536
由此可得最终填充的数据为 y = 65536 - 921 = 64615
换算成16进制 = 0xFC67
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式