mcs-51单片机定时器应用的初始化步骤有哪些

 我来答
tony_sgt
2018-03-08 · TA获得超过8423个赞
知道大有可为答主
回答量:5330
采纳率:66%
帮助的人:1205万
展开全部
TMOD、TH0或TH1、TL0或TL1、EA=1;TR0或TR1=1;
TMOD选择方式。TH0=(65536-x)%256;x为定时时间,x<65536
EA=1;开中断;TR1=1;启动定时器。
例如:
TMOD=0X10;
TH1=0X4b;
TL1=0Xfe
TR=1;
“TMOD=0X10;”设置定时器1模式为模式一(16位定时器/计数器)
“TH1=0X4b;TL1=0Xfe;”设置定时器初值
"TR1=1"启动定时器1
t=(2^16-初值)*机器周期=(2^16-初值)*时钟周期*12
此例中:初值=0x4bfe=19454
t=(65536-19454)*1/11095200*12=0.04983993078087821760....约为0.05s即50ms
公式解释:
每个机器周期产生一个计数脉冲,计时器寄存器最大允许2^16,大于2^16就溢出触发中断。初值为T,则还有65536-T次计数,每次计数用时一个机器周期,所以总用时:t=(2^16-初值)*机器周期=(2^16-初值)*时钟周期*12
初值设置:把所需时间T代入上式解出初值0xAABB,把0xAA作为TH,0xBB作为TL
也可以用上式推导出初值计算公式
百度网友b12a2e039
推荐于2016-09-05 · TA获得超过1533个赞
知道小有建树答主
回答量:819
采纳率:0%
帮助的人:691万
展开全部
TMOD=0x01; //设置T0为模式1

TH0= (65536-1000)/256;
TL0= (65536-1000)%256; // 设置1000初值
EA=1 ;//开总中断
ET0=1;//开定时器中断
TR0=1; //开始计数
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式