欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
51單片機鍵控菜單程序 按鍵沒用
[打印本頁]
作者:
旭旭龍
時間:
2020-2-6 20:38
標題:
51單片機鍵控菜單程序 按鍵沒用
初始化能反白到第二行,也就是case 0 ,但是按鍵按下沒有反應。
{
uint a ;
if(key_down==0)
{
delay(30); //消抖
if(key_down==0)
a = 0;
a++;
while(!key_down); //等待按鍵松開
}
switch(a)//第一層
{
case 0:
lcd_block(32,16,79,31); break; //第2行反白:貪吃蛇
case 1:
lcd_block(32,16,79,31); //清除第2行反白:貪吃蛇
delay(20);
lcd_block(16,32,95,47); //第3行反白:俄羅斯方塊
break;
case 2:
lcd_block(16,32,95,47); //清除第3行反白:俄羅斯方塊
delay(20);
lcd_block(48,48,79,63); //第4行反白:鬧鐘/返回
break;
case 3:
lcd_block(48,48,79,63); //取消第4行反白:鬧鐘/返回
delay(20);
lcd_block(32,16,79,31); //第2行反白:貪吃蛇
break; //返回第一行
case 4: a = 0;break;
}
while(1);
}
}
作者:
小小大蝦
時間:
2020-2-7 01:07
新手吧,初始化時就執行到case 0 ,然后就在while(1); 死循環了當然沒反應啦
作者:
wulin
時間:
2020-2-7 09:06
按鍵程序只能執行1次,死在while(1); ,a也不可以每次清0,否則switch(a)只能執行1。給你改一下你試試。
void key_scan()
{
static uint a=0;//靜態變量
if(key_down==0)
{
delay(30); //消抖
if(key_down==0)
{
// a=0;
while(!key_down); //等待按鍵松開
switch(a)//第一層
{
case 0:
lcd_block(32,16,79,31); //第2行反白:貪吃蛇
break;
case 1:
lcd_block(32,16,79,31); //清除第2行反白:貪吃蛇
delay(20);
lcd_block(16,32,95,47); //第3行反白:俄羅斯方塊
break;
case 2:
lcd_block(16,32,95,47); //清除第3行反白:俄羅斯方塊
delay(20);
lcd_block(48,48,79,63); //第4行反白:鬧鐘/返回
break;
case 3:
lcd_block(48,48,79,63); //取消第4行反白:鬧鐘/返回
delay(20);
lcd_block(32,16,79,31); //第2行反白:貪吃蛇
break; //返回第一行
// case 4: a = 0;break;
}
a++;
if(a>=4)
a=0;
// while(1);
}
}
}
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1