单片机时钟频率为12MHz,分别求定时0.1ms时在工作方式0、1下的定时器的初值。

 我来答
wolf_lhy
2013-02-19 · TA获得超过6607个赞
知道大有可为答主
回答量:1090
采纳率:66%
帮助的人:532万
展开全部
就以普通51单片机即12T,r定时器0为例:
工作于方式0时,是13位的,低5位赋值给TL0,高8位赋值给TH0;
工作于方式1时,是16位的,低8位赋值给TL0,高8位赋值给TH0;
而0.1ms,即100us,又在12MHz,所以,需要计时 100个数字

所以,最简单的办法是:

定时器0:
TH0 = (8192 - 100)/32;
TL0 = (8192 - 100)%32;
也可以:
TH0 = (8192 - 100)>>5;
TL0 = (8192 - 100)&0x1F;

定时器1:
TH0 = (65536 - 100)/256;
TL0 = (65536 - 100)%256;
也可以:
TH0 = (65536 - 100)>>8;
TL0 = (65536 - 100)&0xFF;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式