📄 ex.lst
字号:
00CF +1 177 TF2 BIT T2CON.7 ; TIMER 2 OVERFLOW FLAG
+1 178 ;
+1 179 ; PSW D0H
00D0 +1 180 P BIT PSW.0 ; ACCUMULATOR PARITY FLAG
00D1 +1 181 F1 BIT PSW.1 ; USER FLAG 1
00D2 +1 182 OV BIT PSW.2 ; OVERFLOW FLAG
00D3 +1 183 RS0 BIT PSW.3 ; REGISTER BANK SELECT 0
00D4 +1 184 RS1 BIT PSW.4 ; REGISTER BANK SELECT 1
00D5 +1 185 F0 BIT PSW.5 ; USER FLAG 0
00D6 +1 186 AC BIT PSW.6 ; AUXILIARY CARRY FLAG
00D7 +1 187 CY BIT PSW.7 ; CARRY FLAG
+1 188 ;
+1 189 ; PCA0CN D8H
00D8 +1 190 CCF0 BIT PCA0CN.0 ; PCA 0 MODULE 0 INTERRUPT FLAG
A51 MACRO ASSEMBLER EX 12/09/2008 17:19:28 PAGE 4
00D9 +1 191 CCF1 BIT PCA0CN.1 ; PCA 0 MODULE 1 INTERRUPT FLAG
00DA +1 192 CCF2 BIT PCA0CN.2 ; PCA 0 MODULE 2 INTERRUPT FLAG
00DB +1 193 CCF3 BIT PCA0CN.3 ; PCA 0 MODULE 3 INTERRUPT FLAG
00DC +1 194 CCF4 BIT PCA0CN.4 ; PCA 0 MODULE 4 INTERRUPT FLAG
00DE +1 195 CR BIT PCA0CN.6 ; PCA 0 COUNTER RUN CONTROL BIT
00DF +1 196 CF BIT PCA0CN.7 ; PCA 0 COUNTER OVERFLOW FLAG
+1 197 ;
+1 198 ; ADC0CN E8H
00E8 +1 199 ADLJST BIT ADC0CN.0 ; ADC 0 RIGHT JUSTIFY DATA BIT
00E9 +1 200 ADWINT BIT ADC0CN.1 ; ADC 0 WINDOW COMPARE INTERRUPT FLAG
00EA +1 201 ADSTM0 BIT ADC0CN.2 ; ADC 0 START OF CONVERSION MODE BIT 0
00EB +1 202 ADSTM1 BIT ADC0CN.3 ; ADC 0 START OF CONVERSION MODE BIT 1
00EC +1 203 ADBUSY BIT ADC0CN.4 ; ADC 0 BUSY FLAG
00ED +1 204 ADCINT BIT ADC0CN.5 ; ADC 0 CONVERISION COMPLETE INTERRUPT FLAG
00EE +1 205 ADCTM BIT ADC0CN.6 ; ADC 0 TRACK MODE
00EF +1 206 ADCEN BIT ADC0CN.7 ; ADC 0 ENABLE
+1 207 ;
+1 208 ; SPI0CN F8H
00F8 +1 209 SPIEN BIT SPI0CN.0 ; SPI 0 SPI ENABLE
00F9 +1 210 MSTEN BIT SPI0CN.1 ; SPI 0 MASTER ENABLE
00FA +1 211 SLVSEL BIT SPI0CN.2 ; SPI 0 SLAVE SELECT
00FB +1 212 TXBSY BIT SPI0CN.3 ; SPI 0 TX BUSY FLAG
00FC +1 213 RXOVRN BIT SPI0CN.4 ; SPI 0 RX OVERRUN FLAG
00FD +1 214 MODF BIT SPI0CN.5 ; SPI 0 MODE FAULT FLAG
00FE +1 215 WCOL BIT SPI0CN.6 ; SPI 0 WRITE COLLISION FLAG
00FF +1 216 SPIF BIT SPI0CN.7 ; SPI 0 INTERRUPT FLAG
217 ;$include (tp.inc)
+1 218
+1 219
0093 +1 220 RS_af EQU P1.3 ; Afficheur.
0091 +1 221 EN_af EQU P1.1 ;
0090 +1 222 TEST EQU P1.0
223
224 PROG segment CODE
225 EXTRN CODE (init)
226 EXTRN CODE (af_ini)
227 EXTRN CODE (affiche)
228 EXTRN CODE (bcd_ascii)
229 EXTRN CODE (clavier)
230 VAR segment DATA
231 ;-----------------------------------------------------------
232 ;RESET and INTERRUPT VECTORS
---- 233 cseg AT 0
0000 020000 F 234 LJMP Debut
---- 235 cseg AT 2BH
002B 020000 F 236 LJMP T2_int
237 ;-----------------------------------------------------------
---- 238 rseg PROG
0000 75817F 239 Debut: MOV SP,#7FH ;Pile en 80
H
0003 120000 F 240 LCALL init
0006 120000 F 241 LCALL af_ini
242
0009 7480 243 boucle: MOV A,#80H
000B 120000 F 244 LCALL affiche
000E 7430 245 MOV A,#'0'
0010 120000 F 246 LCALL affiche
0013 7430 247 MOV A,#'0'
0015 120000 F 248 LCALL affiche
0018 743A 249 MOV A,#':'
001A 120000 F 250 LCALL affiche
001D 7430 251 MOV A,#'0'
001F 120000 F 252 LCALL affiche
0022 7430 253 MOV A,#'0'
0024 120000 F 254 LCALL affiche
A51 MACRO ASSEMBLER EX 12/09/2008 17:19:28 PAGE 5
255
0027 120000 F 256 LCALL clavier
002A BF2ADC 257 CJNE R7,#'*',boucle
258
002D 750000 F 259 MOV ct,#00H
0030 750000 F 260 MOV min,#00H
0033 750000 F 261 MOV sec,#00H
0036 758E00 262 MOV CKCON,#00H
0039 75CAB0 263 MOV RCAP2L,#LOW(-50000)
003C 75CB3C 264 MOV RCAP2H,#HIGH(-50000)
003F 75CCB0 265 MOV TL2,#LOW(-50000)
0042 75CD3C 266 MOV TH2,#HIGH(-50000)
0045 75C804 267 MOV T2CON,#00000100B
0048 75A8A0 268 MOV IE,#10100000B
269
270
004B 80FE 271 SJMP $
272
273 ;-----------------------------------------------------------
004D C0E0 274 T2_int: PUSH ACC
004F C0D0 275 PUSH PSW
0051 0500 F 276 INC ct
0053 E500 F 277 MOV A,ct
0055 B4143F 278 CJNE A,#20,T2_fin
0058 B290 279 CPL TEST
280
281
005A E500 F 282 MOV A,sec
005C 2401 283 ADD A,#1
005E D4 284 DA A
005F B4600C 285 CJNE A,#60H,T1
286
0062 750000 F 287 MOV sec,#00H
0065 E500 F 288 MOV A,min
0067 2401 289 ADD A,#1
0069 D4 290 DA A
006A F500 F 291 MOV min,A
006C 8002 292 SJMP T2
293
006E F500 F 294 T1: MOV sec,A
0070 295 T2:
0070 7480 296 MOV A,#80H
0072 120000 F 297 LCALL affiche
0075 E500 F 298 MOV A,min
0077 120000 F 299 LCALL bcd_ascii
007A 120000 F 300 LCALL affiche
007D E5F0 301 MOV A,B
007F 120000 F 302 LCALL affiche
303
0082 7483 304 MOV A,#83H
0084 120000 F 305 LCALL affiche
0087 E500 F 306 MOV A,sec
0089 120000 F 307 LCALL bcd_ascii
008C 120000 F 308 LCALL affiche
008F E5F0 309 MOV A,B
0091 120000 F 310 LCALL affiche
311
0094 750000 F 312 MOV ct,#00H
313
314
315
0097 316 T2_fin:
0097 D0D0 317 POP PSW
0099 D0E0 318 POP ACC
009B C2CF 319 CLR TF2
320
A51 MACRO ASSEMBLER EX 12/09/2008 17:19:28 PAGE 6
009D 32 321 RETI
322 ;-------------------------------------
---- 323 rseg VAR
0000 324 min: DS 1
0001 325 sec: DS 1
0002 326 ct: DS 1
;compteur par 20
327 ;-------------------------------------
328 ;End of file
329 END
A51 MACRO ASSEMBLER EX 12/09/2008 17:19:28 PAGE 7
XREF SYMBOL TABLE LISTING
---- ------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES / REFERENCES
AA . . . . . . . . B ADDR 00C0H.2 A 163#
AC . . . . . . . . B ADDR 00D0H.6 A 186#
ACC. . . . . . . . D ADDR 00E0H A 94# 274 318
ADBUSY . . . . . . B ADDR 00E8H.4 A 203#
ADC0CF . . . . . . D ADDR 00BCH A 62#
ADC0CN . . . . . . D ADDR 00E8H A 100# 199 200 201 202 203 204 205 206
ADC0GTH. . . . . . D ADDR 00C5H A 70#
ADC0GTL. . . . . . D ADDR 00C4H A 69#
ADC0H. . . . . . . D ADDR 00BFH A 64#
ADC0L. . . . . . . D ADDR 00BEH A 63#
ADC0LTH. . . . . . D ADDR 00C7H A 72#
ADC0LTL. . . . . . D ADDR 00C6H A 71#
ADCEN. . . . . . . B ADDR 00E8H.7 A 206#
ADCINT . . . . . . B ADDR 00E8H.5 A 204#
ADCTM. . . . . . . B ADDR 00E8H.6 A 205#
ADLJST . . . . . . B ADDR 00E8H.0 A 199#
ADSTM0 . . . . . . B ADDR 00E8H.2 A 201#
ADSTM1 . . . . . . B ADDR 00E8H.3 A 202#
ADWINT . . . . . . B ADDR 00E8H.1 A 200#
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -