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

📄 comm.ls1

📁 c8051f310xmodembootloader.rar
💻 LS1
📖 第 1 页 / 共 4 页
字号:
                     782     ;       if(TIflag)
                     783                             ; SOURCE LINE # 117
A51 MACRO ASSEMBLER  COMM                                                                 08/03/2009 16:57:28 PAGE    13

0002 300004   F      784             JNB     TIflag,?C0016
                     785     ;       {
                     786                             ; SOURCE LINE # 118
                     787     ;               TIflag=0;
                     788                             ; SOURCE LINE # 119
0005 C200     F      789             CLR     TIflag
                     790     ;               TI0=1;
                     791                             ; SOURCE LINE # 120
0007 D299            792             SETB    TI0
                     793     ;       }
                     794                             ; SOURCE LINE # 121
0009                 795     ?C0016:
                     796     ;       t=inTxBuf;t++;
                     797                             ; SOURCE LINE # 122
0009 900000   F      798             MOV     DPTR,#inTxBuf
000C E0              799             MOVX    A,@DPTR
000D FC              800             MOV     R4,A
000E A3              801             INC     DPTR
000F E0              802             MOVX    A,@DPTR
0010 AA04            803             MOV     R2,AR4
0012 F9              804             MOV     R1,A
0013 900000   F      805             MOV     DPTR,#t?342
0016 7401            806             MOV     A,#01H
0018 F0              807             MOVX    @DPTR,A
0019 A3              808             INC     DPTR
001A EA              809             MOV     A,R2
001B F0              810             MOVX    @DPTR,A
001C A3              811             INC     DPTR
001D E9              812             MOV     A,R1
001E F0              813             MOVX    @DPTR,A
001F 900000   F      814             MOV     DPTR,#t?342+01H
0022 E4              815             CLR     A
0023 75F001          816             MOV     B,#01H
0026 120000   F      817             LCALL   ?C?IILDX
                     818     ;       if(t==TxBuf+LenTxBuf) t=TxBuf;
                     819                             ; SOURCE LINE # 123
0029 900000   F      820             MOV     DPTR,#t?342
002C E0              821             MOVX    A,@DPTR
002D FB              822             MOV     R3,A
002E A3              823             INC     DPTR
002F E0              824             MOVX    A,@DPTR
0030 FA              825             MOV     R2,A
0031 A3              826             INC     DPTR
0032 E0              827             MOVX    A,@DPTR
0033 F9              828             MOV     R1,A
0034 7401            829             MOV     A,#01H
0036 900000   F      830             MOV     DPTR,#TxBuf+080H
0039 6B              831             XRL     A,R3
003A 7008            832             JNZ     ?C0039
003C E9              833             MOV     A,R1
003D 6582            834             XRL     A,DPL
003F 7003            835             JNZ     ?C0039
0041 EA              836             MOV     A,R2
0042 6583            837             XRL     A,DPH
0044                 838     ?C0039:
0044 700D            839             JNZ     ?C0017
0046 900000   F      840             MOV     DPTR,#t?342
0049 04              841             INC     A
004A F0              842             MOVX    @DPTR,A
004B A3              843             INC     DPTR
004C 7400     F      844             MOV     A,#HIGH (TxBuf)
004E F0              845             MOVX    @DPTR,A
004F A3              846             INC     DPTR
0050 7400     F      847             MOV     A,#LOW (TxBuf)
0052 F0              848             MOVX    @DPTR,A
0053                 849     ?C0017:
A51 MACRO ASSEMBLER  COMM                                                                 08/03/2009 16:57:28 PAGE    14

                     850     ;       if(t==outTxBuf) {ES0=1;return;}                 //TxBuf Full
                     851                             ; SOURCE LINE # 124
0053 900000   F      852             MOV     DPTR,#outTxBuf
0056 E0              853             MOVX    A,@DPTR
0057 FB              854             MOV     R3,A
0058 A3              855             INC     DPTR
0059 E0              856             MOVX    A,@DPTR
005A FA              857             MOV     R2,A
005B A3              858             INC     DPTR
005C E0              859             MOVX    A,@DPTR
005D F9              860             MOV     R1,A
005E C003            861             PUSH    AR3
0060 C002            862             PUSH    AR2
0062 C001            863             PUSH    AR1
0064 900000   F      864             MOV     DPTR,#t?342
0067 E0              865             MOVX    A,@DPTR
0068 FB              866             MOV     R3,A
0069 A3              867             INC     DPTR
006A E0              868             MOVX    A,@DPTR
006B FA              869             MOV     R2,A
006C A3              870             INC     DPTR
006D E0              871             MOVX    A,@DPTR
006E F9              872             MOV     R1,A
006F D082            873             POP     DPL
0071 D083            874             POP     DPH
0073 D0E0            875             POP     ACC
0075 6B              876             XRL     A,R3
0076 7008            877             JNZ     ?C0040
0078 E9              878             MOV     A,R1
0079 6582            879             XRL     A,DPL
007B 7003            880             JNZ     ?C0040
007D EA              881             MOV     A,R2
007E 6583            882             XRL     A,DPH
0080                 883     ?C0040:
0080 7003            884             JNZ     ?C0018
0082 D2AC            885             SETB    ES0
0084 22              886             RET     
0085                 887     ?C0018:
                     888     ;       *inTxBuf=ascii;
                     889                             ; SOURCE LINE # 125
0085 900000   F      890             MOV     DPTR,#inTxBuf
0088 E0              891             MOVX    A,@DPTR
0089 FC              892             MOV     R4,A
008A A3              893             INC     DPTR
008B E0              894             MOVX    A,@DPTR
008C F582            895             MOV     DPL,A
008E 8C83            896             MOV     DPH,R4
0090 EF              897             MOV     A,R7
0091 F0              898             MOVX    @DPTR,A
                     899     ;       inTxBuf=t;
                     900                             ; SOURCE LINE # 126
0092 900000   F      901             MOV     DPTR,#t?342
0095 A3              902             INC     DPTR
0096 E0              903             MOVX    A,@DPTR
0097 FA              904             MOV     R2,A
0098 A3              905             INC     DPTR
0099 E0              906             MOVX    A,@DPTR
009A FF              907             MOV     R7,A
009B 900000   F      908             MOV     DPTR,#inTxBuf
009E EA              909             MOV     A,R2
009F F0              910             MOVX    @DPTR,A
00A0 A3              911             INC     DPTR
00A1 EF              912             MOV     A,R7
00A2 F0              913             MOVX    @DPTR,A
                     914     ;       ES0=1;
                     915                             ; SOURCE LINE # 127
A51 MACRO ASSEMBLER  COMM                                                                 08/03/2009 16:57:28 PAGE    15

00A3 D2AC            916             SETB    ES0
                     917     ; }
                     918                             ; SOURCE LINE # 128
00A5                 919     ?C0019:
00A5 22              920             RET     
                     921     ; END OF _Printf_Char
                     922     
                     923     ; 
                     924     ; 
                     925     ; /**********************************************************************
                     926     ; ** 函数原型:    void                 Printf_String(u8_t code *string)
                     927     ; ** 参数说明: string:        字符串的起始地址
                     928     ; ** 返 回 值: 无      
                     929     ; ** 说    明: 向串口发送字符串,碰到0x00结束
                     930     ; ************************************************************************/
                     931     ; void Printf_String(unsigned char  *string)
                     932     
----                 933             RSEG  ?PR?_Printf_String?COMM
0000                 934     _Printf_String:
                     935             USING   0
                     936                             ; SOURCE LINE # 137
0000 900000   F      937             MOV     DPTR,#string?443
0003 EB              938             MOV     A,R3
0004 F0              939             MOVX    @DPTR,A
0005 A3              940             INC     DPTR
0006 EA              941             MOV     A,R2
0007 F0              942             MOVX    @DPTR,A
0008 A3              943             INC     DPTR
0009 E9              944             MOV     A,R1
000A F0              945             MOVX    @DPTR,A
                     946     ; {
                     947                             ; SOURCE LINE # 138
000B                 948     ?C0020:
                     949     ; 
                     950     ;    while(*string!=0)
                     951                             ; SOURCE LINE # 140
000B 900000   F      952             MOV     DPTR,#string?443
000E E0              953             MOVX    A,@DPTR
000F FB              954             MOV     R3,A
0010 A3              955             INC     DPTR
0011 E0              956             MOVX    A,@DPTR
0012 FA              957             MOV     R2,A
0013 A3              958             INC     DPTR
0014 E0              959             MOVX    A,@DPTR
0015 F9              960             MOV     R1,A
0016 120000   F      961             LCALL   ?C?CLDPTR
0019 FF              962             MOV     R7,A
001A 600F            963             JZ      ?C0022
                     964     ;    {
                     965                             ; SOURCE LINE # 141
                     966     ;      Printf_Char(*string);
                     967                             ; SOURCE LINE # 142
001C 120000   F      968             LCALL   _Printf_Char
                     969     ;      string++;
                     970                             ; SOURCE LINE # 143
001F 900000   F      971             MOV     DPTR,#string?443+01H
0022 E4              972             CLR     A
0023 75F001          973             MOV     B,#01H
0026 120000   F      974             LCALL   ?C?IILDX
                     975     ;    }
                     976                             ; SOURCE LINE # 144
0029 80E0            977             SJMP    ?C0020
                     978     ; }
                     979                             ; SOURCE LINE # 145
002B                 980     ?C0022:
002B 22              981             RET     
A51 MACRO ASSEMBLER  COMM                                                                 08/03/2009 16:57:28 PAGE    16

                     982     ; END OF _Printf_String
                     983     
                     984     ; 
                     985     ; /**********************************************************************
                     986     ; **函数原型:    Get_Char()
                     987     ; **参数说明:  无
                     988     ; **返 回 值:  temp      
                     989     ; **说    明:  从串口缓冲区接收一个字符
                     990     ; ************************************************************************/
                     991     ; bit Get_Char(unsigned char xdata *ch)
                     992     
----                 993             RSEG  ?PR?_Get_Char?COMM
0000                 994     _Get_Char:
                     995             USING   0
                     996                             ; SOURCE LINE # 153
                     997     ;---- Variable 'ch?544' assigned to Register 'R6/R7' ----
                     998     ; {
                     999                             ; SOURCE LINE # 154
                    1000     ;  
                    1001     ;       ES0=0;
                    1002                             ; SOURCE LINE # 156
0000 C2AC           1003             CLR     ES0
                    1004     ;       if(inRxBuf==outRxBuf) {ES0=1;return 0;}         //RxBuf Empty
                    1005                             ; SOURCE LINE # 157
0002 900000   F     1006             MOV     DPTR,#outRxBuf
0005 E0             1007             MOVX    A,@DPTR
0006 FB             1008             MOV     R3,A
0007 A3             1009             INC     DPTR
0008 E0             1010             MOVX    A,@DPTR
0009 FA             1011             MOV     R2,A
000A A3             1012             INC     DPTR
000B E0             1013             MOVX    A,@DPTR
000C F9             1014             MOV     R1,A
000D C003           1015             PUSH    AR3
000F C002           1016             PUSH    AR2
0011 C001           1017             PUSH    AR1
0013 900000   F     1018             MOV     DPTR,#inRxBuf
0016 E0             1019             MOVX    A,@DPTR
0017 FB             1020             MOV     R3,A
0018 A3             1021             INC     DPTR
0019 E0             1022             MOVX    A,@DPTR
001A FA             1023             MOV     R2,A
001B A3             1024             INC     DPTR
001C E0             1025             MOVX    A,@DPTR
001D F9             1026             MOV     R1,A
001E D082           1027             POP     DPL
0020 D083           1028             POP     DPH
0022 D0E0           1029             POP     ACC
0024 6B             1030             XRL     A,R3
0025 7008           1031             JNZ     ?C0041
0027 E9             1032             MOV     A,R1
0028 6582           1033             XRL     A,DPL
002A 7003           1034             JNZ     ?C0041
002C EA             1035             MOV     A,R2
002D 6583           1036             XRL     A,DPH
002F                1037     ?C0041:
002F 7004           1038             JNZ     ?C0023
0031 D2AC           1039             SETB    ES0
0033 C3             1040             CLR     C
0034 22             1041             RET     
0035                1042     ?C0023:
                    1043     ;       *ch=*outRxBuf;  outRxBuf++;                                     //数据被读走,读指

⌨️ 快捷键说明

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