⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lst

📁 一种51单片机接收电话线上DTMF(拨号DTMF的应用程序)
💻 LST
📖 第 1 页 / 共 5 页
字号:
                                           ; SOURCE LINE # 53
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 11  

0021 D28C              SETB    TR0
                                           ; SOURCE LINE # 55
0023 74FF              MOV     A,#0FFH
0025 F500        R     MOV     OTimer_RD_Counter,A
0027 F500        R     MOV     OTimer_RD_Counter+01H,A
                                           ; SOURCE LINE # 57
0029         ?C0020:
0029 22                RET     
             ; FUNCTION Sys_TimerInit (END)

             ; FUNCTION _Sys_TimerReqire (BEGIN)
;---- Variable 'OTimerID' assigned to Register 'R6' ----
0000 AE07              MOV     R6,AR7
;---- Variable 'Interval' assigned to Register 'R5' ----
;---- Variable 'Mode' assigned to Register 'R3' ----
                                           ; SOURCE LINE # 63
                                           ; SOURCE LINE # 64
                                           ; SOURCE LINE # 66
0002 C2A9              CLR     ET0
                                           ; SOURCE LINE # 67
;---- Variable 'temp_ret' assigned to Register 'R4' ----
0004 7C01              MOV     R4,#01H
                                           ; SOURCE LINE # 69
0006 EE                MOV     A,R6
0007 D3                SETB    C
0008 9407              SUBB    A,#07H
000A 4005              JC      ?C0021
                                           ; SOURCE LINE # 70
                                           ; SOURCE LINE # 71
000C D2A9              SETB    ET0
                                           ; SOURCE LINE # 72
000E 7F01              MOV     R7,#01H
0010 22                RET     
                                           ; SOURCE LINE # 73
0011         ?C0021:
                                           ; SOURCE LINE # 74
0011 ED                MOV     A,R5
0012 7011              JNZ     ?C0023
                                           ; SOURCE LINE # 75
                                           ; SOURCE LINE # 76
0014 EC                MOV     A,R4
0015 A806              MOV     R0,AR6
0017 08                INC     R0
0018 8002              SJMP    ?C0133
001A         ?C0132:
001A C3                CLR     C
001B 33                RLC     A
001C         ?C0133:
001C D8FC              DJNZ    R0,?C0132
001E 4200        R     ORL     OTimer_RD_Status,A
                                           ; SOURCE LINE # 77
0020 D2A9              SETB    ET0
                                           ; SOURCE LINE # 78
0022 7F00              MOV     R7,#00H
0024 22                RET     
                                           ; SOURCE LINE # 79
0025         ?C0023:
                                           ; SOURCE LINE # 81
0025 7400        R     MOV     A,#LOW OTimer_RD_Interval
0027 2E                ADD     A,R6
0028 F8                MOV     R0,A
0029 A605              MOV     @R0,AR5
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 12  

                                           ; SOURCE LINE # 82
002B 7400        R     MOV     A,#LOW OTimer_RD_DecCounter
002D 2E                ADD     A,R6
002E F8                MOV     R0,A
002F A605              MOV     @R0,AR5
                                           ; SOURCE LINE # 83
0031 EC                MOV     A,R4
0032 A806              MOV     R0,AR6
0034 08                INC     R0
0035 8002              SJMP    ?C0135
0037         ?C0134:
0037 C3                CLR     C
0038 33                RLC     A
0039         ?C0135:
0039 D8FC              DJNZ    R0,?C0134
003B FF                MOV     R7,A
003C 4200        R     ORL     OTimer_RD_Enable,A
                                           ; SOURCE LINE # 84
003E F4                CPL     A
003F FD                MOV     R5,A
0040 5200        R     ANL     OTimer_RD_Status,A
                                           ; SOURCE LINE # 85
0042 EB                MOV     A,R3
0043 7005              JNZ     ?C0024
                                           ; SOURCE LINE # 86
0045 ED                MOV     A,R5
0046 5200        R     ANL     OTimer_RD_Mode,A
0048 8003              SJMP    ?C0025
004A         ?C0024:
                                           ; SOURCE LINE # 88
004A EF                MOV     A,R7
004B 4200        R     ORL     OTimer_RD_Mode,A
004D         ?C0025:
                                           ; SOURCE LINE # 89
004D D2A9              SETB    ET0
                                           ; SOURCE LINE # 90
004F 7F00              MOV     R7,#00H
                                           ; SOURCE LINE # 91
0051         ?C0022:
0051 22                RET     
             ; FUNCTION _Sys_TimerReqire (END)

             ; FUNCTION OTimer_RP_Interrupt (BEGIN)
0000 C0E0              PUSH    ACC
0002 C083              PUSH    DPH
0004 C082              PUSH    DPL
0006 C0D0              PUSH    PSW
0008 75D010            MOV     PSW,#010H
                                           ; SOURCE LINE # 94
                                           ; SOURCE LINE # 98
000B 758CDC            MOV     TH0,#0DCH
                                           ; SOURCE LINE # 99
000E 758A17            MOV     TL0,#017H
                                           ; SOURCE LINE # 100
0011 0500        R     INC     OTimer_RD_10msCounter
                                           ; SOURCE LINE # 101
0013 0500        R     INC     OTimer_RD_DelayCounters+01H
0015 E500        R     MOV     A,OTimer_RD_DelayCounters+01H
0017 7002              JNZ     ?C0136
0019 0500        R     INC     OTimer_RD_DelayCounters
001B         ?C0136:
                                           ; SOURCE LINE # 102
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 13  

001B 120000      R     LCALL   display_Line
                                           ; SOURCE LINE # 103
001E E500        R     MOV     A,OTimer_RD_10msCounter
0020 640A              XRL     A,#0AH
0022 7064              JNZ     ?C0027
0024         ?C0026:
                                           ; SOURCE LINE # 104
0024 750000      R     MOV     OTimer_RD_10msCounter,#00H
                                           ; SOURCE LINE # 105
0027 0500        R     INC     OTimer_RD_100msCounter
                                           ; SOURCE LINE # 106
0029 E500        R     MOV     A,OTimer_RD_100msCounter
002B B40A0B            CJNE    A,#0AH,?C0028
                                           ; SOURCE LINE # 107
                                           ; SOURCE LINE # 108
002E 750000      R     MOV     OTimer_RD_100msCounter,#00H
                                           ; SOURCE LINE # 109
0031 0500        R     INC     OTimer_RD_Counter+01H
0033 E500        R     MOV     A,OTimer_RD_Counter+01H
0035 7002              JNZ     ?C0137
0037 0500        R     INC     OTimer_RD_Counter
0039         ?C0137:
                                           ; SOURCE LINE # 110
0039         ?C0028:
                                           ; SOURCE LINE # 112
;---- Variable 'temp_ret' assigned to Register 'R7' ----
0039 7F01              MOV     R7,#01H
                                           ; SOURCE LINE # 113
;---- Variable 'i' assigned to Register 'R6' ----
003B E4                CLR     A
003C FE                MOV     R6,A
003D         ?C0029:
                                           ; SOURCE LINE # 114
                                           ; SOURCE LINE # 115
003D E500        R     MOV     A,OTimer_RD_Enable
003F A816              MOV     R0,AR6
0041 08                INC     R0
0042 8002              SJMP    ?C0139
0044         ?C0138:
0044 C3                CLR     C
0045 13                RRC     A
0046         ?C0139:
0046 D8FC              DJNZ    R0,?C0138
0048 30E039            JNB     ACC.0,?C0031
                                           ; SOURCE LINE # 116
                                           ; SOURCE LINE # 117
004B 7400        R     MOV     A,#LOW OTimer_RD_DecCounter
004D 2E                ADD     A,R6
004E F8                MOV     R0,A
004F 16                DEC     @R0
                                           ; SOURCE LINE # 118
0050 7400        R     MOV     A,#LOW OTimer_RD_DecCounter
0052 2E                ADD     A,R6
0053 F8                MOV     R0,A
0054 E6                MOV     A,@R0
0055 702D              JNZ     ?C0031
                                           ; SOURCE LINE # 119
                                           ; SOURCE LINE # 120
0057 EF                MOV     A,R7
0058 A816              MOV     R0,AR6
005A 08                INC     R0
005B 8002              SJMP    ?C0141
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 14  

005D         ?C0140:
005D C3                CLR     C
005E 33                RLC     A
005F         ?C0141:
005F D8FC              DJNZ    R0,?C0140
0061 FD                MOV     R5,A
0062 4200        R     ORL     OTimer_RD_Status,A
                                           ; SOURCE LINE # 121
0064 E500        R     MOV     A,OTimer_RD_Mode
0066 A816              MOV     R0,AR6
0068 08                INC     R0
0069 8002              SJMP    ?C0143
006B         ?C0142:
006B C3                CLR     C
006C 13                RRC     A
006D         ?C0143:
006D D8FC              DJNZ    R0,?C0142
006F 30E00E            JNB     ACC.0,?C0034
                                           ; SOURCE LINE # 122
                                           ; SOURCE LINE # 123
0072 7400        R     MOV     A,#LOW OTimer_RD_Interval
0074 2E                ADD     A,R6
0075 F8                MOV     R0,A
0076 E6                MOV     A,@R0
0077 FC                MOV     R4,A
0078 7400        R     MOV     A,#LOW OTimer_RD_DecCounter
007A 2E                ADD     A,R6
007B F8                MOV     R0,A
007C A614              MOV     @R0,AR4
                                           ; SOURCE LINE # 124
007E 8004              SJMP    ?C0031
0080         ?C0034:
                                           ; SOURCE LINE # 126
                                           ; SOURCE LINE # 127
0080 ED                MOV     A,R5
0081 F4                CPL     A
0082 5200        R     ANL     OTimer_RD_Enable,A
                                           ; SOURCE LINE # 128
                                           ; SOURCE LINE # 129
                                           ; SOURCE LINE # 130
                                           ; SOURCE LINE # 131
0084         ?C0031:
0084 0E                INC     R6
0085 BE08B5            CJNE    R6,#08H,?C0029
                                           ; SOURCE LINE # 133
0088         ?C0027:
0088 D0D0              POP     PSW
008A D082              POP     DPL
008C D083              POP     DPH
008E D0E0              POP     ACC
0090 32                RETI    
             ; FUNCTION OTimer_RP_Interrupt (END)

             ; FUNCTION _Sys_TimerRelease (BEGIN)
;---- Variable 'OTimerID' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 140
                                           ; SOURCE LINE # 141
                                           ; SOURCE LINE # 143
0000 C2A9              CLR     ET0
                                           ; SOURCE LINE # 144
;---- Variable 'temp_ret' assigned to Register 'R6' ----
0002 7E01              MOV     R6,#01H
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 15  

                                           ; SOURCE LINE # 145
0004 EF                MOV     A,R7
0005 D3                SETB    C
0006 9407              SUBB    A,#07H
0008 4003              JC      ?C0036
                                           ; SOURCE LINE # 146
                                           ; SOURCE LINE # 147
000A D2A9              SETB    ET0
000C 22                RET     
                                           ; SOURCE LINE # 149
000D         ?C0036:
                                           ; SOURCE LINE # 150
000D EE                MOV     A,R6
000E A807              MOV     R0,AR7
0010 08                INC     R0
0011 8002              SJMP    ?C0145
0013         ?C0144:
0013 C3                CLR     C
0014 33                RLC     A
0015         ?C0145:
0015 D8FC              DJNZ    R0,?C0144
0017 F4                CPL     A
0018 5200        R     ANL     OTimer_RD_Enable,A
                                           ; SOURCE LINE # 151
001A 5200        R     ANL     OTimer_RD_Status,A
                                           ; SOURCE LINE # 152
001C D2A9              SETB    ET0
                                           ; SOURCE LINE # 154
001E         ?C0037:
001E 22                RET     
             ; FUNCTION _Sys_TimerRelease (END)

             ; FUNCTION Analyse_OTimerID (BEGIN)
                                           ; SOURCE LINE # 161
                                           ; SOURCE LINE # 162
                                           ; SOURCE LINE # 165
;---- Variable 'temp_ret' assigned to Register 'R7' ----
0000 7F01              MOV     R7,#01H
                                           ; SOURCE LINE # 166
;---- Variable 'temp_buffer' assigned to Register 'R6' ----
0002 AE00        R     MOV     R6,OTimer_RD_Status
                                           ; SOURCE LINE # 167
;---- Variable 'i' assigned to Register 'R5' ----
0004 E4                CLR     A

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -