📄 时钟温度显示.lst
字号:
0291 22 367 RET
368 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
369 ; 检测显示器是否忙
370 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
0292 371 CHECKBUSY:
0292 C0E0 372 PUSH ACC
0294 373 CHECKBUSYLOOP:
0294 C2B7 374 CLR E
0296 D2B6 375 SETB RW
0298 C2B5 376 CLR RS
029A D2B7 377 SETB E
029C E5A0 378 MOV A,DATDB
029E C2B7 379 CLR E
02A0 20E7F1 380 JB ACC.7,CHECKBUSYLOOP;BF=1时忙,直到检测到BF=0时才跳出循环
02A3 D0E0 381 POP ACC
02A5 1202E5 382 CALL DELAY
02A8 22 383 RET
A51 MACRO ASSEMBLER 时钟温度显示 10/14/2004 16:10:32 PAGE 7
384 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
385 ; 写寄存器子程序
386 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
02A9 5192 387 WRITE: CALL CHECKBUSY
02AB C2B7 388 CLR E
02AD C2B6 389 CLR RW
02AF C2B5 390 CLR RS
02B1 D2B7 391 SETB E
02B3 F5A0 392 MOV DATDB,A
02B5 C2B7 393 CLR E
02B7 22 394 RET
395 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
396 ; 写显示内容字程序
397 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
02B8 398 WRITELCDDATA:
02B8 5192 399 CALL CHECKBUSY
02BA C2B7 400 CLR E
02BC C2B6 401 CLR RW
02BE D2B5 402 SETB RS
02C0 D2B7 403 SETB E
02C2 F5A0 404 MOV DATDB,A
02C4 C2B7 405 CLR E
02C6 22 406 RET
407 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
02C7 7401 408 CLS: MOV A,#01H;清显示屏
02C9 51A9 409 CALL WRITE
02CB 22 410 RET
411 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
02CC C0E0 412 PRSTRING: PUSH ACC
02CE E4 413 PRLOOP: CLR A
02CF EB 414 mov a,r3
02D0 93 415 MOVC A,@A+DPTR;查显示内容表
02D1 6005 416 JZ EPR;判断是否查到结束标志位00H
02D3 51B8 417 CALL WRITELCDDATA
02D5 A3 418 INC DPTR
02D6 80F6 419 JMP PRLOOP
02D8 D0E0 420 EPR: POP ACC
02DA 22 421 RET
02DB C0E0 422 PRSTRING1: PUSH ACC
02DD E4 423 PRLOOP1: CLR A
02DE EB 424 mov a,r3
02DF 93 425 MOVC A,@A+DPTR;查显示内容表
02E0 51B8 426 CALL WRITELCDDATA
02E2 D0E0 427 EPR1: POP ACC
02E4 22 428 RET
429 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
02E5 7E05 430 DELAY: MOV R6,#5
02E7 7FF8 431 D1: MOV R7,#248
02E9 DFFE 432 DJNZ R7,$
02EB DEFA 433 DJNZ R6,D1
02ED 22 434 RET
435 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
436 ; 延时 ;;;;;;;;;
02EE 7E14 437 DELAY1MS: MOV R6,#14H
02F0 7F19 438 DL1: MOV R7,#19H
02F2 DFFE 439 DL2: DJNZ R7,DL2
02F4 DEFA 440 DJNZ R6,DL1
02F6 22 441 RET
02F7 51EE 442 DELAY5MS:ACALL DELAY1MS
02F9 51EE 443 ACALL DELAY1MS
02FB 51EE 444 ACALL DELAY1MS
02FD 51EE 445 ACALL DELAY1MS
02FF 51EE 446 ACALL DELAY1MS
0301 51F7 447 DS20MS: ACALL DELAY5MS
0303 51F7 448 ACALL DELAY5MS
0305 51F7 449 ACALL DELAY5MS
A51 MACRO ASSEMBLER 时钟温度显示 10/14/2004 16:10:32 PAGE 8
0307 51F7 450 ACALL DELAY5MS
0309 22 451 RET
030A 7101 452 DS100MS:ACALL DS20MS
030C 7101 453 ACALL DS20MS
030E 7101 454 ACALL DS20MS
0310 7101 455 ACALL DS20MS
0312 7101 456 ACALL DS20MS
0314 22 457 RET
0315 12030A 458 DS200MS:LCALL DS100MS
0318 710A 459 ACALL DS100MS
031A 22 460 RET
461
031B 7115 462 DL05S: ACALL DS200MS
031D 7115 463 ACALL DS200MS
031F 710A 464 ACALL DS100MS
0321 711B 465 DL1S: ACALL DL05S
0323 711B 466 ACALL DL05S
0325 22 467 RET
468 END
A51 MACRO ASSEMBLER 时钟温度显示 10/14/2004 16:10:32 PAGE 9
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ACC. . . . . . . . D ADDR 00E0H A
ADD1 . . . . . . . C ADDR 00A6H A
ADDHH. . . . . . . C ADDR 008CH A
ADDMM. . . . . . . C ADDR 007FH A
ADDSS. . . . . . . C ADDR 0074H A
B. . . . . . . . . D ADDR 00F0H A
CHECKBUSY. . . . . C ADDR 0292H A
CHECKBUSYLOOP. . . C ADDR 0294H A
CLEARDISP. . . . . C ADDR 0033H A
CLR0 . . . . . . . C ADDR 00B8H A
CLS. . . . . . . . C ADDR 02C7H A
D1 . . . . . . . . C ADDR 02E7H A
DAT. . . . . . . . B ADDR 0090H.0 A
DATDB. . . . . . . D ADDR 00A0H A
DELAY. . . . . . . C ADDR 02E5H A
DELAY1MS . . . . . C ADDR 02EEH A
DELAY5MS . . . . . C ADDR 02F7H A
DISPLAY1 . . . . . C ADDR 0189H A
DISPLAY2 . . . . . C ADDR 01A3H A
DISPLAY3 . . . . . C ADDR 020BH A
DL05S. . . . . . . C ADDR 031BH A
DL1. . . . . . . . C ADDR 02F0H A
DL1S . . . . . . . C ADDR 0321H A
DL2. . . . . . . . C ADDR 02F2H A
DS100MS. . . . . . C ADDR 030AH A
DS200MS. . . . . . C ADDR 0315H A
DS20MS . . . . . . C ADDR 0301H A
E. . . . . . . . . B ADDR 00B0H.7 A
EA . . . . . . . . B ADDR 00A8H.7 A
EPR. . . . . . . . C ADDR 02D8H A
EPR1 . . . . . . . C ADDR 02E2H A
ET0. . . . . . . . B ADDR 00A8H.1 A
FLAG . . . . . . . B ADDR 0020H.0 A
HOUR . . . . . . . C ADDR 0099H A
INITIAL. . . . . . C ADDR 0282H A
INTT0. . . . . . . C ADDR 005AH A
LINE1. . . . . . . C ADDR 0267H A
LINE2. . . . . . . C ADDR 026DH A
LINE3. . . . . . . C ADDR 027CH A
OUT. . . . . . . . C ADDR 0111H A
OUTT0. . . . . . . C ADDR 009DH A
P1 . . . . . . . . D ADDR 0090H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
PRLOOP . . . . . . C ADDR 02CEH A
PRLOOP1. . . . . . C ADDR 02DDH A
PRSTRING . . . . . C ADDR 02CCH A
PRSTRING1. . . . . C ADDR 02DBH A
PSW. . . . . . . . D ADDR 00D0H A
READ1812 . . . . . C ADDR 012CH A
READ1812A. . . . . C ADDR 012FH A
RETTEMP. . . . . . C ADDR 00E5H A
RS . . . . . . . . B ADDR 00B0H.5 A
RW . . . . . . . . B ADDR 00B0H.6 A
SESS . . . . . . . C ADDR 0109H A
START. . . . . . . C ADDR 002CH A
START1 . . . . . . C ADDR 0052H A
TEMP . . . . . . . C ADDR 00BDH A
TEMPH. . . . . . . N NUMB 0022H A
TEMPL. . . . . . . N NUMB 0021H A
A51 MACRO ASSEMBLER 时钟温度显示 10/14/2004 16:10:32 PAGE 10
TH0. . . . . . . . D ADDR 008CH A
TL0. . . . . . . . D ADDR 008AH A
TMOD . . . . . . . D ADDR 0089H A
TR0. . . . . . . . B ADDR 0088H.4 A
TRANNUM. . . . . . C ADDR 0147H A
TT0. . . . . . . . C ADDR 0152H A
TT1. . . . . . . . C ADDR 0163H A
WRITE. . . . . . . C ADDR 02A9H A
WRITE1812. . . . . C ADDR 0114H A
WRITE1812A . . . . C ADDR 0116H A
WRITELCDDATA . . . C ADDR 02B8H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -