📄 key.lst
字号:
C51 COMPILER V8.02 KEY 11/01/2008 07:36:26 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN key.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE key.c BROWSE DEBUG OBJECTEXTEND
line level source
1
2 #include<reg52.h>
3 #include" lcd.h "
4 #include" key.h "
5 #include" game.h "
6
7 extern uchar Pass;
8 uchar ScanKey( void )
9 {
10 1 uchar mTemp[5],key=0,i;
11 1 mTemp[0]=Up;
12 1 mTemp[1]=Left;
13 1 mTemp[2]=Right;
14 1 mTemp[3]=Down;
15 1 mTemp[4]=Enter;
16 1
17 1 for(i=0;i<5;i++)
18 1 {
19 2 mTemp[i]=~mTemp[i];
20 2 mTemp[i]&=0x01;
21 2 }
22 1 key|=(mTemp[0]);
23 1 key|=(mTemp[1]<<1);
24 1 key|=(mTemp[2]<<2);
25 1 key|=(mTemp[3]<<3);
26 1 key|=(mTemp[4]<<4);
27 1
28 1 return key;
29 1 }
30 /////////////////////////////////////////////////////
31 //得到按键
32 uchar GetKey( void )
33 {
34 1 uchar key[2];
35 1 key[0]=ScanKey();
36 1 if(key[0]!=0)
37 1 {
38 2
39 2 Delay(800);
40 2 key[1]=ScanKey();
41 2 return (key[0]==key[1]) ? key[0] : 0;
42 2 }
43 1 else
44 1 return 0;
45 1
46 1 }
47
48 void KeyHandle( void )
49 {
50 1 uchar mKey=0;
51 1 //uchar temp[1];
52 1 mKey=GetKey();
53 1 if(mKey!=0)
54 1 {
55 2 Sound();
C51 COMPILER V8.02 KEY 11/01/2008 07:36:26 PAGE 2
56 2 switch(mKey)
57 2 {
58 3 case 0x01:
59 3 UpMove();
60 3
61 3 break;
62 3 case 0x02:
63 3 LeftMove();
64 3
65 3 break;
66 3 case 0x04:
67 3 RightMove();
68 3 break;
69 3
70 3 case 0x08:
71 3 DownMove();
72 3 break;
73 3
74 3 case 0x10:
75 3 Pass++; //关卡选择(测试地图编辑的是否正确用的)
76 3 if (Pass==20) Pass=0;
77 3 CopyMap(Pass); //复制地图数据
78 3 //MapCreate(); //地图生成程序
79 3 GameDisplay();//游戏界面显示程序
80 3 ReadRoundPos(); //读圆形的坐标和数目
81 3 DispPass();
82 3 break;
83 3
84 3 default:
85 3 break;
86 3 }
87 2 //while(mKey==0);
88 2 }
89 1 //while(mKey!=0);
90 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 195 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 8
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 + -