单片机c语言里怎么用2个定时器

 我来答
匡茹以7
2020-02-11 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:26%
帮助的人:946万
展开全部
有几个步骤。
首先说明一下几个和定时器有关的寄存器
第一,方式控制寄存器TMOD,地址89H,不可位寻址,这个寄存器可以对定时器的工作方式进行设置。
第二,TCON寄存器,地址88H,可以位寻址,控制寄存器的开启关闭,寄存器的溢出标志也在这个寄存器中。
第三,中断控制寄存器IE,用来控制各中断的开启或关闭。
现在开始介绍2个定时器的用法
1。设置TMOD
2。分别给两个定时器赋初值
3。开中断
4。开启定时器
5。设置循环语句等待中断
下面举一个例子:
#include
void
main(void)
{
TMOD=0x01;//前四位控制t1,后四位控制t0
TH0=0x00;//赋初值
TL0=0x00;
TH1=0x43;
TL1=0x32;
EA=1;//开总中断
ET0=1;//开t0中断
ET1=1;//开t1中断
TR0=1;//开启定时器t0
TR1=1;//开启定时器t1
while(1)//等待中断
{
}
}
赫菊孛歌
2020-05-13 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.2万
采纳率:30%
帮助的人:840万
展开全部
是51单片机吗?
如果是51单片机,你可以使用tmod设置两个定时器,然后使用tr0、tr1分别启动两个定时器。pt0置为“1”,就可以中断定时器1的服务函数,相反,如果pt1置为“1”就可以中断定时器0的服务函数。
如果不设置pt的值,默认为“0”,这样的话,t0和t1谁也不能中断谁。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冯振梅初癸
2019-01-14 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:31%
帮助的人:967万
展开全部
你设置工作模式TMOD,看你要的定时器T0与T1都选上,先找个书看看那个该选,那个不该选??这些随便一个单片机书都会有的...有什么不懂再联系我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式