51单片机do....while循环语句求解? 20
keyscan()是一个矩阵键盘扫描函数num的作用是接收按键返回的键值,因为返回的键值是0-9,10.11.12.13.14.15我只需要0-9所以设置了个条件if(n...
keyscan() 是一个矩阵键盘扫描函数
num的作用是接收按键返回的键值,因为返回的键值是0-9,10.11.12.13.14.15我只需要0-9所以设置了个条件if(num<10),但是我发觉第一次进if(num<10)这个函数以后就一直在这里面循环,怎样做使得这个if(num<10)只执行一次,就跳出来呢?
do{
num=keyscan();
if(num<10)
{
}
}
while(1);
................... 展开
num的作用是接收按键返回的键值,因为返回的键值是0-9,10.11.12.13.14.15我只需要0-9所以设置了个条件if(num<10),但是我发觉第一次进if(num<10)这个函数以后就一直在这里面循环,怎样做使得这个if(num<10)只执行一次,就跳出来呢?
do{
num=keyscan();
if(num<10)
{
}
}
while(1);
................... 展开
5个回答
展开全部
另外设置一个变量,记录是否进入过if,如果进入过就不再进去了,例如:
if_pass=0;
do{
num=keyscan();
if(if_pass==0 && num<10)
{
if_pass=1;
}
}
while(1);
if_pass=0;
do{
num=keyscan();
if(if_pass==0 && num<10)
{
if_pass=1;
}
}
while(1);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我想你可能想这个样子.即如果是有效按键,就跳出来处理.
加一个变量.
key_enable = 1;
do{
num=keyscan();
if(num<10)
{
key_enable = 0;
}
}
while(key_enable);
加一个变量.
key_enable = 1;
do{
num=keyscan();
if(num<10)
{
key_enable = 0;
}
}
while(key_enable);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你加一个else试试
do{
num=keyscan();
if(num<10)
{
*******
}
else
{
}
}
while(1);
do{
num=keyscan();
if(num<10)
{
*******
}
else
{
}
}
while(1);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
while(1)
{
}一样
{
}一样
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询