找回密码
 注册会员
搜索附件  
MCU资讯论坛 附件中心 单片机论坛 51单片机论坛 Text1_-_副本_(2).rar

Text1_-_副本_(2).rar

 

我是新手,有问题请教大家,关于c语言的:
4个按键分别控制4个led,第四个按键长按后进入倒计时模式,时间到关闭led1~led3.

我现在的问题是1在单片机进行倒计时时按键不起作用,2长按第四个键后我希望倒计时的时间可以通过键盘修改

哪位老师能帮我改改程序啊,小弟先谢谢了!@

我的程序部分

void shuma()
{
TMOD=0x10; //设置为T1定时器
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
ET1=1;
EA=1;
TR1=1; //开中断
d=10;//倒计时设定10秒
while(2)
{
display();
if(d==0)//倒计时到、
{
EA=0;
P0=table[0];
P1=0xf0;
LED1=LED2=LED3=1;
DELAY_MS(100);
P1=0xff;
break;
}
}
}

void int1() interrupt 3 //T1中断,时间是5ms
{
uchar n;
TH1=(65536-5000)/256;
TL1=(65536-5000)%256;
n++;
if(n>=200)//1秒到
{
n=0;//n清零
d--;
}
}

void main( )
{key_init();//键盘初始化
while(1)
{
key_rxd();//读键

if(keys == 1)LED1=~LED1,LED2=LED3=1,bi(100);
if(keys == 2)LED2=~LED2,LED1=LED3=1,bi(100);
if(keys == 3)LED3=~LED3,LED1=LED2=1,bi(100);
if(keys == 4)LED4=~LED4,bi(100);
if(keys == 44)//第四键长按
{
shuma();
}
}
}


[ 此帖被zhoufeng30在2011-06-13 16:46重新编辑 ]


QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-24 06:49 , Processed in 0.035947 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

返回顶部