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

📄 gsb.lis

📁 单片机控制GSM22来工作
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0254                   .dbline 153
 0254           ;   flagend = Rcv_cap-1;
 0254 4423              tst R20
 0256 49F4              brne L65
 0258                   .dbline 154
 0258           ; }
 0258                   .dbline 154
 0258 CE01              movw R24,R28
 025A E42F              mov R30,R20
 025C FF27              clr R31
 025E E80F              add R30,R24
 0260 F91F              adc R31,R25
 0262 0081              ldd R16,z+0
 0264 005D              subi R16,208    ; addi 48
 0266 13DF              xcall _WriteData
 0268                   .dbline 154
 0268 02C0              xjmp L62
 026A           L65:
 026A                   .dbline 155
 026A C394              inc R12
 026C                   .dbline 156
 026C           L61:
 026C                   .dbline 146
 026C CFCF              xjmp L60
 026E           L62:
 026E                   .dbline 157
 026E           ; 
 026E           ; void read(uchar *porm ,uchar *num)  //CMGR,CPBR,num有7个字符
 026E           ; {
 026E CA94              dec R12
 0270                   .dbline -2
 0270           L55:
 0270 2596              adiw R28,5
 0272 0E940000          xcall pop_gset5
 0276                   .dbline 0 ; func end
 0276 0895              ret
 0278                   .dbsym l tmp 0 A[5:5]c
 0278                   .dbsym r i 20 c
 0278                   .dbsym r N 22 c
 0278                   .dbsym r num 10 i
 0278                   .dbsym r x 12 c
 0278                   .dbsym r y 14 c
 0278                   .dbend
 0278                   .dbfunc e Display_Picture _Display_Picture fV
 0278           ;              i -> R20,R21
 0278           ;              x -> R22,R23
 0278           ;              y -> R14,R15
 0278           ;              j -> R10,R11
 0278           ;              l -> y+0
 0278           ;              k -> R12,R13
 0278           ;            tab -> y+12
                        .even
 0278           _Display_Picture::
 0278 1A93              st -y,r17
 027A 0A93              st -y,r16
 027C 0E940000          xcall push_gset5
 0280 2297              sbiw R28,2
 0282                   .dbline -1
 0282                   .dbline 161
 0282           ;  uchar C[] = "AT+C   =       \r";     //等号后7个空
 0282           ;  uchar i;
 0282           ;  i_Rcv = 0;
 0282           ;  C[4] = porm[0];
 0282                   .dbline 162
 0282           ;  C[5] = porm[1];
 0282 0024              clr R0
 0284 1124              clr R1
 0286 1982              std y+1,R1
 0288 0882              std y+0,R0
 028A                   .dbline 162
 028A 60E8              ldi R22,128
 028C 70E0              ldi R23,0
 028E                   .dbline 163
 028E           ;  C[6] = porm[2];
 028E 4427              clr R20
 0290 5527              clr R21
 0292 37C0              xjmp L71
 0294           L68:
 0294                   .dbline 164
 0294           ;  for(i=0;i<7;i++)
 0294                   .dbline 165
 0294           ;  {
 0294 AA24              clr R10
 0296 BB24              clr R11
 0298 80E8              ldi R24,128
 029A 90E0              ldi R25,0
 029C 7C01              movw R14,R24
 029E 27C0              xjmp L75
 02A0           L72:
 02A0                   .dbline 166
 02A0           ;   C[8+i] = num[i];
 02A0                   .dbline 167
 02A0           ;  }
 02A0 06E3              ldi R16,54
 02A2 06DF              xcall _WriteCommand
 02A4                   .dbline 168
 02A4           ; 
 02A4 0E2D              mov R16,R14
 02A6 04DF              xcall _WriteCommand
 02A8                   .dbline 169
 02A8           ;  sendcmd(C,"OK",3000);
 02A8 062F              mov R16,R22
 02AA 02DF              xcall _WriteCommand
 02AC                   .dbline 170
 02AC           ;  clearf();
 02AC 00E3              ldi R16,48
 02AE 00DF              xcall _WriteCommand
 02B0                   .dbline 171
 02B0           ; }
 02B0 80E1              ldi R24,16
 02B2 90E0              ldi R25,0
 02B4 6C01              movw R12,R24
 02B6 0DC0              xjmp L77
 02B8           L76:
 02B8                   .dbline 173
 02B8 2880              ldd R2,y+0
 02BA 3980              ldd R3,y+1
 02BC C101              movw R24,R2
 02BE 0196              adiw R24,1
 02C0 9983              std y+1,R25
 02C2 8883              std y+0,R24
 02C4 F101              movw R30,R2
 02C6 0C84              ldd R0,y+12
 02C8 1D84              ldd R1,y+13
 02CA E00D              add R30,R0
 02CC F11D              adc R31,R1
 02CE 0491              lpm R16,Z
 02D0 DEDE              xcall _WriteData
 02D2           L77:
 02D2                   .dbline 172
 02D2 1601              movw R2,R12
 02D4 C101              movw R24,R2
 02D6 0197              sbiw R24,1
 02D8 6C01              movw R12,R24
 02DA 2220              tst R2
 02DC 69F7              brne L76
 02DE 3320              tst R3
 02E0 59F7              brne L76
 02E2           X3:
 02E2                   .dbline 174
 02E2           L73:
 02E2                   .dbline 165
 02E2 C501              movw R24,R10
 02E4 0196              adiw R24,1
 02E6 5C01              movw R10,R24
 02E8 C701              movw R24,R14
 02EA 0196              adiw R24,1
 02EC 7C01              movw R14,R24
 02EE           L75:
 02EE                   .dbline 165
 02EE C501              movw R24,R10
 02F0 8032              cpi R24,32
 02F2 E0E0              ldi R30,0
 02F4 9E07              cpc R25,R30
 02F6 08F4              brsh X4
 02F8 D3CF              xjmp L72
 02FA           X4:
 02FA                   .dbline 175
 02FA 68E8              ldi R22,136
 02FC 70E0              ldi R23,0
 02FE                   .dbline 176
 02FE           L69:
 02FE                   .dbline 163
 02FE 4F5F              subi R20,255  ; offset = 1
 0300 5F4F              sbci R21,255
 0302           L71:
 0302                   .dbline 163
 0302 4230              cpi R20,2
 0304 E0E0              ldi R30,0
 0306 5E07              cpc R21,R30
 0308 08F4              brsh X5
 030A C4CF              xjmp L68
 030C           X5:
 030C                   .dbline -2
 030C           L67:
 030C 2296              adiw R28,2
 030E 0E940000          xcall pop_gset5
 0312 2296              adiw R28,2
 0314                   .dbline 0 ; func end
 0314 0895              ret
 0316                   .dbsym r i 20 i
 0316                   .dbsym r x 22 i
 0316                   .dbsym r y 14 i
 0316                   .dbsym r j 10 i
 0316                   .dbsym l l 0 i
 0316                   .dbsym r k 12 i
 0316                   .dbsym l tab 12 pkc
 0316                   .dbend
 0316                   .dbfunc e Display_Picture32 _Display_Picture32 fV
 0316           ;              i -> <dead>
 0316           ;              x -> R22,R23
 0316           ;              y -> R10,R11
 0316           ;              j -> R20,R21
 0316           ;              l -> y+0
 0316           ;              k -> R14,R15
 0316           ;            tab -> R12,R13
                        .even
 0316           _Display_Picture32::
 0316 0E940000          xcall push_gset5
 031A 6801              movw R12,R16
 031C 2297              sbiw R28,2
 031E                   .dbline -1
 031E                   .dbline 180
 031E           ; //发信息
 031E           ; void sendsms(void)
 031E           ; {
 031E           ;  uchar C[] = "AT+CMGS=\"           \"\r";     //等号后7个空
 031E           ;  uchar i;
 031E           ;  i_Rcv = 0;
 031E           ;  for(i=0;i<11;i++)
 031E           ;  {
 031E           ;   C[9+i] = Phone[i];
 031E                   .dbline 181
 031E           ;  }
 031E 0024              clr R0
 0320 1124              clr R1
 0322 1982              std y+1,R1
 0324 0882              std y+0,R0
 0326                   .dbline 181
 0326 60E8              ldi R22,128
 0328 70E0              ldi R23,0
 032A                   .dbline 183
 032A           ;  sendcmd(C,"\x3e\x20",500);
 032A           ;  clearf();
 032A 4427              clr R20
 032C 5527              clr R21
 032E 80E8              ldi R24,128
 0330 90E0              ldi R25,0
 0332 5C01              movw R10,R24
 0334 32C0              xjmp L83
 0336           L80:
 0336                   .dbline 184
 0336           ;  sendcmd(Content,"OK",5000);
 0336                   .dbline 185
 0336           ;  clearf();
 0336 06E3              ldi R16,54
 0338 BBDE              xcall _WriteCommand
 033A                   .dbline 186
 033A           ; }
 033A 0A2D              mov R16,R10
 033C B9DE              xcall _WriteCommand
 033E                   .dbline 187
 033E           ; /*
 033E 062F              mov R16,R22
 0340 B7DE              xcall _WriteCommand
 0342                   .dbline 188
 0342           ; void call(void)
 0342 00E3              ldi R16,48
 0344 B5DE              xcall _WriteCommand
 0346                   .dbline 189
 0346           ; {
 0346 84E0              ldi R24,4
 0348 90E0              ldi R25,0
 034A 7C01              movw R14,R24
 034C 0BC0              xjmp L85
 034E           L84:
 034E                   .dbline 191
 034E 2880              ldd R2,y+0
 0350 3980              ldd R3,y+1
 0352 C101              movw R24,R2
 0354 0196              adiw R24,1
 0356 9983              std y+1,R25
 0358 8883              std y+0,R24
 035A F101              movw R30,R2
 035C EC0D              add R30,R12
 035E FD1D              adc R31,R13
 0360 0081              ldd R16,z+0
 0362 95DE              xcall _WriteData
 0364           L85:
 0364                   .dbline 190
 0364           ;  uchar C[] = "ATD           \x3b\r";     //等号后7个空
 0364 1701              movw R2,R14
 0366 C101              movw R24,R2
 0368 0197              sbiw R24,1
 036A 7C01              movw R14,R24
 036C 2220              tst R2
 036E 79F7              brne L84
 0370 3320              tst R3
 0372 69F7              brne L84
 0374           X6:
 0374                   .dbline 192
 0374           ;  uchar i;
 0374           ;  i_Rcv = 0;
 0374 8CE0              ldi R24,12
 0376 90E0              ldi R25,0
 0378 7C01              movw R14,R24
 037A 02C0              xjmp L88
 037C           L87:
 037C                   .dbline 194
 037C 0027              clr R16
 037E 87DE              xcall _WriteData
 0380           L88:
 0380                   .dbline 193
 0380 1701              movw R2,R14
 0382 C101              movw R24,R2
 0384 0197              sbiw R24,1
 0386 7C01              movw R14,R24
 0388 2220              tst R2
 038A C1F7              brne L87
 038C 3320              tst R3
 038E B1F7              brne L87
 0390           X7:
 0390                   .dbline 195
 0390           L81:
 0390                   .dbline 183
 0390 4F5F              subi R20,255  ; offset = 1
 0392 5F4F              sbci R21,255
 0394 C501              movw R24,R10
 0396 0196              adiw R24,1
 0398 5C01              movw R10,R24
 039A           L83:
 039A                   .dbline 183
 039A 4032              cpi R20,32
 039C E0E0              ldi R30,0
 039E 5E07              cpc R21,R30
 03A0 08F4              brsh X8
 03A2 C9CF              xjmp L80
 03A4           X8:
 03A4                   .dbline -2
 03A4           L79:
 03A4 2296              adiw R28,2
 03A6 0E940000          xcall pop_gset5
 03AA                   .dbline 0 ; func end
 03AA 0895              ret
 03AC                   .dbsym l i 1 i
 03AC                   .dbsym r x 22 i
 03AC                   .dbsym r y 10 i
 03AC                   .dbsym r j 20 i
 03AC                   .dbsym l l 0 i
 03AC                   .dbsym r k 14 i
 03AC                   .dbsym r tab 12 pc
 03AC                   .dbend
 03AC                   .dbfunc e shownum _shownum fI
 03AC           ;              k -> <dead>
 03AC           ;              T -> y+2
 03AC           ;           temp -> R10,R11
 03AC           ;            num -> y+19
 03AC           ;              j -> R22
 03AC           ;              i -> R20
                        .even
 03AC           _shownum::
 03AC 0E940000          xcall push_gset4
 03B0 622F              mov R22,R18
 03B2 402F              mov R20,R16
 03B4 2B97              sbiw R28,11
 03B6                   .dbline -1
 03B6                   .dbline 211
 03B6           ;  for(i=0;i<11;i++)
 03B6           ;  {
 03B6           ;   C[3+i] = Phone[i];
 03B6           ;  }
 03B6           ;  sendcmd(C,"OK",2000);
 03B6           ;  clearf();

⌨️ 快捷键说明

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