你只寫了第一層if條件不滿足時的情況,第二層if條件不滿足的你沒寫。
修改成下面程式碼試試看!
u8 KEY_Scan()
{
if(KEY0==0)
delay_ms(22);
while(KEY0==0);
return KEY_Right;
}
else return 0;
if(KEY1==0)
while(KEY1==0);
return KEY_Down;
if(KEY2==0)
while(KEY2==0);
return KEY_Left;
if(UP_KEY==1)
while(UP_KEY==1);
return KEY_Up;
你只寫了第一層if條件不滿足時的情況,第二層if條件不滿足的你沒寫。
修改成下面程式碼試試看!
u8 KEY_Scan()
{
if(KEY0==0)
{
delay_ms(22);
if(KEY0==0)
{
while(KEY0==0);
delay_ms(22);
while(KEY0==0);
return KEY_Right;
}
else return 0;
}
if(KEY1==0)
{
delay_ms(22);
if(KEY1==0)
{
while(KEY1==0);
delay_ms(22);
while(KEY1==0);
return KEY_Down;
}
else return 0;
}
if(KEY2==0)
{
delay_ms(22);
if(KEY2==0)
{
while(KEY2==0);
delay_ms(22);
while(KEY2==0);
return KEY_Left;
}
else return 0;
}
if(UP_KEY==1)
{
delay_ms(22);
if(UP_KEY==1)
{
while(UP_KEY==1);
delay_ms(22);
while(UP_KEY==1);
return KEY_Up;
}
else return 0;
}
else return 0;
}