求个语句

2019-03-24 18:57发布

这个程序只有长按KEY1时灯才闪烁 如何加上几条让他变成只要一按下后再抬开KEY1灯无限闪烁呢?
#include<reg52.h>
#define uint unsigned int
sbit led1=P1^0;
sbit key1=P3^4;                  
void delayms(uint);
void main()
{
while(1)
{  
if(key1==0)
{
led1=0;
delayms(1000);
led1=1;
delayms(1000);
while(key1==0) ;
}
}
}
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
} 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
goalpeak
1楼-- · 2019-03-24 19:47
进入循环之前,判断按键按下以后,再判断下按键是否抬起,再进行灯的循环
有需要找我  QQ260568227
stayeagle
2楼-- · 2019-03-25 00:18
再加多个变量吧
比如
unsigned char a;
接着判断
if(key1==0){a=1;}
然后用a来进入循环
if(a==1)
{
……
}
有几个按键就加几个变量,用变量间接判断按键,很方便的,希望看的懂哈~~

一周热门 更多>