stc12c5a60s2两个定时器能够同时使用吗?

[复制链接]
3901|4
手机看帖
扫描二维码
随时随地手机跟帖
cellagent|  楼主 | 2013-10-28 15:13 | 显示全部楼层 |阅读模式
如题。能够同时使用的话怎样用?假如我想定两个时间,时间一到led闪烁:
{
TMOD = 0x11;//两个定时器都工作在方式1
TH1 = TL1 = 0x00;//定时器1的定时时间
TH0 = TL0 = 0x7F;//定时器0的定时时间,定时时间是随便设置的
ET0 = 1;
ET1 = 1;
EA = 1;
TR0 = 1;
TR1 = 1;
}
定时器中断程序是让IO口的led闪烁。这样写行吗?

相关帖子

ayb_ice| | 2013-10-28 15:24 | 显示全部楼层
这些代码只是配置,启动了定时器,并没有控制LED

使用特权

评论回复
cellagent|  楼主 | 2013-10-28 15:32 | 显示全部楼层
ayb_ice 发表于 2013-10-28 15:24
这些代码只是配置,启动了定时器,并没有控制LED

嗯,我知道。我的意思是这样配置就行?led控制:
void Timer0() interrupt 1
{
i++;
if(i == 100)
{
i = 0;
led1 = ~led1;
}
}
//定时时间约等于(65.536ms/12)*100=550ms,1T的单片机时间应该是这样算吧。
//550ms应该能看到led闪烁了,为什么实物中的led不闪烁呢?

使用特权

评论回复
cellagent|  楼主 | 2013-10-28 15:33 | 显示全部楼层
cellagent 发表于 2013-10-28 15:32
嗯,我知道。我的意思是这样配置就行?led控制:
void Timer0() interrupt 1
{

初始化时TH0 =TL0 = 0x00;16位定时器。

使用特权

评论回复
cellagent|  楼主 | 2013-10-28 15:41 | 显示全部楼层
cellagent 发表于 2013-10-28 15:32
嗯,我知道。我的意思是这样配置就行?led控制:
void Timer0() interrupt 1
{

问题解决了。起初没看闪烁是因为时间太长了,改为(i==10)后,分别看到两个led的灯闪烁。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

171

帖子

3

粉丝