?? keyscan.c
字號(hào):
#include "CPU.H"
extern void Delayms(U16 Ms);
/*
*****************************************************************************
* KeyScan - 鍵盤(pán)掃描函數(shù)
* DESCRIPTION: -
* 判4個(gè)按鍵那個(gè)有按下
* @Param void:
* @Return :有按鍵 返回鍵值 無(wú)按鍵 返回false 因此鍵值定義不能為false
* ----
*****************************************************************************
*/
U8 KeyScan(void)
{
Key0 = 1;
Key1 = 1;
Key2 = 1;
Key3 = 1;
if((Key0==0)||(Key1==0)||(Key2==0)||(Key3==0)){
Delayms(20);
if((Key0==0)||(Key1==0)||(Key2==0)||(Key3==0)){
if((Key0==0)&&(Key1==1)&&(Key2==1)&&(Key3==1)){ //Key0
return Key_Up;
}else if((Key0==1)&&(Key1==0)&&(Key2==1)&&(Key3==1)){//Key1
return Key_Right;
}else if((Key0==1)&&(Key1==1)&&(Key2==0)&&(Key3==1)){//Key2
return Key_Left;
}else if((Key0==1)&&(Key1==1)&&(Key2==1)&&(Key3==0)){//Key3
return Key_Down;
}else{
return false;
}
}else {
return false;
}//no key press
}else{
return false;
}
}
#if 0
/*
*****************************************************************************
* WaitKey - 死等一個(gè)有效按鍵輸入
* DESCRIPTION: -
*
* @Param void:
* @Return : 按鍵鍵值
* ----
*****************************************************************************
*/
U8 WaitKey(void)
{
while(1){
switch(KeyScan()){
case Key_Up:{
return Key_Up;
break;
}
case Key_Down:{
return Key_Down;
break;
}
case Key_Left:{
return Key_Left;
break;
}
case Key_Right:{
return Key_Right;
break;
}
default:
break;
}
}
}
#endif
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -