标题: 单片机定时器0的高位和地位关系以及怎么赋值,请大咖帮忙解答,谢谢 [打印本页]

作者: xiaobaiyg    时间: 2020-8-3 07:03
标题: 单片机定时器0的高位和地位关系以及怎么赋值,请大咖帮忙解答,谢谢
我在网上看到的程序给单片机定时器T0打开和给定时器高位和低位赋值:
TMOD=0X01;
EA=1;
ETO=1;
TH0=0Xfc;
TL0=0X18;
TRO=1;

程序中备注TH0=0xfc;TL0=0x18;中的0xfc和0x18是表示给
定时器0的赋值1ms的,师傅在讲课时说th0=(65536-50000)/256,
tl0=(65536-50000)/%256,然后通过判断执行20次等于1ms,怎么不一样,
这个是怎么得出来的,还有定时器高位和低位之间是什么关系?
搞不清!
作者: 压着我头发啦    时间: 2020-8-3 11:40
http://www.51hei.com/bbs/dpj-103111-1.html,好好学习下。然后了解下进制转换
作者: 蓝魄    时间: 2020-8-3 14:17
65536是16位的,而TH0和TL0是8位的,所以要拆分成两个8位的值分别给TH0和TL0.又因为8位最大值是256,所以除以256就能得出高位了,/和%是商和余数,商就是高位TH0的字节型数据(8位),余数就是TL0的字节型值了。50000us*20是等于1s,你应该搞错了。被减数就是定时时间,单位为us。
作者: wps10025    时间: 2020-8-3 14:25
蓝魄 发表于 2020-8-3 14:17
65536是16位的,而TH0和TL0是8位的,所以要拆分成两个8位的值分别给TH0和TL0.又因为8位最大值是256,所以除 ...

感谢大神解惑。我也是有此疑惑,现在明白了。有时候教材讲得多,而没有抓住重点。
作者: xiaobaiyg    时间: 2020-8-3 18:44
压着我头发啦 发表于 2020-8-3 11:40
http://www.51hei.com/bbs/dpj-103111-1.html,好好学习下。然后了解下进制转换

收到,谢谢,我会努力的,谢谢
作者: xiaobaiyg    时间: 2020-8-3 18:46
蓝魄 发表于 2020-8-3 14:17
65536是16位的,而TH0和TL0是8位的,所以要拆分成两个8位的值分别给TH0和TL0.又因为8位最大值是256,所以除 ...

谢谢,讲解的那么细,谢谢
作者: 51黑科技人    时间: 2020-8-3 20:54
TH0是高八位,TL0是低八位,在赋值时是将值高八位给TH0,低八位给TL0,题主给出的/256和%256是计算高低八位的方法




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1