A51 MACRO ASSEMBLER 4X4_KEYBOARD__2_ 07/27/2006 18:05:08 PAGE 1
MACRO ASSEMBLER A51 V8.00
OBJECT MODULE PLACED IN 4X4 KeyBoard (2).OBJ
ASSEMBLER INVOKED BY: e:\Program Files\Keil\C51\BIN\A51.EXE 4X4 KeyBoard (2).asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0030 1 LINE EQU 30H
0031 2 ROW EQU 31H
0032 3 VAL EQU 32H
0000 4 ORG 00H
0000 900097 5 START: MOV DPTR,#TABLE
0003 75A000 6 MOV P2,#00H
7
0006 75B0F0 8 LSCAN: MOV P3,#0F0H
0009 30B00C 9 L1: JNB P3.0,L2
000C 12008E 10 LCALL DELAY
000F 30B006 11 JNB P3.0,L2
0012 753000 12 MOV LINE,#00H
0015 020042 13 LJMP RSCAN
0018 30B10C 14 L2: JNB P3.1,L3
001B 12008E 15 LCALL DELAY
001E 30B106 16 JNB P3.1,L3
0021 753001 17 MOV LINE,#01H
0024 020042 18 LJMP RSCAN
0027 30B20C 19 L3: JNB P3.2,L4
002A 12008E 20 LCALL DELAY
002D 30B206 21 JNB P3.2,L4
0030 753002 22 MOV LINE,#02H
0033 020042 23 LJMP RSCAN
0036 30B3D0 24 L4: JNB P3.3,L1
0039 12008E 25 LCALL DELAY
003C 30B3CA 26 JNB P3.3,L1
003F 753003 27 MOV LINE,#03H
28
0042 75B00F 29 RSCAN: MOV P3,#0FH
0045 30B40C 30 C1: JNB P3.4,C2
0048 12008E 31 LCALL DELAY
004B 30B406 32 JNB P3.4,C2
004E 753100 33 MOV ROW,#00H
0051 02007E 34 LJMP CALCU
0054 30B50C 35 C2: JNB P3.5,C3
0057 12008E 36 LCALL DELAY
005A 30B506 37 JNB P3.5,C3
005D 753101 38 MOV ROW,#01H
0060 02007E 39 LJMP CALCU
0063 30B60C 40 C3: JNB P3.6,C4
0066 12008E 41 LCALL DELAY
0069 30B606 42 JNB P3.6,C4
006C 753102 43 MOV ROW,#02H
006F 02007E 44 LJMP CALCU
0072 30B7D0 45 C4: JNB P3.7,C1
0075 12008E 46 LCALL DELAY
0078 30B7CA 47 JNB P3.7,C1
007B 753103 48 MOV ROW,#03H
49
007E E530 50 CALCU: MOV A,LINE
0080 75F004 51 MOV B,#04H
0083 A4 52 MUL AB
0084 2531 53 ADD A,ROW
0086 F532 54 MOV VAL,A
55
0088 93 56 MOVC A,@A+DPTR
0089 F5A0 57 MOV P2,A
58
A51 MACRO ASSEMBLER 4X4_KEYBOARD__2_ 07/27/2006 18:05:08 PAGE 2
008B 020006 59 LJMP LSCAN
60
008E 7E14 61 DELAY: MOV R6,#20
0090 7FFA 62 D1: MOV R7,#250
0092 DFFE 63 DJNZ R7,$
0094 DEFA 64 DJNZ R6,D1
0096 22 65 RET
66
0097 3F065B4F 67 TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
009B 666D7D07
009F 7F6F777C 68 DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H
00A3 395E7971
69
70 END
A51 MACRO ASSEMBLER 4X4_KEYBOARD__2_ 07/27/2006 18:05:08 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
B. . . . . . . . . D ADDR 00F0H A
C1 . . . . . . . . C ADDR 0045H A
C2 . . . . . . . . C ADDR 0054H A
C3 . . . . . . . . C ADDR 0063H A
C4 . . . . . . . . C ADDR 0072H A
CALCU. . . . . . . C ADDR 007EH A
D1 . . . . . . . . C ADDR 0090H A
DELAY. . . . . . . C ADDR 008EH A
L1 . . . . . . . . C ADDR 0009H A
L2 . . . . . . . . C ADDR 0018H A
L3 . . . . . . . . C ADDR 0027H A
L4 . . . . . . . . C ADDR 0036H A
LINE . . . . . . . N NUMB 0030H A
LSCAN. . . . . . . C ADDR 0006H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
ROW. . . . . . . . N NUMB 0031H A
RSCAN. . . . . . . C ADDR 0042H A
START. . . . . . . C ADDR 0000H A
TABLE. . . . . . . C ADDR 0097H A
VAL. . . . . . . . N NUMB 0032H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)