要实现的功能: 当按键按下时,flag=1,当满足flag=1这个条件时,一直循环某个函数
我是这样写的:
void anjian() //按键检测函数
{
if(key==0)
{
delay(5); //延时5ms
if(key==0)
flag=1;
}
}
void main()
{
anjian();
while(flag==1)
{
**(); //某个函数
}
}
调试发现while里面的函数只执行了一次,不知道问题出在了哪里..
要想实现我这个功能,应该怎样写才对? 求大神指教
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
void main()
{
while(1)
{
anjian();
if(flag==1)
**(); //某个函数
}
}
我现在改成这样了,但还是不能实现循环,也是执行一次就停了,函数里面也没有让flag置0的操作,而且我让数码管输出了flag的值,按键按下后,flag的值是一直没变的。
我是在proteus上面仿真的,用的89C51芯片,确实没有连复位电路,你看是这个原因吗
一周热门 更多>