📄 myfunctionkey.lst
字号:
C51 COMPILER V6.23a MYFUNCTIONKEY 03/17/2006 09:40:11 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE MYFUNCTIONKEY
OBJECT MODULE PLACED IN .\MyFunctionKey.obj
COMPILER INVOKED BY: E:\system\Keil\C51\BIN\C51.EXE ..\SCR\MyFunctionKey.c BROWSE DEBUG OBJECTEXTEND PRINT(.\MyFunctionK
-ey.lst) OBJECT(.\MyFunctionKey.obj)
stmt level source
1 #include <at89x52.h>
2 #include "myiclude.h"
3 unsigned char a[]={0x3f,0x06,0x5b,0x4f,0x66 ,0x6d ,0x7d ,0x07 ,0x7f ,0x6f ,0x77 ,0x7c};
4 void delay(unsigned char j)
5 {
6 1 unsigned char m,k;
7 1 for(m=0;m<j;m++)
8 1 for(k=0;k<5;k++);
9 1 }
10 unsigned char GetKey()
11 { unsigned char x;
12 1 if((PointW==PointR)&(OverFlag==0)) {LampEempty=1;LampFull=0;return 255;}
13 1 if(PointR>=KeyBufSize) PointR=0;
14 1 x=KeyBuf[PointR];
15 1 PointR++;
16 1 return x;
17 1 }
18
19 unsigned char PutKey()
20 {
21 1 if((PointW-PointR)==KeyBufSize-1) {LampEempty=0;LampFull=1;return 255;}
22 1 if(PointW>=KeyBufSize) { PointW=0; OverFlag=1;}
23 1 if((PointW==PointR)&(OverFlag==1)){LampEempty=0;LampFull=1;OverFlag=0;return 255;}
24 1 KeyBuf[PointW]=JianZi;
25 1 PointW++;
26 1 }
27 unsigned char KeyDriver()
28 { unsigned char x,y,key;
29 1 P2=0x0f; //低四位输入1,高四位输出0
30 1 x=P2;
31 1 x=x&0x0f; //P2输入后,清高四位,作为X值
32 1 P2=0xf0; //高四位输入1,低四位输出0
33 1 y=P2;
34 1 y=y&0xf0; //P2输入后移位到低四位,并清高四位,作为Y值
35 1 key=x|y;
36 1 key=key&0xfe;
37 1 return key;
38 1 }
39 void Key()
40 {
41 1 unsigned char Keyok;
42 1 Keyok=KeyDriver();
43 1 if(Keyok==254){return;}
44 1 else
45 1 {
46 2 switch(Keyok)
47 2 {
48 3 case 236: JianZi=3; break;
49 3 case 234: JianZi=2; break;
50 3 case 230: JianZi=1; break;
51 3
52 3 case 220: JianZi=6; break;
53 3 case 218: JianZi=5; break;
54 3 case 214: JianZi=4; break;
C51 COMPILER V6.23a MYFUNCTIONKEY 03/17/2006 09:40:11 PAGE 2
55 3
56 3 case 188: JianZi=9; break;
57 3 case 186: JianZi=8; break;
58 3 case 182: JianZi=7; break;
59 3
60 3 case 124: JianZi=0; break;
61 3 case 122: JianZi=11; break;
62 3 case 118: JianZi=10; break;
63 3 }
64 2 PutKey();
65 2 LcdDriver();
66 2 }
67 1 }
68
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 363 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = 15 ----
PDATA SIZE = ---- ----
DATA SIZE = 15 ----
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 + -