?? demo_led_0832.lst
字號:
A51 MACRO ASSEMBLER DEMO_LED_0832 06/02/2006 09:15:26 PAGE 1
MACRO ASSEMBLER A51 V1.11
OBJECT MODULE PLACED IN DEMO_LED_0832.OBJ
ASSEMBLER INVOKED BY: C:\MANLEY\PMEDWIN\A51.EXE DEMO_LED_0832.ASM DB
LOC OBJ LINE SOURCE
1 ; 文檔內容--ADC0832實驗產生正弦波。
2 ;這是一個使用MCS51單片機實現DA轉換程序,無需擴展.
3 ;六個數碼管分別顯示時,分,秒
4 ;程序編制人:蔡祥榮 2004/06/20
5
0021 6 BUFF_KEY EQU 21H ;鍵盤鍵
0022 7 BUFF_LED1 EQU 22H ;數碼管顯示緩存
0023 8 BUFF_LED2 EQU 23H
0024 9 BUFF_LED3 EQU 24H
0025 10 BUFF_LED4 EQU 25H
0026 11 BUFF_LED5 EQU 26H
0027 12 BUFF_LED6 EQU 27H
0028 13 BUFF_LED7 EQU 28H
0029 14 BUFF_LED8 EQU 29H
002A 15 BUFF_LED_LP EQU 2AH ;T0鍵盤顯示掃描緩存
002B 16 BUFF_164 EQU 2BH
002C 17 BUFF_T0 EQU 2CH
002D 18 BUFF_VAL EQU 2DH
0091 19 CLK164 BIT P1.1
0090 20 DAT164 BIT P1.0
0092 21 DIG_A BIT P1.2
0093 22 DIG_B BIT P1.3
0094 23 DIG_C BIT P1.4
0095 24 KEYL1 BIT P1.5
0096 25 KEYL2 BIT P1.6
0097 26 BEEP BIT P1.7
8000 27 CS_0832 EQU 08000H ;CS0832接CS2處
8000 28 ADD_0832 EQU 08000H
0000 29 org 000h
0000 020100 30 JMP main
000B 31 ORG 00BH
000B 02031A 32 JMP T0_INT
0100 33 ORG 100H
0100 758140 34 MAIN: MOV SP ,#40H
0103 75D000 35 MOV PSW,#00H
0106 787F 36 MOV R0,#7FH ;初始化RAM區,
0108 7400 37 CLR_RAM:MOV A,#00H
010A F6 38 MOV @R0,A
010B D8FB 39 DJNZ R0,CLR_RAM
010D 7590FF 40 MOV P1,#0FFH ;INIT
0110 75A0FF 41 MOV P2,#0FFH
0113 7580FF 42 MOV P0,#0FFH
0116 75B0FF 43 MOV P3,#0FFH
0119 758921 44 MOV TMOD,#21h
011C 758CF4 45 MOV TH0,#HIGH(65536-3000) ;T0=3MS
011F 758A47 46 MOV TL0,#LOW(65535-3000)
0122 D28C 47 SETB TR0
0124 D2A9 48 SETB ET0
0126 D2AF 49 SETB EA
0128 752211 50 MOV BUFF_LED1,#17
012B 752311 51 MOV BUFF_LED2,#17
012E 752411 52 MOV BUFF_LED3,#17
0131 752511 53 MOV BUFF_LED4,#17
0134 752611 54 MOV BUFF_LED5,#17
0137 752D00 55 MOV BUFF_VAL,#00H
013A 908000 56 MLOOP: MOV DPTR,#ADD_0832 ;啟動ADC0832
013D E52D 57 MOV A,BUFF_VAL
013F F0 58 MOVX @DPTR,A
A51 MACRO ASSEMBLER DEMO_LED_0832 06/02/2006 09:15:26 PAGE 2
0140 052D 59 INC BUFF_VAL
0142 E52D 60 MOV A,BUFF_VAL
0144 75F064 61 MOV B,#100
0147 84 62 DIV AB
0148 F527 63 MOV BUFF_LED6,A
014A E5F0 64 MOV A,B
014C 75F00A 65 MOV B,#10
014F 84 66 DIV AB
0150 F528 67 MOV BUFF_LED7,A
0152 85F029 68 MOV BUFF_LED8,B
69 ;lcall del
70 ;lcall del
71 ;lcall del
72 ;lcall del
73 ;lcall del
74 ;lcall del
0155 12030D 75 LCALL DEL1S
0158 80E0 76 JMP MLOOP
77
015A 20951C 78 WAIT_KEYL1:JB KEYL1,WAIT_KEYL2 ;等候按鍵!(使用按鍵S1-S8切換AD通到)
015D 752C00 79 MOV BUFF_T0,#00H
0160 E590 80 MOV A,P1
0162 541C 81 ANL A,#00011100B
0164 03 82 RR A
0165 900169 83 MOV DPTR,#TAB_KL1
0168 73 84 JMP @A+DPTR
0169 2198 85 TAB_KL1: AJMP KS1
016B 21AF 86 AJMP KS2
016D 21C6 87 AJMP KS3
016F 21DD 88 AJMP KS4
0171 21F4 89 AJMP KS5
0173 410B 90 AJMP KS6
0175 4122 91 AJMP KS7
0177 4139 92 AJMP KS8
0179 2096DE 93 WAIT_KEYL2:JB KEYL2,WAIT_KEYL1
017C 752C00 94 MOV BUFF_T0,#00H
017F E590 95 MOV A,P1
0181 541C 96 ANL A,#00011100B
0183 03 97 RR A
0184 900188 98 MOV DPTR,#TAB_KL2
0187 73 99 JMP @A+DPTR
0188 4150 100 TAB_KL2: AJMP KS9
018A 4167 101 AJMP KS10
018C 4172 102 AJMP KS11
018E 4189 103 AJMP KS12
0190 41A0 104 AJMP KS13
0192 41B7 105 AJMP KS14
0194 41CE 106 AJMP KS15
0196 41E5 107 AJMP KS16
0198 752800 108 KS1: MOV BUFF_LED7,#00 ;顯示鍵值
019B 752901 109 MOV BUFF_LED8,#01
019E 752211 110 MOV BUFF_LED1,#17
01A1 752311 111 MOV BUFF_LED2,#17
01A4 752511 112 MOV BUFF_LED4,#17
01A7 752611 113 MOV BUFF_LED5,#17
01AA 3095FD 114 JNB KEYL1,$
01AD 80AB 115 JMP WAIT_KEYL1
01AF 752800 116 KS2: MOV BUFF_LED7,#00
01B2 752902 117 MOV BUFF_LED8,#02
01B5 752211 118 MOV BUFF_LED1,#17
01B8 752311 119 MOV BUFF_LED2,#17
01BB 752511 120 MOV BUFF_LED4,#17
01BE 752611 121 MOV BUFF_LED5,#17
01C1 3095FD 122 JNB KEYL1,$
01C4 8094 123 JMP WAIT_KEYL1
01C6 752800 124 KS3: MOV BUFF_LED7,#00
A51 MACRO ASSEMBLER DEMO_LED_0832 06/02/2006 09:15:26 PAGE 3
01C9 752903 125 MOV BUFF_LED8,#03
01CC 752211 126 MOV BUFF_LED1,#17
01CF 752311 127 MOV BUFF_LED2,#17
01D2 752511 128 MOV BUFF_LED4,#17
01D5 752611 129 MOV BUFF_LED5,#17
01D8 3095FD 130 JNB KEYL1,$
01DB 215A 131 JMP WAIT_KEYL1
01DD 752800 132 KS4: MOV BUFF_LED7,#00
01E0 752904 133 MOV BUFF_LED8,#04
01E3 752211 134 MOV BUFF_LED1,#17
01E6 752311 135 MOV BUFF_LED2,#17
01E9 752511 136 MOV BUFF_LED4,#17
01EC 752611 137 MOV BUFF_LED5,#17
01EF 3095FD 138 JNB KEYL1,$
01F2 215A 139 JMP WAIT_KEYL1
01F4 752800 140 KS5: MOV BUFF_LED7,#00
01F7 752905 141 MOV BUFF_LED8,#05
01FA 752211 142 MOV BUFF_LED1,#17
01FD 752311 143 MOV BUFF_LED2,#17
0200 752511 144 MOV BUFF_LED4,#17
0203 752611 145 MOV BUFF_LED5,#17
0206 3095FD 146 JNB KEYL1,$
0209 215A 147 JMP WAIT_KEYL1
020B 752800 148 KS6: MOV BUFF_LED7,#00
020E 752906 149 MOV BUFF_LED8,#06
0211 752211 150 MOV BUFF_LED1,#17
0214 752311 151 MOV BUFF_LED2,#17
0217 752511 152 MOV BUFF_LED4,#17
021A 752611 153 MOV BUFF_LED5,#17
021D 3095FD 154 JNB KEYL1,$
0220 215A 155 JMP WAIT_KEYL1
0222 752800 156 KS7: MOV BUFF_LED7,#00
0225 752907 157 MOV BUFF_LED8,#07
0228 752211 158 MOV BUFF_LED1,#17
022B 752311 159 MOV BUFF_LED2,#17
022E 752511 160 MOV BUFF_LED4,#17
0231 752611 161 MOV BUFF_LED5,#17
0234 3095FD 162 JNB KEYL1,$
0237 215A 163 JMP WAIT_KEYL1
0239 752800 164 KS8: MOV BUFF_LED7,#00
023C 752908 165 MOV BUFF_LED8,#08
023F 752211 166 MOV BUFF_LED1,#17
0242 752311 167 MOV BUFF_LED2,#17
0245 752511 168 MOV BUFF_LED4,#17
0248 752611 169 MOV BUFF_LED5,#17
024B 3095FD 170 JNB KEYL1,$
024E 215A 171 JMP WAIT_KEYL1
0250 752800 172 KS9: MOV BUFF_LED7,#00
0253 752909 173 MOV BUFF_LED8,#09
0256 752211 174 MOV BUFF_LED1,#17
0259 752311 175 MOV BUFF_LED2,#17
025C 752511 176 MOV BUFF_LED4,#17
025F 752611 177 MOV BUFF_LED5,#17
0262 3096FD 178 JNB KEYL2,$
0265 215A 179 JMP WAIT_KEYL1
0267 752801 180 KS10: MOV BUFF_LED7,#01
026A 752900 181 MOV BUFF_LED8,#00
026D 3096FD 182 JNB KEYL2,$
0270 215A 183 JMP WAIT_KEYL1
0272 752801 184 KS11: MOV BUFF_LED7,#01
0275 752901 185 MOV BUFF_LED8,#01
0278 752211 186 MOV BUFF_LED1,#17
027B 752311 187 MOV BUFF_LED2,#17
027E 752511 188 MOV BUFF_LED4,#17
0281 752611 189 MOV BUFF_LED5,#17
0284 3096FD 190 JNB KEYL2,$
A51 MACRO ASSEMBLER DEMO_LED_0832 06/02/2006 09:15:26 PAGE 4
0287 215A 191 JMP WAIT_KEYL1
0289 752801 192 KS12: MOV BUFF_LED7,#01
028C 752902 193 MOV BUFF_LED8,#02
028F 752211 194 MOV BUFF_LED1,#17
0292 752311 195 MOV BUFF_LED2,#17
0295 752511 196 MOV BUFF_LED4,#17
0298 752611 197 MOV BUFF_LED5,#17
029B 3096FD 198 JNB KEYL2,$
029E 215A 199 JMP WAIT_KEYL1
02A0 752801 200 KS13: MOV BUFF_LED7,#01
02A3 752903 201 MOV BUFF_LED8,#03
02A6 752211 202 MOV BUFF_LED1,#17
02A9 752311 203 MOV BUFF_LED2,#17
02AC 752511 204 MOV BUFF_LED4,#17
02AF 752611 205 MOV BUFF_LED5,#17
02B2 3096FD 206 JNB KEYL2,$
02B5 215A 207 JMP WAIT_KEYL1
02B7 752801 208 KS14: MOV BUFF_LED7,#01
02BA 752904 209 MOV BUFF_LED8,#04
02BD 752211 210 MOV BUFF_LED1,#17
02C0 752311 211 MOV BUFF_LED2,#17
02C3 752511 212 MOV BUFF_LED4,#17
02C6 752611 213 MOV BUFF_LED5,#17
02C9 3096FD 214 JNB KEYL2,$
02CC 215A 215 JMP WAIT_KEYL1
02CE 752801 216 KS15: MOV BUFF_LED7,#01
02D1 752905 217 MOV BUFF_LED8,#05
02D4 752211 218 MOV BUFF_LED1,#17
02D7 752311 219 MOV BUFF_LED2,#17
02DA 752511 220 MOV BUFF_LED4,#17
02DD 752611 221 MOV BUFF_LED5,#17
02E0 3096FD 222 JNB KEYL2,$
02E3 215A 223 JMP WAIT_KEYL1
02E5 752801 224 KS16: MOV BUFF_LED7,#01
02E8 752906 225 MOV BUFF_LED8,#06
02EB 752211 226 MOV BUFF_LED1,#17
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -