首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

请教大家有没有定时器的例子

2013-06-25 
请问大家有没有定时器的例子请问大家有没有定时器的例子,我想在一个程序里,按一个按钮后,当到一定时间时,L

请问大家有没有定时器的例子
请问大家有没有定时器的例子,我想在一个程序里,按一个按钮后,当到一定时间时,LED1灯亮起来,另一时段时LED2也亮起来
void main(void)
{
init_sys();
delay_ms(900);
tx_buf("testtesttestest",16);
lcm_init();
while(1)
{
            if(key_1=1){亮第二个灯;key_1=0;}
}
}
void Timer0(void) interrupt 1
{
TH0=(65535-10000)>>8;
TL0=(65535-10000)&0X00FF;
if(key==0)
{
        if(kcnt<200)kcnt++;
if(kcnt==2)key_1=1;
}
else kcnt=0;
key=1;
}

[解决办法]
程序懒得写了,给你一个思路吧,使用单片机的定时器\计数器功能,工作再定时器模式,两个定时器的定时时间不同,再进行键盘扫描,扫描到有按键按下时开中端和定时器;在终端函数里点亮LED灯,由于定时时间不一样,会在不同的时间点亮
另一个办法就是自己写延时函数了
推荐第一个种,能加深定时终端的了解
[解决办法]
支持二楼,不过也不用使用两个定时器,直接在定时器中断中进行计数,代替延时,然后也能够保证Led2每次都在Led1后亮

热点排行