📄 44key.lst
字号:
C51 COMPILER V8.15 44KEY 08/06/2009 13:49:09 PAGE 1
C51 COMPILER V8.15, COMPILATION OF MODULE 44KEY
OBJECT MODULE PLACED IN 44KEY.OBJ
COMPILER INVOKED BY: D:\专业软件SLF\keil\C51\BIN\C51.EXE 44KEY.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "reg52.h"
2
3 unsigned char key;
4 static unsigned int j;
5
6 static void mDelay(j)
7 {
8 1 unsigned int i;
9 1 for(;j>0;j--)
10 1 {
11 2 for(i=124;i>0;i--)
12 2 {;}
13 2 }
14 1 }
15
16 unsigned char KeyScan(void)
17 {
18 1 unsigned char temp;
19 1 P2=0x0f;
20 1 temp=P2;
21 1 if((temp&0x0f)!= 0x0f)
22 1 {
23 2 mDelay(10);
24 2 if((temp&0x0f)!=0x0f)
25 2 {
26 3 P2=0xef;
27 3 mDelay(1);
28 3 temp=P2;
29 3 temp&=0x0f;//扫描第1列
30 3 if(temp!=0x0f)
31 3 {
32 4 switch(temp)
33 4 {
34 5 case 0x0e:key=1;break;
35 5 case 0x0d:key=5;break;
36 5 case 0x0b:key=9;break;
37 5 case 0x07:key=13;break;
38 5 default:break;
39 5 }
40 4 }
41 3 mDelay(2);
42 3 P2=0xdf;//第2列
43 3 mDelay(1);
44 3 temp=P2;
45 3 temp&=0x0f;
46 3 if(temp!=0x0f)
47 3 {
48 4 switch(temp)
49 4 {
50 5 case 0x0e:key=2;break;
51 5 case 0x0d:key=6;break;
52 5 case 0x0b:key=10;break;
53 5 case 0x07:key=14;break;
54 5 default:break;
55 5 }
C51 COMPILER V8.15 44KEY 08/06/2009 13:49:09 PAGE 2
56 4 }
57 3 mDelay(2);
58 3 P2=0xbf;//第3列
59 3 mDelay(1);
60 3 temp=P2;
61 3 temp&=0x0f;
62 3 if(temp!=0x0f)
63 3 {
64 4 switch(temp)
65 4 {
66 5 case 0x0e:key=3;break;
67 5 case 0x0d:key=7;break;
68 5 case 0x0b:key=11;break;
69 5 case 0x07:key=15;break;
70 5 default:break;
71 5 }
72 4 }
73 3 mDelay(2);
74 3 P2=0x7f;//第4列
75 3 mDelay(1);
76 3 temp=P2;
77 3 temp&=0x0f;
78 3 if(temp!=0x0f)
79 3 {
80 4 switch(temp)
81 4 {
82 5 case 0x0e:key=4;break;
83 5 case 0x0d:key=8;break;
84 5 case 0x0b:key=12;break;
85 5 case 0x07:key=16;break;
86 5 default:break;
87 5 }
88 4 }
89 3 }
90 2 }
91 1 return key;
92 1 }
93
94 unsigned char KeyFree(void)
95 {
96 1 key=KeyScan();
97 1 P2=0x0f;
98 1 while(P2&0x0f!=0x0f){}
99 1 return key;
100 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 305 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 3 ----
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 + -