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

📄 sim340.lis

📁 本实例实现GSM模块的发送短消息
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0704 FC91              ld R31,x
 0706 E80F              add R30,R24
 0708 F91F              adc R31,R25
 070A 2082              std z+0,R2
 070C                   .dbline 215
 070C FE01              movw R30,R28
 070E E459              subi R30,148  ; addi 108
 0710 FF4F              sbci R31,255
 0712 8081              ldd R24,z+0
 0714 9181              ldd R25,z+1
 0716 0196              adiw R24,1
 0718 FE01              movw R30,R28
 071A E459              subi R30,148  ; addi 108
 071C FF4F              sbci R31,255
 071E 9183              std z+1,R25
 0720 8083              std z+0,R24
 0722                   .dbline 216
 0722           L39:
 0722                   .dbline 212
 0722 8E81              ldd R24,y+6
 0724 9F81              ldd R25,y+7
 0726 0196              adiw R24,1
 0728 9F83              std y+7,R25
 072A 8E83              std y+6,R24
 072C           L41:
 072C                   .dbline 212
 072C FE01              movw R30,R28
 072E E05A              subi R30,160  ; addi 352
 0730 FE4F              sbci R31,254
 0732 2080              ldd R2,z+0
 0734 3180              ldd R3,z+1
 0736 4E80              ldd R4,y+6
 0738 5F80              ldd R5,y+7
 073A 4214              cp R4,R2
 073C 5304              cpc R5,R3
 073E A4F2              brlt L38
 0740                   .dbline 217
 0740           ;     {
 0740           ;         nTemp[nOffset] = chrTmp[i]; 
 0740           ;         nOffset += 1;   
 0740           ;     } 
 0740           ;     nTemp[nOffset] = 13;
 0740 CE01              movw R24,R28
 0742 8259              subi R24,146  ; offset = 110
 0744 9F4F              sbci R25,255
 0746 DE01              movw R26,R28
 0748 A459              subi R26,148  ; addi 108
 074A BF4F              sbci R27,255
 074C ED91              ld R30,x+
 074E FC91              ld R31,x
 0750 E80F              add R30,R24
 0752 F91F              adc R31,R25
 0754 8DE0              ldi R24,13
 0756 8083              std z+0,R24
 0758                   .dbline 218
 0758           ;     for(i = 0; i < nOffset;i++)
 0758 2224              clr R2
 075A 3324              clr R3
 075C 3F82              std y+7,R3
 075E 2E82              std y+6,R2
 0760 12C0              xjmp L45
 0762           L42:
 0762                   .dbline 219
 0762                   .dbline 220
 0762 CE01              movw R24,R28
 0764 8259              subi R24,146  ; offset = 110
 0766 9F4F              sbci R25,255
 0768 EE81              ldd R30,y+6
 076A FF81              ldd R31,y+7
 076C E80F              add R30,R24
 076E F91F              adc R31,R25
 0770 2080              ldd R2,z+0
 0772 EE81              ldd R30,y+6
 0774 FF81              ldd R31,y+7
 0776 EA0D              add R30,R10
 0778 FB1D              adc R31,R11
 077A 2082              std z+0,R2
 077C                   .dbline 221
 077C           L43:
 077C                   .dbline 218
 077C 8E81              ldd R24,y+6
 077E 9F81              ldd R25,y+7
 0780 0196              adiw R24,1
 0782 9F83              std y+7,R25
 0784 8E83              std y+6,R24
 0786           L45:
 0786                   .dbline 218
 0786 FE01              movw R30,R28
 0788 E459              subi R30,148  ; addi 108
 078A FF4F              sbci R31,255
 078C 2080              ldd R2,z+0
 078E 3180              ldd R3,z+1
 0790 4E80              ldd R4,y+6
 0792 5F80              ldd R5,y+7
 0794 4214              cp R4,R2
 0796 5304              cpc R5,R3
 0798 24F3              brlt L42
 079A                   .dbline 222
 079A           ;     {
 079A           ;       pOut1[i] = nTemp[i];      //命令代码
 079A           ;     }
 079A           ;     *nTXLen1 = nOffset;  //发送的信息长度
 079A F701              movw R30,R14
 079C 3182              std z+1,R3
 079E 2082              std z+0,R2
 07A0                   .dbline 225
 07A0           ;     
 07A0           ;     //封装内容数据
 07A0           ;     copy(pOut2,0,strHead,0,18);
 07A0 82E1              ldi R24,18
 07A2 90E0              ldi R25,0
 07A4 9D83              std y+5,R25
 07A6 8C83              std y+4,R24
 07A8 2224              clr R2
 07AA 3324              clr R3
 07AC 3B82              std y+3,R3
 07AE 2A82              std y+2,R2
 07B0 CE01              movw R24,R28
 07B2 8651              subi R24,22  ; offset = 234
 07B4 9F4F              sbci R25,255
 07B6 9983              std y+1,R25
 07B8 8883              std y+0,R24
 07BA 2227              clr R18
 07BC 3327              clr R19
 07BE 8B01              movw R16,R22
 07C0 92D0              xcall _copy
 07C2                   .dbline 226
 07C2           ;     nOffset = 18;
 07C2 82E1              ldi R24,18
 07C4 90E0              ldi R25,0
 07C6 FE01              movw R30,R28
 07C8 E459              subi R30,148  ; addi 108
 07CA FF4F              sbci R31,255
 07CC 9183              std z+1,R25
 07CE 8083              std z+0,R24
 07D0                   .dbline 227
 07D0           ;     copy(pOut2,nOffset,chrTemp,0,nOff);
 07D0 FE01              movw R30,R28
 07D2 EE52              subi R30,46  ; addi 210
 07D4 FF4F              sbci R31,255
 07D6 2080              ldd R2,z+0
 07D8 3180              ldd R3,z+1
 07DA 3D82              std y+5,R3
 07DC 2C82              std y+4,R2
 07DE 2224              clr R2
 07E0 3324              clr R3
 07E2 3B82              std y+3,R3
 07E4 2A82              std y+2,R2
 07E6 CE01              movw R24,R28
 07E8 8450              subi R24,4  ; offset = 252
 07EA 9F4F              sbci R25,255
 07EC 9983              std y+1,R25
 07EE 8883              std y+0,R24
 07F0 FE01              movw R30,R28
 07F2 E459              subi R30,148  ; addi 108
 07F4 FF4F              sbci R31,255
 07F6 2081              ldd R18,z+0
 07F8 3181              ldd R19,z+1
 07FA 8B01              movw R16,R22
 07FC 74D0              xcall _copy
 07FE                   .dbline 228
 07FE           ;     nOffset += nOff;
 07FE FE01              movw R30,R28
 0800 EE52              subi R30,46  ; addi 210
 0802 FF4F              sbci R31,255
 0804 2080              ldd R2,z+0
 0806 3180              ldd R3,z+1
 0808 FE01              movw R30,R28
 080A E459              subi R30,148  ; addi 108
 080C FF4F              sbci R31,255
 080E 4080              ldd R4,z+0
 0810 5180              ldd R5,z+1
 0812 420C              add R4,R2
 0814 531C              adc R5,R3
 0816 FE01              movw R30,R28
 0818 E459              subi R30,148  ; addi 108
 081A FF4F              sbci R31,255
 081C 5182              std z+1,R5
 081E 4082              std z+0,R4
 0820                   .dbline 229
 0820           ;     Encode(pData,pBuf,nLen);
 0820 FE01              movw R30,R28
 0822 ED5A              subi R30,173  ; addi 595
 0824 FD4F              sbci R31,253
 0826 0080              ldd R0,z+0
 0828 1180              ldd R1,z+1
 082A 1982              std y+1,R1
 082C 0882              std y+0,R0
 082E 9E01              movw R18,R28
 0830 2658              subi R18,134  ; offset = 378
 0832 3E4F              sbci R19,254
 0834 FE01              movw R30,R28
 0836 EF5A              subi R30,175  ; addi 593
 0838 FD4F              sbci R31,253
 083A 0081              ldd R16,z+0
 083C 1181              ldd R17,z+1
 083E F3D0              xcall _Encode
 0840                   .dbline 230
 0840           ;     ByteToChar(pBuf,chrTmp,nLen);
 0840 FE01              movw R30,R28
 0842 ED5A              subi R30,173  ; addi 595
 0844 FD4F              sbci R31,253
 0846 0080              ldd R0,z+0
 0848 1180              ldd R1,z+1
 084A 1982              std y+1,R1
 084C 0882              std y+0,R0
 084E 9E01              movw R18,R28
 0850 285F              subi R18,248  ; offset = 8
 0852 3F4F              sbci R19,255
 0854 8E01              movw R16,R28
 0856 0658              subi R16,134  ; offset = 378
 0858 1E4F              sbci R17,254
 085A 64D0              xcall _ByteToChar
 085C                   .dbline 231
 085C           ;     copy(pOut2,nOffset,chrTmp,0,(2 * nLen));
 085C 02E0              ldi R16,2
 085E 10E0              ldi R17,0
 0860 FE01              movw R30,R28
 0862 ED5A              subi R30,173  ; addi 595
 0864 FD4F              sbci R31,253
 0866 2081              ldd R18,z+0
 0868 3181              ldd R19,z+1
 086A 0E940000          xcall empy16s
 086E 1D83              std y+5,R17
 0870 0C83              std y+4,R16
 0872 2224              clr R2
 0874 3324              clr R3
 0876 3B82              std y+3,R3
 0878 2A82              std y+2,R2
 087A CE01              movw R24,R28
 087C 0896              adiw R24,8
 087E 9983              std y+1,R25
 0880 8883              std y+0,R24
 0882 FE01              movw R30,R28
 0884 E459              subi R30,148  ; addi 108
 0886 FF4F              sbci R31,255
 0888 2081              ldd R18,z+0
 088A 3181              ldd R19,z+1
 088C 8B01              movw R16,R22
 088E 2BD0              xcall _copy
 0890                   .dbline 232
 0890           ;     nOffset += (2 * nLen);
 0890 02E0              ldi R16,2
 0892 10E0              ldi R17,0
 0894 FE01              movw R30,R28
 0896 ED5A              subi R30,173  ; addi 595
 0898 FD4F              sbci R31,253
 089A 2081              ldd R18,z+0
 089C 3181              ldd R19,z+1
 089E 0E940000          xcall empy16s
 08A2 FE01              movw R30,R28
 08A4 E459              subi R30,148  ; addi 108
 08A6 FF4F              sbci R31,255
 08A8 2080              ldd R2,z+0
 08AA 3180              ldd R3,z+1
 08AC 200E              add R2,R16
 08AE 311E              adc R3,R17
 08B0 FE01              movw R30,R28
 08B2 E459              subi R30,148  ; addi 108
 08B4 FF4F              sbci R31,255
 08B6 3182              std z+1,R3
 08B8 2082              std z+0,R2
 08BA                   .dbline 233
 08BA           ;     pOut2[nOffset] = 27;//PDU编码,ESC的ASCALL是27
 08BA F101              movw R30,R2
 08BC E60F              add R30,R22
 08BE F71F              adc R31,R23
 08C0 8BE1              ldi R24,27
 08C2 8083              std z+0,R24
 08C4                   .dbline 235
 08C4           ;     
 08C4           ;     *nTXLen2 = nOffset;     //编码的长度
 08C4 F601              movw R30,R12
 08C6 3182              std z+1,R3
 08C8 2082              std z+0,R2
 08CA                   .dbline -2
 08CA           L10:
 08CA EF96              adiw R28,63
 08CC EF96              adiw R28,63
 08CE EF96              adiw R28,63
 08D0 EF96              adiw R28,63
 08D2 EF96              adiw R28,63
 08D4 EF96              adiw R28,63
 08D6 EF96              adiw R28,63
 08D8 EF96              adiw R28,63
 08DA EF96              adiw R28,63
 08DC 2C96              adiw R28,12  ; offset = 579
 08DE 0E940000          xcall pop_gset5
 08E2 2496              adiw R28,4
 08E4                   .dbline 0 ; func end
 08E4 0895              ret
 08E6                   .dbsym l Len 578 A[1:1]c
 08E6                   .dbsym l pBuf 378 A[200:200]c
 08E6                   .dbsym l nContent_Len 376 I
 08E6                   .dbsym l chrInfo 370 A[6:6]c
 08E6                   .dbsym l nLen_temp 368 I
 08E6                   .dbsym l strHead_temp 354 A[14:14]c
 08E6                   .dbsym l nTempLen 352 I
 08E6                   .dbsym l chrTemp 252 A[100:100]c
 08E6                   .dbsym l strHead 234 A[18:18]c
 08E6                   .dbsym l n 232 I
 08E6                   .dbsym l phoneTemp 212 A[20:20]c
 08E6                   .dbsym l nOff 210 I
 08E6                   .dbsym l nTemp 110 A[100:100]c
 08E6                   .dbsym l nOffset 108 I
 08E6                   .dbsym l chrTmp 8 A[100:100]c
 08E6                   .dbsym l i 6 I
 08E6                   .dbsym r sca_len 20 I
 08E6                   .dbsym l sca 605 pc
 08E6                   .dbsym r pOut2 22 pc
 08E6                   .dbsym r pOut1 10 pc
 08E6                   .dbsym r nTXLen2 12 pI
 08E6                   .dbsym r nTXLen1 14 pI
 08E6                   .dbsym l nLen 595 I
 08E6                   .dbsym l pData 593 pc
 08E6                   .dbsym l phonelen 591 I
 08E6                   .dbsym l pPhone 589 pc
 08E6                   .dbend
 08E6                   .dbfunc e copy _copy fV
 08E6           ;              i -> R20,R21
 08E6           ;           nLen -> R22,R23
 08E6           ;         nStart -> R10,R11
 08E6           ;           pOrg -> R12,R13
 08E6           ;           nOrg -> R18,R19
 08E6           ;          pDest -> R16,R17
                        .even
 08E6           _copy::
 08E6 0E940000          xcall push_gset4
 08EA C884              ldd R12,y+8
 08EC D984              ldd R13,y+9
 08EE AA84              ldd R10,y+10
 08F0 BB84              ldd R11,y+11
 08F2 6C85              ldd R22,y+12
 08F4 7D85              ldd R23,y+13
 08F6                   .dbline -1
 08F6                   .dbline 239
 08F6    

⌨️ 快捷键说明

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