📄 2402main.lst
字号:
0101 120000 F 444 LCALL ?C?ULDIV
0104 7400 F 445 MOV A,#LOW (Disp_Tab)
0106 2F 446 ADD A,R7
0107 F582 447 MOV DPL,A
0109 7400 F 448 MOV A,#HIGH (Disp_Tab)
010B 3E 449 ADDC A,R6
010C F583 450 MOV DPH,A
010E E4 451 CLR A
010F 93 452 MOVC A,@A+DPTR
0110 FF 453 MOV R7,A
0111 E4 454 CLR A
0112 8F00 F 455 MOV LedOut+07H,R7
0114 F500 F 456 MOV LedOut+06H,A
0116 F500 F 457 MOV LedOut+05H,A
0118 F500 F 458 MOV LedOut+04H,A
459 ; LedOut[2]=Disp_Tab[LedNumVal%100/10]&0x7f;
460 ; SOURCE LINE # 88
011A 7B64 461 MOV R3,#064H
011C FA 462 MOV R2,A
011D F9 463 MOV R1,A
011E F8 464 MOV R0,A
011F AF00 F 465 MOV R7,LedNumVal+03H
0121 AE00 F 466 MOV R6,LedNumVal+02H
0123 AD00 F 467 MOV R5,LedNumVal+01H
0125 AC00 F 468 MOV R4,LedNumVal
0127 120000 F 469 LCALL ?C?ULDIV
012A AC00 470 MOV R4,AR0
012C AD01 471 MOV R5,AR1
012E AE02 472 MOV R6,AR2
0130 AF03 473 MOV R7,AR3
0132 E4 474 CLR A
0133 7B0A 475 MOV R3,#0AH
0135 FA 476 MOV R2,A
0136 F9 477 MOV R1,A
0137 F8 478 MOV R0,A
0138 120000 F 479 LCALL ?C?ULDIV
013B 7400 F 480 MOV A,#LOW (Disp_Tab)
013D 2F 481 ADD A,R7
013E F582 482 MOV DPL,A
0140 7400 F 483 MOV A,#HIGH (Disp_Tab)
0142 3E 484 ADDC A,R6
0143 F583 485 MOV DPH,A
0145 E4 486 CLR A
0146 93 487 MOVC A,@A+DPTR
0147 547F 488 ANL A,#07FH
0149 FF 489 MOV R7,A
014A E4 490 CLR A
014B 8F00 F 491 MOV LedOut+0BH,R7
014D F500 F 492 MOV LedOut+0AH,A
014F F500 F 493 MOV LedOut+09H,A
0151 F500 F 494 MOV LedOut+08H,A
495 ; LedOut[3]=Disp_Tab[LedNumVal%10];
496 ; SOURCE LINE # 89
0153 7B0A 497 MOV R3,#0AH
0155 FA 498 MOV R2,A
0156 F9 499 MOV R1,A
0157 F8 500 MOV R0,A
0158 AF00 F 501 MOV R7,LedNumVal+03H
015A AE00 F 502 MOV R6,LedNumVal+02H
015C AD00 F 503 MOV R5,LedNumVal+01H
015E AC00 F 504 MOV R4,LedNumVal
0160 120000 F 505 LCALL ?C?ULDIV
0163 7400 F 506 MOV A,#LOW (Disp_Tab)
A51 MACRO ASSEMBLER 2402MAIN 09/16/2009 23:41:28 PAGE 9
0165 2B 507 ADD A,R3
0166 F582 508 MOV DPL,A
0168 7400 F 509 MOV A,#HIGH (Disp_Tab)
016A 3A 510 ADDC A,R2
016B F583 511 MOV DPH,A
016D E4 512 CLR A
016E 93 513 MOVC A,@A+DPTR
016F FF 514 MOV R7,A
0170 E4 515 CLR A
0171 8F00 F 516 MOV LedOut+0FH,R7
0173 F500 F 517 MOV LedOut+0EH,A
0175 F500 F 518 MOV LedOut+0DH,A
0177 F500 F 519 MOV LedOut+0CH,A
520 ;
521 ; for(i=0; i<4; i++)
522 ; SOURCE LINE # 91
0179 F500 F 523 MOV i?140,A
017B 524 ?C0012:
017B E500 F 525 MOV A,i?140
017D C3 526 CLR C
017E 9404 527 SUBB A,#04H
0180 4003 528 JC $ + 5H
0182 020000 F 529 LJMP ?C0002
530 ; {
531 ; SOURCE LINE # 92
532 ;
533 ; P0 = LedOut[i];
534 ; SOURCE LINE # 94
0185 E500 F 535 MOV A,i?140
0187 25E0 536 ADD A,ACC
0189 25E0 537 ADD A,ACC
018B 2400 F 538 ADD A,#LOW (LedOut)
018D F8 539 MOV R0,A
018E 120000 F 540 LCALL ?C?LLDIDATA
0191 8F80 541 MOV P0,R7
542 ;
543 ; switch(i)
544 ; SOURCE LINE # 96
0193 E500 F 545 MOV A,i?140
0195 14 546 DEC A
0196 6011 547 JZ ?C0017
0198 14 548 DEC A
0199 6016 549 JZ ?C0018
019B 14 550 DEC A
019C 6017 551 JZ ?C0019
019E 14 552 DEC A
019F 601C 553 JZ ?C0020
01A1 2404 554 ADD A,#04H
01A3 701E 555 JNZ ?C0015
556 ; {
557 ; SOURCE LINE # 97
558 ; case 0:LS138A=0; LS138B=0; LS138C=0; break;
559 ; SOURCE LINE # 98
01A5 560 ?C0016:
01A5 C2A2 561 CLR LS138A
01A7 8002 562 SJMP ?C0037
563 ; case 1:LS138A=1; LS138B=0; LS138C=0; break;
564 ; SOURCE LINE # 99
01A9 565 ?C0017:
01A9 D2A2 566 SETB LS138A
01AB 567 ?C0037:
01AB C2A3 568 CLR LS138B
01AD C2A4 569 CLR LS138C
01AF 8012 570 SJMP ?C0015
571 ; case 2:LS138A=0; LS138B=1; LS138C=0; break;
572 ; SOURCE LINE # 100
A51 MACRO ASSEMBLER 2402MAIN 09/16/2009 23:41:28 PAGE 10
01B1 573 ?C0018:
01B1 C2A2 574 CLR LS138A
01B3 8002 575 SJMP ?C0038
576 ; case 3:LS138A=1; LS138B=1; LS138C=0; break;
577 ; SOURCE LINE # 101
01B5 578 ?C0019:
01B5 D2A2 579 SETB LS138A
01B7 580 ?C0038:
01B7 D2A3 581 SETB LS138B
01B9 C2A4 582 CLR LS138C
01BB 8006 583 SJMP ?C0015
584 ; case 4:LS138A=0; LS138B=0; LS138C=1; break;
585 ; SOURCE LINE # 102
01BD 586 ?C0020:
01BD C2A2 587 CLR LS138A
01BF C2A3 588 CLR LS138B
01C1 D2A4 589 SETB LS138C
590 ; }
591 ; SOURCE LINE # 103
01C3 592 ?C0015:
593 ;
594 ; delay(100);
595 ; SOURCE LINE # 105
01C3 7F64 596 MOV R7,#064H
01C5 7E00 597 MOV R6,#00H
01C7 120000 F 598 LCALL _delay
599 ; }
600 ; SOURCE LINE # 106
01CA 0500 F 601 INC i?140
01CC 80AD 602 SJMP ?C0012
603 ; END OF main
604
605 ;
606 ; // LS138A=1; LS138B=1; LS138C=1;
607 ;
608 ; }
609 ; }
610 ;
611 ;
612 ; void delay(unsigned int i)
613
---- 614 RSEG ?PR?_delay?2402MAIN
0000 615 _delay:
616 USING 0
617 ; SOURCE LINE # 114
618 ;---- Variable 'i?242' assigned to Register 'R6/R7' ----
619 ; {
620 ; SOURCE LINE # 115
621 ; char j;
622 ; for(i; i > 0; i--)
623 ; SOURCE LINE # 117
0000 624 ?C0022:
0000 D3 625 SETB C
0001 EF 626 MOV A,R7
0002 9400 627 SUBB A,#00H
0004 EE 628 MOV A,R6
0005 9400 629 SUBB A,#00H
0007 4014 630 JC ?C0028
631 ; for(j = 200; j > 0; j--);
632 ; SOURCE LINE # 118
633 ;---- Variable 'j?243' assigned to Register 'R5' ----
0009 7DC8 634 MOV R5,#0C8H
000B 635 ?C0025:
000B D3 636 SETB C
000C ED 637 MOV A,R5
000D 6480 638 XRL A,#080H
A51 MACRO ASSEMBLER 2402MAIN 09/16/2009 23:41:28 PAGE 11
000F 9480 639 SUBB A,#080H
0011 4003 640 JC ?C0024
0013 1D 641 DEC R5
0014 80F5 642 SJMP ?C0025
0016 643 ?C0024:
0016 EF 644 MOV A,R7
0017 1F 645 DEC R7
0018 70E6 646 JNZ ?C0022
001A 1E 647 DEC R6
001B 648 ?C0035:
001B 80E3 649 SJMP ?C0022
650 ; }
651 ; SOURCE LINE # 119
001D 652 ?C0028:
001D 22 653 RET
654 ; END OF _delay
655
---- 656 CSEG AT 0001BH
001B 020000 F 657 LJMP T1zd
658
659 ;
660 ;
661 ; /*************************************
662 ; [ t1 (0.5ms)中断] 中断中做 PWM 输出
663 ; ------------1000/(0.02ms*250)=200Hz
664 ; *************************************/
665 ; void T1zd(void) interrupt 3 //3 为定时器1的中断号 1 定时器0的中断号 0 外部中断1 2 外部
中断2 4 串口中断
666
---- 667 RSEG ?PR?T1zd?2402MAIN
668 USING 0
0000 669 T1zd:
0000 C0E0 670 PUSH ACC
0002 C0D0 671 PUSH PSW
0004 75D000 672 MOV PSW,#00H
0007 C000 673 PUSH AR0
0009 C006 674 PUSH AR6
000B C007 675 PUSH AR7
676 USING 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -