📄 key.lst
字号:
C51 COMPILER V8.02 KEY 06/21/2008 15:17:31 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 #include<reg52.h>
2 //#include <absacc.h>
3 #include"key.h"
4 //#include"common.h"
5 /*
6 char code tab[4][4]=
7 {
8 {
9 '7','8','9','A'
10 }
11 ,
12 {
13 '4','5','6','B'
14 }
15 ,
16 {
17 '1','2','3','C'
18 }
19 ,
20 {
21 '#','0','*','D'
22 }
23 }
24 ; //0到F的16个键植
25 */
26 ///*
27 char code tab[4][4]=
28 {
29 {
30 '1','4','7','#'
31 }
32 ,
33 {
34 '2','5','8','0'
35 }
36 ,
37 {
38 '3','6','9','*'
39 }
40 ,
41 {
42 'A','B','C','D'
43 }
44 }
45 ; //0到F的16个键植
46 //*/
47
48 ///*
49 ///*
50 void delay(uchar a)
51 {
52 1 uchar i;
53 1 while(a--)
54 1 for(i=100;i>0;i--)
55 1 ;
C51 COMPILER V8.02 KEY 06/21/2008 15:17:31 PAGE 2
56 1 }
57 //*/
58
59 //*/
60
61
62 uchar kbscan() //键盘扫描
63 {
64 1 uchar hang,lie,key;
65 1 if(P3!=0x0f)
66 1 delay(5);
67 1 if(P3!=0x0f)
68 1 {
69 2 switch(P3&0x0f)
70 2 {
71 3 case 0x0e:lie=0;break;
72 3 case 0x0d:lie=1;break;
73 3 case 0x0b:lie=2;break;
74 3 case 0x07:lie=3;break;
75 3 }
76 2 P3=0xf0;
77 2 P3=0xf0;
78 2 switch(P3&0xf0)
79 2 {
80 3 case 0xe0:hang=0;break;
81 3 case 0xd0:hang=1;break;
82 3 case 0xb0:hang=2;break;
83 3 case 0x70:hang=3;break;
84 3 }
85 2 P3=0x0f;
86 2 while(P3!=0x0f);
87 2 key=tab[hang][lie];
88 2 }
89 1 else
90 1 //key=0;
91 1 return (0);
92 1 return (key);
93 1 //return (0);
94 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 162 ----
CONSTANT SIZE = 16 ----
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 + -