📄 keyscan.lst
字号:
C51 COMPILER V7.20 KEYSCAN 09/04/2007 22:35:46 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE KEYSCAN
OBJECT MODULE PLACED IN .\Obj\KeyScan.obj
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE Src\KeyScan.C LARGE BROWSE DEBUG OBJECTEXTEND PRINT(.\Lst\KeyScan.lst) OBJE
-CT(.\Obj\KeyScan.obj)
line level source
1 #include "CPU.H"
2 extern void Delayms(U16 Ms);
3
4 /*
5 *****************************************************************************
6 * KeyScan - 键盘扫描函数
7 * DESCRIPTION: -
8 * 判4个按键那个有按下
9 * @Param void:
10 * @Return :有按键 返回键值 无按键 返回false 因此键值定义不能为false
11 * ----
12 *****************************************************************************
13 */
14 U8 KeyScan(void)
15 {
16 1 Key0 = 1;
17 1 Key1 = 1;
18 1 Key2 = 1;
19 1 Key3 = 1;
20 1 if((Key0==0)||(Key1==0)||(Key2==0)||(Key3==0)){
21 2 Delayms(20);
22 2 if((Key0==0)||(Key1==0)||(Key2==0)||(Key3==0)){
23 3 if((Key0==0)&&(Key1==1)&&(Key2==1)&&(Key3==1)){ //Key0
24 4 return Key_Up;
25 4 }else if((Key0==1)&&(Key1==0)&&(Key2==1)&&(Key3==1)){//Key1
26 4 return Key_Right;
27 4 }else if((Key0==1)&&(Key1==1)&&(Key2==0)&&(Key3==1)){//Key2
28 4 return Key_Left;
29 4 }else if((Key0==1)&&(Key1==1)&&(Key2==1)&&(Key3==0)){//Key3
30 4 return Key_Down;
31 4 }else{
32 4 return false;
33 4 }
34 3
35 3 }else {
36 3 return false;
37 3 }//no key press
38 2 }else{
39 2 return false;
40 2 }
41 1 }
42 #if 0
/*
*****************************************************************************
* WaitKey - 死等一个有效按键输入
* DESCRIPTION: -
*
* @Param void:
* @Return : 按键键值
* ----
*****************************************************************************
*/
U8 WaitKey(void)
{
C51 COMPILER V7.20 KEYSCAN 09/04/2007 22:35:46 PAGE 2
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
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 108 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -