📄 gsm_main.lis
字号:
016A ; else if (buf[1]==0x06 && buf[2]==0x34 &&buf[3]==0xff) //软件Mute键
016A 80911F00 lds R24,_buf+1
016E 8630 cpi R24,6
0170 81F4 brne L36
0172 80912000 lds R24,_buf+2
0176 8433 cpi R24,52
0178 61F4 brne L36
017A 80912100 lds R24,_buf+3
017E 8F3F cpi R24,255
0180 41F4 brne L36
0182 .dbline 112
0182 ; {
0182 .dbline 113
0182 ; muteon=1;
0182 81E0 ldi R24,1
0184 80936100 sts _muteon,R24
0188 .dbline 114
0188 ; Delay(15);
0188 0FE0 ldi R16,15
018A 10E0 ldi R17,0
018C 39DF rcall _Delay
018E .dbline 115
018E ; PWROFF;
018E C59A sbi 0x18,5
0190 .dbline 116
0190 ; }
0190 B0C0 rjmp L37
0192 L36:
0192 .dbline 117
0192 ; else if (buf[1]==0x06 && buf[2]==0x35 &&buf[3]==0xff) //软件Mute按下
0192 80911F00 lds R24,_buf+1
0196 8630 cpi R24,6
0198 81F4 brne L41
019A 80912000 lds R24,_buf+2
019E 8533 cpi R24,53
01A0 61F4 brne L41
01A2 80912100 lds R24,_buf+3
01A6 8F3F cpi R24,255
01A8 41F4 brne L41
01AA .dbline 118
01AA ; {
01AA .dbline 119
01AA ; muteoff=1;
01AA 81E0 ldi R24,1
01AC 80936200 sts _muteoff,R24
01B0 .dbline 120
01B0 ; Delay(15);
01B0 0FE0 ldi R16,15
01B2 10E0 ldi R17,0
01B4 25DF rcall _Delay
01B6 .dbline 121
01B6 ; PWROFF;
01B6 C59A sbi 0x18,5
01B8 .dbline 122
01B8 ; }
01B8 9CC0 rjmp L42
01BA L41:
01BA .dbline 123
01BA ; else if (buf[1]==0x06 && buf[2]==0x31 &&buf[3]==0xff) //按下hook on键
01BA 80911F00 lds R24,_buf+1
01BE 8630 cpi R24,6
01C0 C1F4 brne L46
01C2 80912000 lds R24,_buf+2
01C6 8133 cpi R24,49
01C8 A1F4 brne L46
01CA 80912100 lds R24,_buf+3
01CE 8F3F cpi R24,255
01D0 81F4 brne L46
01D2 .dbline 124
01D2 ; {
01D2 .dbline 125
01D2 ; Usart_Command("ata",3); //设置来电显示
01D2 23E0 ldi R18,3
01D4 30E0 ldi R19,0
01D6 00E0 ldi R16,<L51
01D8 10E0 ldi R17,>L51
01DA 00D0 rcall _Usart_Command
01DC .dbline 126
01DC ; Usart_Tx(0x0d);
01DC 0DE0 ldi R16,13
01DE 10E0 ldi R17,0
01E0 00D0 rcall _Usart_Tx
01E2 .dbline 127
01E2 ; hookon=1;
01E2 81E0 ldi R24,1
01E4 80935F00 sts _hookon,R24
01E8 .dbline 128
01E8 ; Delay(15);
01E8 0FE0 ldi R16,15
01EA 10E0 ldi R17,0
01EC 09DF rcall _Delay
01EE .dbline 129
01EE ; PWROFF;
01EE C59A sbi 0x18,5
01F0 .dbline 130
01F0 ; }
01F0 80C0 rjmp L47
01F2 L46:
01F2 .dbline 131
01F2 ; else if (buf[1]==0x06 && buf[2]==0x32 && buf[3]==0xff)//按下hook off键
01F2 80911F00 lds R24,_buf+1
01F6 8630 cpi R24,6
01F8 C1F4 brne L52
01FA 80912000 lds R24,_buf+2
01FE 8233 cpi R24,50
0200 A1F4 brne L52
0202 80912100 lds R24,_buf+3
0206 8F3F cpi R24,255
0208 81F4 brne L52
020A .dbline 132
020A ; {
020A .dbline 133
020A ; Usart_Command("ath",3); //设置来电显示
020A 23E0 ldi R18,3
020C 30E0 ldi R19,0
020E 00E0 ldi R16,<L57
0210 10E0 ldi R17,>L57
0212 00D0 rcall _Usart_Command
0214 .dbline 134
0214 ; Usart_Tx(0x0d);
0214 0DE0 ldi R16,13
0216 10E0 ldi R17,0
0218 00D0 rcall _Usart_Tx
021A .dbline 135
021A ; hookoff=1;
021A 81E0 ldi R24,1
021C 80936000 sts _hookoff,R24
0220 .dbline 136
0220 ; Delay(15);
0220 0FE0 ldi R16,15
0222 10E0 ldi R17,0
0224 EDDE rcall _Delay
0226 .dbline 137
0226 ; PWROFF;
0226 C59A sbi 0x18,5
0228 .dbline 138
0228 ; }
0228 64C0 rjmp L53
022A L52:
022A .dbline 139
022A ; else if (buf[1]==0x02) //拨号
022A 80911F00 lds R24,_buf+1
022E 8230 cpi R24,2
0230 09F0 breq X4
0232 5FC0 rjmp L58
0234 X4:
0234 .dbline 140
0234 ; {
0234 .dbline 141
0234 ; for(xk=0;xk<18;xk++)
0234 2224 clr R2
0236 20920400 sts _xk,R2
023A 3CC0 rjmp L64
023C L61:
023C .dbline 142
023C ; {
023C .dbline 143
023C ; if(buf[xk+2]==0xff)
023C 80E0 ldi R24,<_buf+2
023E 90E0 ldi R25,>_buf+2
0240 E0910400 lds R30,_xk
0244 FF27 clr R31
0246 E80F add R30,R24
0248 F91F adc R31,R25
024A 8081 ldd R24,z+0
024C 8F3F cpi R24,255
024E 21F4 brne L65
0250 .dbline 144
0250 ; {
0250 .dbline 145
0250 ; num_end_flag=1;
0250 81E0 ldi R24,1
0252 80932600 sts _num_end_flag,R24
0256 .dbline 146
0256 ; break;
0256 33C0 rjmp L63
0258 L65:
0258 .dbline 148
0258 ; }
0258 ; if(buf[xk+2] !=0x01 && buf[xk+2] !=0x02)
0258 80E0 ldi R24,<_buf+2
025A 90E0 ldi R25,>_buf+2
025C E0910400 lds R30,_xk
0260 FF27 clr R31
0262 E80F add R30,R24
0264 F91F adc R31,R25
0266 8081 ldd R24,z+0
0268 8130 cpi R24,1
026A F9F0 breq L68
026C 80E0 ldi R24,<_buf+2
026E 90E0 ldi R25,>_buf+2
0270 E0910400 lds R30,_xk
0274 FF27 clr R31
0276 E80F add R30,R24
0278 F91F adc R31,R25
027A 8081 ldd R24,z+0
027C 8230 cpi R24,2
027E A9F0 breq L68
0280 .dbline 149
0280 ; {
0280 .dbline 150
0280 ; telnum[num]=buf[xk+2];
0280 80E0 ldi R24,<_buf+2
0282 90E0 ldi R25,>_buf+2
0284 E0910400 lds R30,_xk
0288 FF27 clr R31
028A E80F add R30,R24
028C F91F adc R31,R25
028E 2080 ldd R2,z+0
0290 80E0 ldi R24,<_telnum
0292 90E0 ldi R25,>_telnum
0294 E0912500 lds R30,_num
0298 FF27 clr R31
029A E80F add R30,R24
029C F91F adc R31,R25
029E 2082 std z+0,R2
02A0 .dbline 151
02A0 ; num++;
02A0 80912500 lds R24,_num
02A4 8F5F subi R24,255 ; addi 1
02A6 80932500 sts _num,R24
02AA .dbline 152
02AA ; }
02AA L68:
02AA .dbline 153
02AA L62:
02AA .dbline 141
02AA 80910400 lds R24,_xk
02AE 8F5F subi R24,255 ; addi 1
02B0 80930400 sts _xk,R24
02B4 L64:
02B4 .dbline 141
02B4 80910400 lds R24,_xk
02B8 8231 cpi R24,18
02BA 08F4 brsh X5
02BC BFCF rjmp L61
02BE X5:
02BE L63:
02BE .dbline 154
02BE ; }
02BE ; if(num_end_flag)
02BE 20902600 lds R2,_num_end_flag
02C2 2220 tst R2
02C4 B1F0 breq L73
02C6 .dbline 155
02C6 ; {
02C6 .dbline 156
02C6 ; Usart_Command("ATD",3);
02C6 23E0 ldi R18,3
02C8 30E0 ldi R19,0
02CA 00E0 ldi R16,<L75
02CC 10E0 ldi R17,>L75
02CE 00D0 rcall _Usart_Command
02D0 .dbline 157
02D0 ; Usart_Command(telnum,num);
02D0 20912500 lds R18,_num
02D4 3327 clr R19
02D6 00E0 ldi R16,<_telnum
02D8 10E0 ldi R17,>_telnum
02DA 00D0 rcall _Usart_Command
02DC .dbline 158
02DC ; Usart_Tx(';');
02DC 0BE3 ldi R16,59
02DE 10E0 ldi R17,0
02E0 00D0 rcall _Usart_Tx
02E2 .dbline 159
02E2 ; Usart_Tx(0x0d);
02E2 0DE0 ldi R16,13
02E4 10E0 ldi R17,0
02E6 00D0 rcall _Usart_Tx
02E8 .dbline 160
02E8 ; num_end_flag=0;
02E8 2224 clr R2
02EA 20922600 sts _num_end_flag,R2
02EE .dbline 161
02EE ; num=0;
02EE 20922500 sts _num,R2
02F2 .dbline 162
02F2 ; }
02F2 L73:
02F2 .dbline 163
02F2 ; }
02F2 L58:
02F2 L53:
02F2 L47:
02F2 L42:
02F2 L37:
02F2 L32:
02F2 .dbline 164
02F2 ; }//end if(cmd_flag)
02F2 L29:
02F2 .dbline 165
02F2 L13:
02F2 .dbline 64
02F2 C3CE rjmp L12
02F4 X2:
02F4 .dbline -2
02F4 L9:
02F4 .dbline 0 ; func end
02F4 0895 ret
02F6 .dbend
.area bss(ram, con, rel)
0000 .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
0000 _idnum::
0000 .blkb 14
000E .dbsym e idnum _idnum A[14:14]c
000E _telnum::
000E .blkb 14
001C .dbsym e telnum _telnum A[14:14]c
001C _data::
001C .blkb 2
001E .dbsym e data _data pc
001E _buf::
001E .blkb 18
0030 .dbsym e buf _buf A[18:18]c
.area data(ram, con, rel)
0063 .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
0063 L75:
0063 .blkb 4
.area idata
0063 41544400 .byte 'A,'T,'D,0
.area data(ram, con, rel)
0067 .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
0067 L57:
0067 .blkb 4
.area idata
0067 61746800 .byte 'a,'t,'h,0
.area data(ram, con, rel)
006B .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
006B L51:
006B .blkb 4
.area idata
006B 61746100 .byte 'a,'t,'a,0
.area data(ram, con, rel)
006F .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
006F L11:
006F .blkb 10
.area idata
006F 41542B434C49503D3100 .byte 'A,'T,43,'C,'L,'I,'P,61,49,0
.area data(ram, con, rel)
0079 .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
0079 L10:
0079 .blkb 3
.area idata
0079 415400 .byte 'A,'T,0
.area data(ram, con, rel)
007C .dbfile C:\DOCUME~1\Rooger\桌面\GSM_PHONE\gsm_main.c
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -