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

📄 main.lst

📁 一种51单片机接收电话线上DTMF(拨号DTMF的应用程序)
💻 LST
📖 第 1 页 / 共 5 页
字号:
 287   2      				play_flag = 0 ;
 288   2      				zaiji_flag = 0 ;
 289   2      				send_time = 0xff ;
 290   2      				P3 = 0xdc|((channel-1)&0x03) ;
 291   2      				Sys_TimerRelease(OTimerID0) ;
 292   2      				mem_set(send_flag,FALSE,4) ;
 293   2      				mem_set(key_buf,0xff,Maxnumber) ;
 294   2      				mem_set(disp_buf,0,4) ;
 295   2      				delay(500) ;
 296   2      			}
 297   2      			else if(temp_ret == 11)		// play music
 298   2      			{
 299   2      				if(play_flag == 0)	//play
 300   2      				{
 301   2      					play_flag = 1 ;
 302   2      					ALARM = 0 ;
 303   2      					Updata_1Led(17,18,10,24) ;	//disp  Play
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 6   

 304   2      				}
 305   2      				else			//stop
 306   2      				{
 307   2      					play_flag = 0 ;
 308   2      					ALARM = 1 ;
 309   2      					mem_set(disp_buf,0,4) ;	//no disp
 310   2      				}
 311   2      				
 312   2      			}
 313   2      			else if(temp_ret == 10)		//摘机或挂机
 314   2      			{
 315   2      				if(zaiji_flag == 0)	//摘机
 316   2      				{
 317   2      					zaiji_flag = 1 ;
 318   2      					SW = 1 ;
 319   2      					Updata_1Led(2,25,0,21) ;	//disp Z-ON
 320   2      					delay(500) ;
 321   2      				}
 322   2      				else			//挂机
 323   2      				{
 324   2      					zaiji_flag = 0 ;
 325   2      					SW = 0 ;
 326   2      					Updata_1Led(2,25,0,22) ;	//disp Z-OF
 327   2      					delay(500) ;
 328   2      				}
 329   2      			}
 330   2      		}*/
 331   2      	}
 332   1      }
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 7   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION _mem_set (BEGIN)
0000 8B00        R     MOV     out,R3
0002 8A00        R     MOV     out+01H,R2
0004 8900        R     MOV     out+02H,R1
;---- Variable 'value' assigned to Register 'R5' ----
                                           ; SOURCE LINE # 7
                                           ; SOURCE LINE # 8
                                           ; SOURCE LINE # 11
;---- Variable 'i' assigned to Register 'R7' ----
0006 E4                CLR     A
0007 FF                MOV     R7,A
0008         ?C0001:
0008 EF                MOV     A,R7
0009 C3                CLR     C
000A 9500        R     SUBB    A,Len
000C 5012              JNC     ?C0004
                                           ; SOURCE LINE # 12
000E AB00        R     MOV     R3,out
0010 AA00        R     MOV     R2,out+01H
0012 A900        R     MOV     R1,out+02H
0014 8F82              MOV     DPL,R7
0016 758300            MOV     DPH,#00H
0019 ED                MOV     A,R5
001A 120000      E     LCALL   ?C?CSTOPTR
001D 0F                INC     R7
001E 80E8              SJMP    ?C0001
                                           ; SOURCE LINE # 13
0020         ?C0004:
0020 22                RET     
             ; FUNCTION _mem_set (END)

             ; FUNCTION _mem_move (BEGIN)
0000 8B00        R     MOV     out,R3
0002 8A00        R     MOV     out+01H,R2
0004 8900        R     MOV     out+02H,R1
                                           ; SOURCE LINE # 15
                                           ; SOURCE LINE # 16
                                           ; SOURCE LINE # 19
;---- Variable 'i' assigned to Register 'R7' ----
0006 E4                CLR     A
0007 FF                MOV     R7,A
0008         ?C0005:
0008 EF                MOV     A,R7
0009 C3                CLR     C
000A 9500        R     SUBB    A,Len
000C 501F              JNC     ?C0008
                                           ; SOURCE LINE # 20
000E AB00        R     MOV     R3,in
0010 AA00        R     MOV     R2,in+01H
0012 A900        R     MOV     R1,in+02H
0014 8F82              MOV     DPL,R7
0016 758300            MOV     DPH,#00H
0019 120000      E     LCALL   ?C?CLDOPTR
001C AB00        R     MOV     R3,out
001E AA00        R     MOV     R2,out+01H
0020 A900        R     MOV     R1,out+02H
0022 8F82              MOV     DPL,R7
0024 758300            MOV     DPH,#00H
0027 120000      E     LCALL   ?C?CSTOPTR
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 8   

002A 0F                INC     R7
002B 80DB              SJMP    ?C0005
                                           ; SOURCE LINE # 21
002D         ?C0008:
002D 22                RET     
             ; FUNCTION _mem_move (END)

             ; FUNCTION disp_Init (BEGIN)
                                           ; SOURCE LINE # 23
                                           ; SOURCE LINE # 24
                                           ; SOURCE LINE # 25
0000 7B00              MOV     R3,#00H
0002 7A00        R     MOV     R2,#HIGH disp_buf
0004 7900        R     MOV     R1,#LOW disp_buf
0006 750004      R     MOV     ?_mem_set?BYTE+04H,#04H
0009 7D99              MOV     R5,#099H
000B 020000      R     LJMP    _mem_set
                                           ; SOURCE LINE # 28
             ; FUNCTION disp_Init (END)

             ; FUNCTION display_Line (BEGIN)
0000 C0D0              PUSH    PSW
0002 75D010            MOV     PSW,#010H
                                           ; SOURCE LINE # 30
                                           ; SOURCE LINE # 34
0005 C2AF              CLR     EA
                                           ; SOURCE LINE # 35
0007 7800        R     MOV     R0,#LOW P2_BUF
0009 A6A0              MOV     @R0,P2
                                           ; SOURCE LINE # 36
;---- Variable 'i' assigned to Register 'R7' ----
000B E4                CLR     A
000C FF                MOV     R7,A
000D         ?C0010:
                                           ; SOURCE LINE # 37
                                           ; SOURCE LINE # 38
000D 7400        R     MOV     A,#LOW disp_buf
000F 2F                ADD     A,R7
0010 F8                MOV     R0,A
0011 E6                MOV     A,@R0
0012 FE                MOV     R6,A
0013 C3                CLR     C
0014 9480              SUBB    A,#080H
0016 4021              JC      ?C0012
                                           ; SOURCE LINE # 39
                                           ; SOURCE LINE # 40
0018 7800        R     MOV     R0,#LOW P2_BUF
001A E6                MOV     A,@R0
001B 44EF              ORL     A,#0EFH
001D FD                MOV     R5,A
001E F6                MOV     @R0,A
                                           ; SOURCE LINE # 41
001F F5A0              MOV     P2,A
                                           ; SOURCE LINE # 43
0021 EE                MOV     A,R6
0022 547F              ANL     A,#07FH
0024 900000      R     MOV     DPTR,#Table_disp
0027 93                MOVC    A,@A+DPTR
0028 F580              MOV     P0,A
                                           ; SOURCE LINE # 45
002A EF                MOV     A,R7
002B 900000      R     MOV     DPTR,#Table_no
C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 9   

002E 93                MOVC    A,@A+DPTR
002F 5D                ANL     A,R5
0030 F6                MOV     @R0,A
                                           ; SOURCE LINE # 46
0031 F5A0              MOV     P2,A
                                           ; SOURCE LINE # 47
;---- Variable 'j' assigned to Register 'R6' ----
0033 E4                CLR     A
0034 FE                MOV     R6,A
0035         ?C0014:
0035 0E                INC     R6
0036 BE64FC            CJNE    R6,#064H,?C0014
                                           ; SOURCE LINE # 48
                                           ; SOURCE LINE # 49
0039         ?C0012:
0039 0F                INC     R7
003A BF04D0            CJNE    R7,#04H,?C0010
003D         ?C0011:
                                           ; SOURCE LINE # 50
003D 7800        R     MOV     R0,#LOW P2_BUF
003F E6                MOV     A,@R0
0040 44EF              ORL     A,#0EFH
0042 F6                MOV     @R0,A
                                           ; SOURCE LINE # 51
0043 F5A0              MOV     P2,A
                                           ; SOURCE LINE # 52
0045 7580FF            MOV     P0,#0FFH
                                           ; SOURCE LINE # 53
0048 D2AF              SETB    EA
                                           ; SOURCE LINE # 54
004A D0D0              POP     PSW
004C 22                RET     
             ; FUNCTION display_Line (END)

             ; FUNCTION _Updata_Number (BEGIN)
;---- Variable 'in' assigned to Register 'R7' ----
                                           ; SOURCE LINE # 139
                                           ; SOURCE LINE # 140
                                           ; SOURCE LINE # 141
0000 7800        R     MOV     R0,#LOW disp_buf+02H
0002 E6                MOV     A,@R0
0003 08                INC     R0
0004 F6                MOV     @R0,A
                                           ; SOURCE LINE # 142
0005 7800        R     MOV     R0,#LOW disp_buf+01H
0007 E6                MOV     A,@R0
0008 08                INC     R0
0009 F6                MOV     @R0,A
                                           ; SOURCE LINE # 143
000A 7800        R     MOV     R0,#LOW disp_buf
000C E6                MOV     A,@R0
000D 08                INC     R0
000E F6                MOV     @R0,A
                                           ; SOURCE LINE # 144
000F EF                MOV     A,R7
0010 2480              ADD     A,#080H
0012 18                DEC     R0
0013 F6                MOV     @R0,A
                                           ; SOURCE LINE # 145
0014 22                RET     
             ; FUNCTION _Updata_Number (END)

C51 COMPILER V6.02  MAIN                                                                   12/07/2004 13:03:12 PAGE 10  

             ; FUNCTION _Updata_1Led (BEGIN)
;---- Variable 'in3' assigned to Register 'R7' ----
;---- Variable 'in2' assigned to Register 'R5' ----
;---- Variable 'in1' assigned to Register 'R3' ----
                                           ; SOURCE LINE # 162
                                           ; SOURCE LINE # 163
                                           ; SOURCE LINE # 164
0000 EF                MOV     A,R7
0001 2480              ADD     A,#080H
0003 7800        R     MOV     R0,#LOW disp_buf+03H
0005 F6                MOV     @R0,A
                                           ; SOURCE LINE # 165
0006 ED                MOV     A,R5
0007 2480              ADD     A,#080H
0009 18                DEC     R0
000A F6                MOV     @R0,A
                                           ; SOURCE LINE # 166
000B EB                MOV     A,R3
000C 2480              ADD     A,#080H
000E 18                DEC     R0
000F F6                MOV     @R0,A
                                           ; SOURCE LINE # 167
0010 E500        R     MOV     A,in0
0012 2480              ADD     A,#080H
0014 18                DEC     R0
0015 F6                MOV     @R0,A
                                           ; SOURCE LINE # 168
0016 22                RET     
             ; FUNCTION _Updata_1Led (END)

             ; FUNCTION Sys_TimerInit (BEGIN)
                                           ; SOURCE LINE # 35
                                           ; SOURCE LINE # 36
                                           ; SOURCE LINE # 37
0000 C2A9              CLR     ET0
                                           ; SOURCE LINE # 38
0002 E589              MOV     A,TMOD
0004 54F0              ANL     A,#0F0H
0006 4401              ORL     A,#01H
0008 F589              MOV     TMOD,A
                                           ; SOURCE LINE # 40
000A C28D              CLR     TF0
                                           ; SOURCE LINE # 41
000C 758CDC            MOV     TH0,#0DCH
                                           ; SOURCE LINE # 42
000F 758A17            MOV     TL0,#017H
                                           ; SOURCE LINE # 45
0012 E4                CLR     A
0013 F500        R     MOV     OTimer_RD_10msCounter,A
                                           ; SOURCE LINE # 46
0015 F500        R     MOV     OTimer_RD_100msCounter,A
                                           ; SOURCE LINE # 47
0017 F500        R     MOV     OTimer_RD_Status,A
                                           ; SOURCE LINE # 48
0019 F500        R     MOV     OTimer_RD_Enable,A
                                           ; SOURCE LINE # 50
001B D2AF              SETB    EA
                                           ; SOURCE LINE # 51
001D D2A9              SETB    ET0
                                           ; SOURCE LINE # 52
001F C2B9              CLR     PT0

⌨️ 快捷键说明

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