📄 key.lst
字号:
C51 COMPILER V7.50 KEY 09/07/2007 13:44:06 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN key.OBJ
COMPILER INVOKED BY: C:\Program Files\keil\C51\BIN\C51.EXE key.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "key.h"
2
3 static uchar Key_value = 0x00 ;
4 static uchar Key_line = 0x01 ;
5 static uchar Key_return = 0x10 ;
6 uchar Read_key()
7 {
8 1 uchar Key_value = 0x00 ;
9 1 uchar Key_line = 0x01 ;
10 1 uchar Key_return = 0x10 ;
11 1 uchar i = 0 ;
12 1
13 1
14 1 Key_line = 0x01 ;
15 1 for (i = 0; i < 4; i++)
16 1 {
17 2 KEY_PORT = ~Key_line ;
18 2 KEY_PORT = ~Key_line ;
19 2 Key_value = KEY_PORT & KEY_MASK ;
20 2 if (Key_value == KEY_MASK)//没有按键按下
21 2 {
22 3 Key_line <<= 1 ;
23 3 }
24 2 else
25 2 {
26 3 Delay10ms(1) ;
27 3 if (Key_value == (KEY_PORT & KEY_MASK))//延时后再次确认按键
28 3 {
29 4 switch (Key_value | Key_line)
30 4 {
31 5 case 0xe1:
32 5 Key_return = K1_1 ;
33 5 break ;
34 5 case 0xd1:
35 5 Key_return = K1_2 ;
36 5 break ;
37 5 case 0xb1:
38 5 Key_return = K1_3 ;
39 5 break ;
40 5 case 0x71:
41 5 Key_return = K1_4 ;
42 5 break ;
43 5
44 5 case 0xe2:
45 5 Key_return = K2_1 ;
46 5 break ;
47 5 case 0xd2:
48 5 Key_return = K2_2 ;
49 5 break ;
50 5 case 0xb2:
51 5 Key_return = K2_3 ;
52 5 break ;
53 5 case 0x72:
54 5 Key_return = K2_4 ;
55 5 break ;
C51 COMPILER V7.50 KEY 09/07/2007 13:44:06 PAGE 2
56 5
57 5 case 0xe4:
58 5 Key_return = K3_1 ;
59 5 break ;
60 5 case 0xd4:
61 5 Key_return = K3_2 ;
62 5 break ;
63 5 case 0xb4:
64 5 Key_return = K3_3 ;
65 5 break ;
66 5 case 0x74:
67 5 Key_return = K3_4 ;
68 5 break ;
69 5
70 5 case 0xe8:
71 5 Key_return = K4_1 ;
72 5 break ;
73 5 case 0xd8:
74 5 Key_return = K4_2 ;
75 5 break ;
76 5 case 0xb8:
77 5 Key_return = K4_3 ;
78 5 break ;
79 5 case 0x78:
80 5 Key_return = K4_4 ;
81 5 break ;
82 5 default : Key_return = 0x0e ;
83 5 }
84 4 while(Key_value ==( KEY_PORT & KEY_MASK)) ;
85 4 break ;
86 4 }
87 3 Key_line <<= 1 ;
88 3 }
89 2 }
90 1 return(Key_return) ;
91 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 225 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 3 4
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 + -