📄 键盘.lst
字号:
C51 COMPILER V8.02 键盘 07/25/2008 11:44:22 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE 键盘
OBJECT MODULE PLACED IN 键盘.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 键盘.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg52.h>
2 #include<math.h>
3 #include<absacc.h>
4 #define uchar unsigned char
5 #define uint unsigned int
6 #define TRUE 1
7 #define FALSE 0
8 uchar key_flag;
9 uchar code key[10]={0x00,0x01,0x002,0x03,0x04,0x05,0x06,0x07,0x08,0x09};
10 void delay(void);
11 void dy(uchar k);
12 uchar keyscan();
13 void main(void) //
14 {
15 1
16 1 uchar k;
17 1 while(1)
18 1 { P1=0x0f;
19 2 if(P1!=0x0f)
20 2 {
21 3 k=keyscan();
22 3 dy(k);
23 3 }
24 2 }
25 1 }
26 uchar keyscan() //
27 { uchar h,l,k1;
28 1 if(P1!=0x0f)
29 1 {
30 2 delay();
31 2 if(P1!=0x0f)
32 2 {
33 3
34 3 h=P1&0x0f;
35 3 P1=0xf0;
36 3
37 3 l=P1&0xf0;
38 3
39 3 k1=h|l;
40 3
41 3 return(k1);
42 3 }
43 2 else return(0xff);
44 2 }
45 1 }
46 void delay()
47 {int n;
48 1 for(n=0;n<200;n++);
49 1 }
50
51 void dy(uchar k)
52 {
53 1 int i,j;
54 1 switch(k)
55 1 {
C51 COMPILER V8.02 键盘 07/25/2008 11:44:22 PAGE 2
56 2 case 0xee:
57 2
58 2
59 2 for(i=0;i<10;i++)
60 2 {P3=key[i];
61 3 for(j=0;j<12000;j++);
62 3 }
63 2
64 2 break;
65 2 case 0xde:
66 2 P3=0x80;break;
67 2 case 0xbe:
68 2 P3=0x80;break;
69 2 case 0x7e:
70 2 P3=0x80;break;
71 2 case 0xed:
72 2 P3=0x80;break;
73 2 case 0xdd:
74 2 P3=0x80;break;
75 2 case 0xbd:
76 2 P3=0x80 ;break;
77 2 case 0x7d:
78 2 P3=0x80;break;
79 2 case 0xeb:
80 2 P3=0x80;break;
81 2 case 0xdb:
82 2 P3=0x80;break;
83 2 case 0xbb:
84 2 P3=0x80;break;
85 2 case 0x7b:
86 2 P3=0x80; break;
87 2 case 0xe7:
88 2 P3=0x80 ;break;
89 2 case 0xd7:
90 2 P3=0x80; break;
91 2 case 0xb7:
92 2 P0=0x80;break;
93 2 case 0x77:
94 2 for(i=0;i<10;i++)
95 2 {P0=key[i];
96 3 for(j=0;j<12000;j++);
97 3 }
98 2 break;
99 2 }
100 1
101 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 245 ----
CONSTANT SIZE = 10 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 5
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 + -