📄 audio.lst
字号:
A51 MACRO ASSEMBLER AUDIO 11/30/2006 15:43:48 PAGE 1
MACRO ASSEMBLER A51 V7.07
OBJECT MODULE PLACED IN AUDIO.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE AUDIO.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0040 1 SEGNUM EQU 40H
CFA0 2 CS273 EQU 0CFA0H
CFA8 3 CS244 EQU 0CFA8H
0020 4 TEST BIT 20H
5
---- 6 CSEG AT 0000H
0000 024100 7 LJMP START
8
---- 9 CSEG AT 4100H
4100 90CFE9 10 START: MOV DPTR,#0CFE9H ;8279命令字
4103 74D1 11 MOV A,#0D1H ;清显示
4105 F0 12 MOVX @DPTR,A
4106 90CFE9 13 LOOP1: MOV DPTR,#0CFE9H
4109 E0 14 MOVX A,@DPTR
410A 540F 15 ANL A,#0FH
410C 60F8 16 JZ LOOP1 ;有键按下?没有则循环等待
17 ; MOV A,#0A0H ;显示\消隐命令
18 ; MOVX @DPTR,A
410E 7440 19 MOV A,#40H ;读FIFO命令
4110 F0 20 MOVX @DPTR,A
4111 90CFE8 21 MOV DPTR,#0CFE8H ;读键值
4114 E0 22 MOVX A,@DPTR
4115 F9 23 MOV R1,A ;保存键值
24
4116 C3 25 CLR C
4117 94C6 26 SUBB A, #0C6H
4119 50EB 27 JNC LOOP1
411B E9 28 MOV A, R1
411C C3 29 CLR C
411D 94C0 30 SUBB A, #0C0H
411F 75F003 31 MOV B, #03H
4122 A4 32 MUL AB
4123 904127 33 MOV DPTR, #KPRG
4126 73 34 JMP @A+DPTR
4127 024139 35 KPRG: LJMP KPRG0
412A 024152 36 LJMP KPRG1
412D 024178 37 LJMP KPRG2
4130 0241B0 38 LJMP KPRG3
4133 0241FA 39 LJMP KPRG4
4136 024222 40 LJMP KPRG5
41
4139 E4 42 KPRG0: CLR A
413A F540 43 MOV SEGNUM, A
413C 90CFA0 44 MOV DPTR, #CS273
413F 747F 45 MOV A, #7FH ;O0表示PD,O1表示CE,O7表示CA0
4141 F0 46 MOVX @DPTR, A
4142 12428E 47 LCALL DEL20MS
4145 747E 48 MOV A, #7EH
4147 F0 49 MOVX @DPTR, A
4148 C220 50 CLR TEST
414A 7A00 51 MOV R2, #00H
414C 124299 52 LCALL DISP
414F 024106 53 LJMP LOOP1
54
4152 90CFA8 55 KPRG1: MOV DPTR, #CS244
4155 E0 56 MOVX A, @DPTR
4156 20E703 57 JB ACC.7, PLAY1 ;IN7为录放选择
4159 024106 58 LJMP LOOP1
A51 MACRO ASSEMBLER AUDIO 11/30/2006 15:43:48 PAGE 2
415C 90CFA0 59 PLAY1: MOV DPTR, #CS273
415F 747F 60 MOV A, #7FH
4161 F0 61 MOVX @DPTR, A
4162 12428E 62 LCALL DEL20MS
4165 747E 63 MOV A, #7EH
4167 F0 64 MOVX @DPTR, A
4168 747C 65 MOV A, #7CH
416A F0 66 MOVX @DPTR, A
416B 00 67 NOP
416C 00 68 NOP
416D 747E 69 MOV A, #7EH
416F F0 70 MOVX @DPTR, A
4170 7A01 71 MOV R2, #01H
4172 124299 72 LCALL DISP
4175 024106 73 LJMP LOOP1
74
4178 90CFA8 75 KPRG2: MOV DPTR, #CS244
417B E0 76 MOVX A, @DPTR
417C 20E703 77 JB ACC.7, PLAY2 ;IN7为录放选择
417F 024106 78 LJMP LOOP1
4182 90CFA0 79 PLAY2: MOV DPTR, #CS273
4185 74FF 80 MOV A, #0FFH
4187 F0 81 MOVX @DPTR, A
4188 12428E 82 LCALL DEL20MS
418B 74FE 83 MOV A, #0FEH
418D F0 84 MOVX @DPTR, A
418E 74FC 85 MOV A, #0FCH
4190 F0 86 MOVX @DPTR, A
4191 00 87 NOP
4192 00 88 NOP
4193 747E 89 MOV A, #7EH
4195 F0 90 MOVX @DPTR, A
4196 90CFA8 91 WAIT1: MOV DPTR, #CS244
4199 E0 92 MOVX A, @DPTR
419A 20E0F9 93 JB ACC.0, WAIT1
419D 90CFA0 94 MOV DPTR, #CS273
41A0 747C 95 MOV A, #7CH
41A2 F0 96 MOVX @DPTR, A
41A3 00 97 NOP
41A4 00 98 NOP
41A5 747E 99 MOV A, #7EH
41A7 F0 100 MOVX @DPTR, A
41A8 7A02 101 MOV R2, #02H
41AA 124299 102 LCALL DISP
41AD 024106 103 LJMP LOOP1
104
41B0 90CFA8 105 KPRG3: MOV DPTR, #CS244
41B3 E0 106 MOVX A, @DPTR
41B4 20E703 107 JB ACC.7, PLAY3 ;IN7为录放选择
41B7 024106 108 LJMP LOOP1
41BA 90CFA0 109 PLAY3: MOV DPTR, #CS273
41BD 74FF 110 MOV A, #0FFH
41BF F0 111 MOVX @DPTR, A
41C0 12428E 112 LCALL DEL20MS
41C3 74FE 113 MOV A, #0FEH
41C5 F0 114 MOVX @DPTR, A
41C6 74FC 115 MOV A, #0FCH
41C8 F0 116 MOVX @DPTR, A
41C9 00 117 NOP
41CA 00 118 NOP
41CB 74FE 119 MOV A, #0FEH
41CD F0 120 MOVX @DPTR, A
41CE 90CFA8 121 WAIT2: MOV DPTR, #CS244 ;IN0表示EOM
41D1 E0 122 MOVX A, @DPTR
41D2 20E0F9 123 JB ACC.0, WAIT2
41D5 90CFA0 124 MOV DPTR, #CS273
A51 MACRO ASSEMBLER AUDIO 11/30/2006 15:43:48 PAGE 3
41D8 74FC 125 MOV A, #0FCH
41DA F0 126 MOVX @DPTR, A
41DB 00 127 NOP
41DC 00 128 NOP
41DD 747E 129 MOV A, #07EH
41DF F0 130 MOVX @DPTR, A
41E0 90CFA8 131 WAIT3: MOV DPTR, #CS244 ;IN0表示EOM
41E3 E0 132 MOVX A, @DPTR
41E4 20E0F9 133 JB ACC.0, WAIT3
41E7 90CFA0 134 MOV DPTR, #CS273
41EA 747C 135 MOV A, #7CH
41EC F0 136 MOVX @DPTR, A
41ED 00 137 NOP
41EE 00 138 NOP
41EF 747E 139 MOV A, #7EH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -