📄 keyboard.lst
字号:
C51 COMPILER V6.23a KEYBOARD 09/04/2007 02:41:07 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE KEYBOARD
OBJECT MODULE PLACED IN Keyboard.OBJ
COMPILER INVOKED BY: C:\Keil\C51\Bin\c51.exe Keyboard.c DB SB OE ROM(LARGE) SMALL OT(6,SPEED) WL(2) RB(0)
stmt level source
1 #include"group.h"
2
3 uchar key_i=0;
4 uchar key;
5
6 //------------------------------
7 /*extern void change(uchar a,uchar b)
8 {a+=b;b=a-b;a-=b;}
9 */
10 //----------------------------------------------
11 void key_clockontrol(void) //键盘映射
12 {
13 1 switch(key)
14 1 {
15 2 case 0x10:key_i=key_shift;break;
16 2 case 0x20:key_i=0;break;
17 2 case 0x40:key_i=key_P;break;
18 2 case 0x80:key_i=key_enter;break;
19 2
20 2 case 0x11:key_i=1;break;
21 2 case 0x21:key_i=2;break;
22 2 case 0x41:key_i=3;;break;
23 2 case 0x81:key_i=key_down;g_add-=10;break;
24 2
25 2 case 0x12:key_i=4;break;
26 2 case 0x22:key_i=5;break;
27 2 case 0x42:key_i=6;break;
28 2 case 0x82:key_i=key_up;g_add+=10;break;
29 2
30 2 case 0x13:key_i=7;break;
31 2 case 0x23:key_i=8;break;
32 2 case 0x43:key_i=9;break;
33 2 case 0x83:key_i=key_A;g_add++;break;
34 2
35 2 case 0x14:key_i=Num_lock;break;
36 2 case 0x24:key_i=key_E;break;
37 2 case 0x44:key_i=key_C;break;
38 2 case 0x84:key_i=key_D;g_add--;break;
39 2
40 2 default:break;
41 2 }
42 1 }
43 //-----------------------------------------------
44 void keyboard(void) interrupt 2 using 0 //键盘中断
45 {
46 1 uchar i,j,w;
47 1 EX1=0;
48 1 key=0;
49 1 delay(500);
50 1 if(~XBYTE[0xf800]&0x0f)
51 1 {
52 2 w=XBYTE[0xf8f0]&0x0f;
53 2 if(~w&0x0f)
54 2 {
55 3 i=4;
C51 COMPILER V6.23a KEYBOARD 09/04/2007 02:41:07 PAGE 2
56 3 j=w;
57 3 w=0xff;
58 3 }
59 2 w=XBYTE[0xf8e8]&0x0f;
60 2 if(~w&0x0f)
61 2 {
62 3 i=3;
63 3 j=w;
64 3 w=0xff;
65 3 }
66 2 w=XBYTE[0xf8d8]&0x0f;
67 2 if(~w&0x0f)
68 2 {
69 3 i=2;
70 3 j=w;
71 3 w=0xff;
72 3 }
73 2 w=XBYTE[0xf8b8]&0x0f;
74 2 if(~w&0x0f)
75 2 {
76 3 i=1;
77 3 j=w;
78 3 w=0xff;
79 3 }
80 2 w=XBYTE[0xf878]&0x0f;
81 2 if(~w&0x0f)
82 2 {
83 3 i=0;
84 3 j=w;
85 3 w=0xff;
86 3 }
87 2 w=~j;
88 2 key=(w<<4)|i;
89 2 }
90 1 while(~XBYTE[0xf800]&0xf);
91 1 key_clockontrol();
92 1 EX1=1;
93 1 }
94
95
96
C51 COMPILER V6.23a KEYBOARD 09/04/2007 02:41:07 PAGE 3
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
T0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
AC . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D6H 1
T1 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
T2 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
IE . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A8H 1
key_i. . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0000H 1
EXF2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CEH 1
RD . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
ES . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ACH 1
IP . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B8H 1
RI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0098H 1
INT0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
CY . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D7H 1
TI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0099H 1
INT1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
PS . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BCH 1
T2EX . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0091H 1
OV . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D2H 1
C_T2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00C9H 1
WR . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
RCLK . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CDH 1
DA_ADD . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0094H 1
AD_ADD . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0091H 1
TCLK . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CCH 1
SCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0098H 1
TCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0088H 1
AD_EOC . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
IE0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0089H 1
IE1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008BH 1
DA_CLK . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0095H 1
AD_CLK . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
CP_RL2 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00C8H 1
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 1
key. . . . . . . . . . . . . . . . . . PUBLIC DATA U_CHAR 0001H 1
ET1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ABH 1
TF0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008DH 1
ET2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ADH 1
TF1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008FH 1
TF2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CFH 1
RB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009AH 1
EX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A8H 1
IT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0088H 1
TB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009BH 1
EX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AAH 1
IT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008AH 1
P. . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D0H 1
SM0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009FH 1
SM1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009EH 1
SM2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009DH 1
PT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B9H 1
PT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BBH 1
RS0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D3H 1
keyboard . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
i. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
C51 COMPILER V6.23a KEYBOARD 09/04/2007 02:41:07 PAGE 4
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
j. . . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0001H 1
w. . . . . . . . . . . . . . . . . . * REG * DATA U_CHAR 0007H 1
PT2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BDH 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
RS1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D4H 1
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
TR2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CAH 1
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
key_clockontrol. . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
AD_OUT . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0092H 1
EXEN2. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CBH 1
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
T2CON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00C8H 1
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
g_add. . . . . . . . . . . . . . . . . EXTERN DATA U_CHAR ----- 1
_delay . . . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
PSW. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D0H 1
DA_CS. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0096H 1
AD_CS. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0093H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 330 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 2
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 + -