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

📄 si4421.ls1

📁 c8051f310xmodembootloader.rar
💻 LS1
📖 第 1 页 / 共 5 页
字号:
                     821     ; END OF fiforxframe
                     822     
                     823     ; /******************************************************************************
                     824     ; ** 函数: txregframe()
                     825     ; ** 入参: 
                     826     ; ** 返回: 
                     827     ; ** 说明: ia442x发送一帧数据
                     828     ; ******************************************************************************/
                     829     ; void txregframe(unsigned char len)                                    
                     830     
----                 831             RSEG  ?PR?_txregframe?SI4421
0000                 832     _txregframe:
                     833             USING   0
                     834                             ; SOURCE LINE # 166
0000 900000   F      835             MOV     DPTR,#len?343
0003 EF              836             MOV     A,R7
0004 F0              837             MOVX    @DPTR,A
                     838     ; {
                     839                             ; SOURCE LINE # 167
                     840     ;       unsigned char i;
                     841     ;       unsigned int u,k;
                     842     ;       //P2 = 0xFF;
                     843     ;       sdi = 0;
                     844                             ; SOURCE LINE # 171
0005 C286            845             CLR     sdi
                     846     ;       nsel = 0;
                     847                             ; SOURCE LINE # 172
0007 C290            848             CLR     nsel
                     849     ; //    spisendcommand(0xca83);
                     850     ;       spisendcommand(0x8228);//transimission starts turn on crystal
                     851                             ; SOURCE LINE # 174
0009 7F28            852             MOV     R7,#028H
000B 7E82            853             MOV     R6,#082H
000D 120000   F      854             LCALL   _spisendcommand
                     855     ; //    sdi = 0;
A51 MACRO ASSEMBLER  SI4421                                                               08/03/2009 16:57:27 PAGE    15

                     856     ; //    nsel = 0;
                     857     ; 
                     858     ;       len=len+4;         //字节固定同步头
                     859                             ; SOURCE LINE # 178
0010 900000   F      860             MOV     DPTR,#len?343
0013 E0              861             MOVX    A,@DPTR
0014 2404            862             ADD     A,#04H
0016 F0              863             MOVX    @DPTR,A
                     864     ; 
                     865     ;       for(i=0;i<len;i++)
                     866                             ; SOURCE LINE # 180
0017 E4              867             CLR     A
0018 A3              868             INC     DPTR
0019 F0              869             MOVX    @DPTR,A
001A                 870     ?C0027:
001A 900000   F      871             MOV     DPTR,#len?343
001D E0              872             MOVX    A,@DPTR
001E FF              873             MOV     R7,A
001F A3              874             INC     DPTR
0020 E0              875             MOVX    A,@DPTR
0021 C3              876             CLR     C
0022 9F              877             SUBB    A,R7
0023 4003            878             JC      $ + 5H
0025 020000   F      879             LJMP    ?C0028
                     880     ;       {
                     881                             ; SOURCE LINE # 181
                     882     ;               nsel=0;
                     883                             ; SOURCE LINE # 182
0028 C290            884             CLR     nsel
                     885     ;               //while(!sdo);   
                     886     ;               
                     887     ;               for(k=0;k<6000;k++)
                     888                             ; SOURCE LINE # 185
002A E4              889             CLR     A
002B 900000   F      890             MOV     DPTR,#k?346
002E F0              891             MOVX    @DPTR,A
002F A3              892             INC     DPTR
0030 F0              893             MOVX    @DPTR,A
0031                 894     ?C0030:
0031 900000   F      895             MOV     DPTR,#k?346
0034 E0              896             MOVX    A,@DPTR
0035 FE              897             MOV     R6,A
0036 A3              898             INC     DPTR
0037 E0              899             MOVX    A,@DPTR
0038 FF              900             MOV     R7,A
0039 C3              901             CLR     C
003A 9470            902             SUBB    A,#070H
003C EE              903             MOV     A,R6
003D 9417            904             SUBB    A,#017H
003F 5013            905             JNC     ?C0031
                     906     ;                 {
                     907                             ; SOURCE LINE # 186
                     908     ;                   if(sdo)
                     909                             ; SOURCE LINE # 187
0041 208110          910             JB      sdo,?C0031
                     911     ;                        {
                     912                             ; SOURCE LINE # 188
                     913     ;                         break;
                     914                             ; SOURCE LINE # 189
                     915     ;                        }
                     916                             ; SOURCE LINE # 190
                     917     ;                 }
                     918                             ; SOURCE LINE # 191
0044                 919     ?C0032:
0044 900000   F      920             MOV     DPTR,#k?346+01H
0047 E0              921             MOVX    A,@DPTR
A51 MACRO ASSEMBLER  SI4421                                                               08/03/2009 16:57:27 PAGE    16

0048 04              922             INC     A
0049 F0              923             MOVX    @DPTR,A
004A 70E5            924             JNZ     ?C0030
004C 900000   F      925             MOV     DPTR,#k?346
004F E0              926             MOVX    A,@DPTR
0050 04              927             INC     A
0051 F0              928             MOVX    @DPTR,A
0052                 929     ?C0062:
0052 80DD            930             SJMP    ?C0030
0054                 931     ?C0031:
                     932     ;           if(k==6000) 
                     933                             ; SOURCE LINE # 192
0054 BE171C          934             CJNE    R6,#017H,?C0034
0057 BF7019          935             CJNE    R7,#070H,?C0034
                     936     ;               {        // nres=0;
                     937                             ; SOURCE LINE # 193
                     938     ;                        //  delayms(50);
                     939     ;                        //  nres=1;
                     940     ;                     ia442xinit();
                     941                             ; SOURCE LINE # 196
005A 120000   F      942             LCALL   ia442xinit
                     943     ;               spirevtwobyte();
                     944                             ; SOURCE LINE # 197
005D 120000   F      945             LCALL   spirevtwobyte
                     946     ;               spisendcommand(0x8288);                     //电源管理 whole receive crysta
                             l on
                     947                             ; SOURCE LINE # 198
0060 120000   F      948             LCALL   L?0069
                     949     ;               spisendcommand(0xca83);                         //FIFO COMMAND
                     950                             ; SOURCE LINE # 199
0063 7F83            951             MOV     R7,#083H
0065 7ECA            952             MOV     R6,#0CAH
0067 120000   F      953             LCALL   _spisendcommand
                     954     ;                         if(DEBUG) Printf_String("\r\n[msg:]003 si4421's sdo is dead but s
                             he can receive");
                     955                             ; SOURCE LINE # 200
006A 7BFF            956             MOV     R3,#0FFH
006C 7A00     F      957             MOV     R2,#HIGH (?SC_106)
006E 7900     F      958             MOV     R1,#LOW (?SC_106)
0070 020000   F      959             LJMP    ?C0067
                     960     ;                         return;
                     961     ;               }
                     962                             ; SOURCE LINE # 202
0073                 963     ?C0034:
                     964     ;               
                     965     ;          
                     966     ;               u=0xb8;
                     967                             ; SOURCE LINE # 205
0073 900000   F      968             MOV     DPTR,#u?345
0076 E4              969             CLR     A
0077 F0              970             MOVX    @DPTR,A
0078 A3              971             INC     DPTR
0079 74B8            972             MOV     A,#0B8H
007B F0              973             MOVX    @DPTR,A
                     974     ;               u<<=8;
                     975                             ; SOURCE LINE # 206
007C E0              976             MOVX    A,@DPTR
007D F8              977             MOV     R0,A
007E E4              978             CLR     A
007F F0              979             MOVX    @DPTR,A
0080 E8              980             MOV     A,R0
0081 900000   F      981             MOV     DPTR,#u?345
0084 F0              982             MOVX    @DPTR,A
                     983     ;               u+=txdata[i];
                     984                             ; SOURCE LINE # 207
0085 900000   F      985             MOV     DPTR,#i?344
A51 MACRO ASSEMBLER  SI4421                                                               08/03/2009 16:57:27 PAGE    17

0088 E0              986             MOVX    A,@DPTR
0089 2400     F      987             ADD     A,#LOW (txdata)
008B F582            988             MOV     DPL,A
008D E4              989             CLR     A
008E 3400     F      990             ADDC    A,#HIGH (txdata)
0090 F583            991             MOV     DPH,A
0092 E0              992             MOVX    A,@DPTR
0093 FF              993             MOV     R7,A
0094 900000   F      994             MOV     DPTR,#u?345+01H
0097 E0              995             MOVX    A,@DPTR
0098 2F              996             ADD     A,R7
0099 F0              997             MOVX    @DPTR,A
009A 900000   F      998             MOV     DPTR,#u?345
009D E0              999             MOVX    A,@DPTR
009E 3400           1000             ADDC    A,#00H
00A0 F0             1001             MOVX    @DPTR,A
                    1002     ;               spisendcommand(u);
                    1003                             ; SOURCE LINE # 208
00A1 E0             1004             MOVX    A,@DPTR
00A2 FE             1005             MOV     R6,A
00A3 A3             1006             INC     DPTR
00A4 E0             1007             MOVX    A,@DPTR
00A5 FF             1008             MOV     R7,A
00A6 120000   F     1009             LCALL   _spisendcommand
                    1010     ;       }
                    1011                             ; SOURCE LINE # 209
00A9 900000   F     1012             MOV     DPTR,#i?344
00AC E0             1013             MOVX    A,@DPTR
00AD 04             1014             INC     A
00AE F0             1015             MOVX    @DPTR,A
00AF 020000   F     1016             LJMP    ?C0027
00B2                1017     ?C0028:
                    1018     ;               nsel=0;
                    1019                             ; SOURCE LINE # 210
00B2 C290           1020             CLR     nsel
                    1021     ;               //while(!sdo);
                    1022     ;               for(k=0;k<6000;k++)
                    1023                             ; SOURCE LINE # 212
00B4 E4             1024             CLR     A
00B5 900000   F     1025             MOV     DPTR,#k?346
00B8 F0             1026             MOVX    @DPTR,A
00B9 A3             1027             INC     DPTR
00BA F0             1028             MOVX    @DPTR,A
00BB                1029     ?C0037:
00BB 900000   F     1030             MOV     DPTR,#k?346
00BE E0             1031             MOVX    A,@DPTR
00BF FE             1032             MOV     R6,A
00C0 A3             1033             INC     DPTR
00C1 E0             1034             MOVX    A,@DPTR
00C2 FF             1035             MOV     R7,A
00C3 C3             1036             CLR     C
00C4 9470           1037             SUBB    A,#070H
00C6 EE             1038             MOV     A,R6
00C7 9417           1039             SUBB    A,#017H

⌨️ 快捷键说明

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