📄 main.lst
字号:
1 =1 #ifndef __KB_H__
2 =1 #define __KB_H__
3 =1
4 =1
5 =1 void init_kb(void);
6 =1 void decode(unsigned char sc);
7 =1 void put_kbbuff(unsigned char c);
8 =1 int getchar(void);
9 =1
10 =1
11 =1 #endif // __KB_H__
12 =1
6
7
8 int __low_level_init(void)
9 {
10 1 /*UBRR = 12; // 19200bps@4MHz
11 1 UCR = 0x08; // TX enable
12 1 GIMSK= 0x40; // Enable INT0 interrupt
13 1 */
14 1 EA = 0; //disable interrupt
15 1
16 1 PX0 = 1; //high priority
17 1 EX0 = 1; //enable INT0
18 1 IT0 = 1; //falling edge triger
19 1 INT0 = 1; //software reset, kbd clock
20 1
21 1 ET0 = 1; //enable T0
22 1 PT0 = 0; //low priority
23 1
24 1 PIND = 1; //data reset, kbd data
25 1 TMOD = 0x01;
26 1 TH0 = 0;
27 1 TL0 = 0;
28 1 TR0 = 0;
29 1 EA = 1;
30 1 return 1;
31 1 }
32
33
34 void clr(void)
35 {
36 1 P1 = 0xFF;
37 1 }
38
39
40 void main(void)
41 {
42 1 unsigned char key;
43 1
44 1 __low_level_init();
45 1 //init_uart(); // Initializes the UART transmit buffer
46 1 init_kb(); // Initialize keyboard reception
47 1
48 1 while(1)
49 1 {
50 2 P1 = key=getchar();
51 2 delay(10);
C51 COMPILER V6.12 MAIN 03/03/2007 18:29:42 PAGE 6
52 2 }
53 1 }
C51 COMPILER V6.12 MAIN 03/03/2007 18:29:42 PAGE 7
ASSEMBLY LISTING OF GENERATED OBJECT CODE
; FUNCTION __low_level_init (BEGIN)
; SOURCE LINE # 8
; SOURCE LINE # 9
; SOURCE LINE # 14
0000 C2AF CLR EA
; SOURCE LINE # 16
0002 D2B8 SETB PX0
; SOURCE LINE # 17
0004 D2A8 SETB EX0
; SOURCE LINE # 18
0006 D288 SETB IT0
; SOURCE LINE # 19
0008 D2B2 SETB INT0
; SOURCE LINE # 21
000A D2A9 SETB ET0
; SOURCE LINE # 22
000C C2B9 CLR PT0
; SOURCE LINE # 24
000E D2A3 SETB P2_3
; SOURCE LINE # 25
0010 758901 MOV TMOD,#01H
; SOURCE LINE # 26
0013 E4 CLR A
0014 F58C MOV TH0,A
; SOURCE LINE # 27
0016 F58A MOV TL0,A
; SOURCE LINE # 28
0018 C28C CLR TR0
; SOURCE LINE # 29
001A D2AF SETB EA
; SOURCE LINE # 30
001C FE MOV R6,A
001D 7F01 MOV R7,#01H
; SOURCE LINE # 31
001F ?C0001:
001F 22 RET
; FUNCTION __low_level_init (END)
; FUNCTION clr (BEGIN)
; SOURCE LINE # 34
; SOURCE LINE # 35
; SOURCE LINE # 36
0000 7590FF MOV P1,#0FFH
; SOURCE LINE # 37
0003 22 RET
; FUNCTION clr (END)
; FUNCTION main (BEGIN)
; SOURCE LINE # 40
; SOURCE LINE # 41
; SOURCE LINE # 44
0000 1100 R ACALL __low_level_init
; SOURCE LINE # 46
0002 1100 E ACALL init_kb
0004 ?C0003:
; SOURCE LINE # 48
; SOURCE LINE # 49
; SOURCE LINE # 50
0004 1100 E ACALL getchar
C51 COMPILER V6.12 MAIN 03/03/2007 18:29:42 PAGE 8
0006 8F00 R MOV key,R7
0008 8F90 MOV P1,R7
; SOURCE LINE # 51
000A 7F0A MOV R7,#0AH
000C 1100 E ACALL _delay
; SOURCE LINE # 52
000E 80F4 SJMP ?C0003
; FUNCTION main (END)
C51 COMPILER V6.12 MAIN 03/03/2007 18:29:42 PAGE 9
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
AC . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D6H 1
T0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
T1 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
EA . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AFH 1
T2 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
P0_0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0080H 1
P1_0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0090H 1
P0_1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0081H 1
FL . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D1H 1
P2_0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A0H 1
P1_1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0091H 1
P0_2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0082H 1
P3_0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
P2_1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A1H 1
P1_2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0092H 1
P0_3 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0083H 1
P3_1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
P2_2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A2H 1
P1_3 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0093H 1
P0_4 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0084H 1
P3_2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
P2_3 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A3H 1
P1_4 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0094H 1
P0_5 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0085H 1
EXF2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CEH 1
RD . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
P3_3 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
P2_4 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A4H 1
P1_5 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0095H 1
P0_6 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0086H 1
P3_4 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B4H 1
P2_5 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A5H 1
P1_6 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0096H 1
P0_7 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0087H 1
P3_5 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B5H 1
ES . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00ACH 1
P2_6 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A6H 1
P1_7 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0097H 1
P3_6 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
P2_7 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A7H 1
P3_7 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B7H 1
RI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0098H 1
CY . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D7H 1
INT0 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B2H 1
INT1 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B3H 1
TI . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0099H 1
PS . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BCH 1
T2EX . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0091H 1
OV . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D2H 1
__low_level_init . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
main . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
key. . . . . . . . . . . . . . . . . AUTO DATA U_CHAR 0000H 1
C_T2 . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00C9H 1
WR . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B6H 1
RCLK . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CDH 1
TCLK . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CCH 1
C51 COMPILER V6.12 MAIN 03/03/2007 18:29:42 PAGE 10
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
TMOD . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0089H 1
IE0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0089H 1
IE1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008BH 1
clr. . . . . . . . . . . . . . . . . . PUBLIC CODE PROC 0000H -----
CP_RL2 . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00C8H 1
ET0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A9H 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
TH0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008CH 1
EX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00A8H 1
IT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 0088H 1
EX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00AAH 1
TB8. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009BH 1
IT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008AH 1
P. . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D0H 1
SM0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009FH 1
TL0. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 008AH 1
SM1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009EH 1
SM2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009DH 1
PT0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B9H 1
RS0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D3H 1
PT1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BBH 1
RS1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D4H 1
PT2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BDH 1
TR0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008CH 1
TR1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 008EH 1
TR2. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CAH 1
PX0. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B8H 1
PX1. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00BAH 1
getchar. . . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
EXEN2. . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00CBH 1
init_kb. . . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
REN. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 009CH 1
RXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B0H 1
TXD. . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00B1H 1
_delay . . . . . . . . . . . . . . . . EXTERN CODE PROC ----- -----
F0 . . . . . . . . . . . . . . . . . . ABSBIT ----- BIT 00D5H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 52 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 1
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 + -