📄 measure_freq.lst
字号:
A51 MACRO ASSEMBLER MEASURE_FREQ 11/28/2007 15:45:43 PAGE 1
MACRO ASSEMBLER A51 V7.07
OBJECT MODULE PLACED IN measure_freq.OBJ
ASSEMBLER INVOKED BY: C:\Program Files\Keil\C51\BIN\A51.EXE measure_freq.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
0000 1 ORG 0000H
0000 2100 2 AJMP START
001B 3 ORG 001BH
001B 217D 4 AJMP T1INT
0100 5 ORG 0100H
6
0030 7 DISBUF EQU 30H
0038 8 POSIT EQU 38H
0039 9 TIME EQU 39H
0040 10 FREQ EQU 40H
11
0100 12 START:
0100 90019B 13 MOV DPTR, #LEDCODE
0103 758915 14 MOV TMOD, #15H
0106 758A00 15 MOV TL0, #0
0109 758C00 16 MOV TH0, #0
010C 758BB0 17 MOV TL1, #0B0H
010F 758D3C 18 MOV TH1, #3CH
0112 D28C 19 SETB TR0
0114 D28E 20 SETB TR1
0116 D2AB 21 SETB ET1
0118 D2AF 22 SETB EA
23
011A 24 LOOP:
011A 3138 25 CALL COUNTER
011C 314C 26 CALL DISPLAY
011E 211A 27 AJMP LOOP
28
0120 29 SEGLOCK:
0120 D293 30 SETB P1.3
0122 00 31 NOP
0123 C293 32 CLR P1.3
0125 22 33 RET
34
0126 35 POSITLOCK:
0126 D292 36 SETB P1.2
0128 00 37 NOP
0129 C292 38 CLR P1.2
012B 22 39 RET
40
012C 41 NODISP:
012C 758000 42 MOV P0, #0
012F D292 43 SETB P1.2
0131 00 44 NOP
0132 C292 45 CLR P1.2
0134 22 46 RET
47
0135 48 DELAY:
0135 DCFE 49 DJNZ R4, $
0137 22 50 RET
51
0138 52 COUNTER:
0138 E540 53 MOV A, FREQ
013A 75F064 54 MOV B, #100
013D 84 55 DIV AB
013E F530 56 MOV DISBUF, A
0140 E5F0 57 MOV A, B
0142 75F00A 58 MOV B, #10
A51 MACRO ASSEMBLER MEASURE_FREQ 11/28/2007 15:45:43 PAGE 2
0145 84 59 DIV AB
0146 F531 60 MOV DISBUF+1, A
0148 85F032 61 MOV DISBUF+2, B
014B 22 62 RET
63
014C 64 DISPLAY:
014C E530 65 MOV A, DISBUF
014E 93 66 MOVC A, @A+DPTR
014F F580 67 MOV P0, A
0151 3120 68 CALL SEGLOCK
0153 758004 69 MOV P0, #04H
0156 3126 70 CALL POSITLOCK
0158 3135 71 CALL DELAY
015A 312C 72 CALL NODISP
73
015C E531 74 MOV A, DISBUF+1
015E 93 75 MOVC A, @A+DPTR
015F F580 76 MOV P0, A
0161 3120 77 CALL SEGLOCK
0163 758002 78 MOV P0, #02H
0166 3126 79 CALL POSITLOCK
0168 3135 80 CALL DELAY
016A 312C 81 CALL NODISP
82
016C E532 83 MOV A, DISBUF+2
016E 93 84 MOVC A, @A+DPTR
016F F580 85 MOV P0, A
0171 3120 86 CALL SEGLOCK
0173 758001 87 MOV P0, #01H
0176 3126 88 CALL POSITLOCK
0178 3135 89 CALL DELAY
017A 312C 90 CALL NODISP
017C 22 91 RET
92
017D 93 T1INT:
017D C0E0 94 PUSH ACC
017F C28E 95 CLR TR1
0181 758D3C 96 MOV TH1, #3CH
0184 758BB0 97 MOV TL1, #0B0H
0187 D5390C 98 DJNZ TIME, INTOUT
018A 858A40 99 MOV FREQ, TL0
018D 758A00 100 MOV TL0, #0
0190 758C00 101 MOV TH0, #0
0193 753914 102 MOV TIME, #20
103
0196 104 INTOUT:
0196 D0E0 105 POP ACC
0198 D28E 106 SETB TR1
019A 32 107 RETI
108
019B 109 LEDCODE:
019B C0F9A4B0 110 DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
019F 999282F8
01A3 8090
111 ; 0 1 2 3 4 5 6 7 8 9
01A5 8883C6A1 112 DB 88H,83H,0C6H,0A1H,86H,08EH,0BFH,0FFH,0F7H
01A9 868EBFFF
01AD F7
113 ; A B C D E F - 消隐 _
114 ;================================================
115 END
A51 MACRO ASSEMBLER MEASURE_FREQ 11/28/2007 15:45:43 PAGE 3
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ACC. . . . . . . . D ADDR 00E0H A
B. . . . . . . . . D ADDR 00F0H A
COUNTER. . . . . . C ADDR 0138H A
DELAY. . . . . . . C ADDR 0135H A
DISBUF . . . . . . N NUMB 0030H A
DISPLAY. . . . . . C ADDR 014CH A
EA . . . . . . . . B ADDR 00A8H.7 A
ET1. . . . . . . . B ADDR 00A8H.3 A
FREQ . . . . . . . N NUMB 0040H A
INTOUT . . . . . . C ADDR 0196H A
LEDCODE. . . . . . C ADDR 019BH A
LOOP . . . . . . . C ADDR 011AH A
NODISP . . . . . . C ADDR 012CH A
P0 . . . . . . . . D ADDR 0080H A
P1 . . . . . . . . D ADDR 0090H A
POSIT. . . . . . . N NUMB 0038H A
POSITLOCK. . . . . C ADDR 0126H A
SEGLOCK. . . . . . C ADDR 0120H A
START. . . . . . . C ADDR 0100H A
T1INT. . . . . . . C ADDR 017DH A
TH0. . . . . . . . D ADDR 008CH A
TH1. . . . . . . . D ADDR 008DH A
TIME . . . . . . . N NUMB 0039H A
TL0. . . . . . . . D ADDR 008AH A
TL1. . . . . . . . D ADDR 008BH A
TMOD . . . . . . . D ADDR 0089H A
TR0. . . . . . . . B ADDR 0088H.4 A
TR1. . . . . . . . B ADDR 0088H.6 A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -