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

📄 uart.ls1

📁 mifarea卡程序mifarea卡程序mifarea卡程序
💻 LS1
📖 第 1 页 / 共 5 页
字号:
                     685                             ; SOURCE LINE # 169
003A                 686     ?C0017:
003A 22              687             RET     
                     688     ; END OF _PutOutputData
                     689     
                     690     ; 
                     691     ; void ComOpen(unsigned long clk, unsigned long baudrate)
                     692     
----                 693             RSEG  ?PR?_ComOpen?UART
0000                 694     _ComOpen:
                     695             USING   0
                     696                             ; SOURCE LINE # 171
0000 900000   F      697             MOV     DPTR,#clk?542
0003 120000   F      698             LCALL   ?C?LSTXDATA
                     699     ; {     
                     700                             ; SOURCE LINE # 172
                     701     ;       unsigned char tmp;
                     702     ;       
                     703     ;       if(baudrate >= 9000)
                     704                             ; SOURCE LINE # 175
0006 E4              705             CLR     A
0007 7F28            706             MOV     R7,#028H
0009 7E23            707             MOV     R6,#023H
000B FD              708             MOV     R5,A
000C FC              709             MOV     R4,A
000D 900000   F      710             MOV     DPTR,#baudrate?543
0010 E0              711             MOVX    A,@DPTR
0011 F8              712             MOV     R0,A
0012 A3              713             INC     DPTR
0013 E0              714             MOVX    A,@DPTR
0014 F9              715             MOV     R1,A
0015 A3              716             INC     DPTR
0016 E0              717             MOVX    A,@DPTR
A51 MACRO ASSEMBLER  UART                                                                 03/13/2009 15:44:52 PAGE    12

0017 FA              718             MOV     R2,A
0018 A3              719             INC     DPTR
0019 E0              720             MOVX    A,@DPTR
001A FB              721             MOV     R3,A
001B C3              722             CLR     C
001C 120000   F      723             LCALL   ?C?ULCMP
001F 4015            724             JC      ?C0021
                     725     ;       {
                     726                             ; SOURCE LINE # 176
                     727     ;           PCON |= SMOD_;
                     728                             ; SOURCE LINE # 177
0021 438780          729             ORL     PCON,#080H
                     730     ;           tmp = (clk >> 4) / baudrate;
                     731                             ; SOURCE LINE # 178
0024 900000   F      732             MOV     DPTR,#clk?542
0027 E0              733             MOVX    A,@DPTR
0028 FC              734             MOV     R4,A
0029 A3              735             INC     DPTR
002A E0              736             MOVX    A,@DPTR
002B FD              737             MOV     R5,A
002C A3              738             INC     DPTR
002D E0              739             MOVX    A,@DPTR
002E FE              740             MOV     R6,A
002F A3              741             INC     DPTR
0030 E0              742             MOVX    A,@DPTR
0031 FF              743             MOV     R7,A
0032 7804            744             MOV     R0,#04H
                     745     ;       }
                     746                             ; SOURCE LINE # 179
0034 8013            747             SJMP    ?C0052
0036                 748     ?C0021:
                     749     ;       else
                     750     ;       {
                     751                             ; SOURCE LINE # 181
                     752     ;           PCON &= ~SMOD_;
                     753                             ; SOURCE LINE # 182
0036 53877F          754             ANL     PCON,#07FH
                     755     ;           tmp = (clk >> 5) / baudrate;
                     756                             ; SOURCE LINE # 183
0039 900000   F      757             MOV     DPTR,#clk?542
003C E0              758             MOVX    A,@DPTR
003D FC              759             MOV     R4,A
003E A3              760             INC     DPTR
003F E0              761             MOVX    A,@DPTR
0040 FD              762             MOV     R5,A
0041 A3              763             INC     DPTR
0042 E0              764             MOVX    A,@DPTR
0043 FE              765             MOV     R6,A
0044 A3              766             INC     DPTR
0045 E0              767             MOVX    A,@DPTR
0046 FF              768             MOV     R7,A
0047 7805            769             MOV     R0,#05H
0049                 770     ?C0052:
0049 120000   F      771             LCALL   ?C?ULSHR
004C A3              772             INC     DPTR
004D E0              773             MOVX    A,@DPTR
004E F8              774             MOV     R0,A
004F A3              775             INC     DPTR
0050 E0              776             MOVX    A,@DPTR
0051 F9              777             MOV     R1,A
0052 A3              778             INC     DPTR
0053 E0              779             MOVX    A,@DPTR
0054 FA              780             MOV     R2,A
0055 A3              781             INC     DPTR
0056 E0              782             MOVX    A,@DPTR
0057 FB              783             MOV     R3,A
A51 MACRO ASSEMBLER  UART                                                                 03/13/2009 15:44:52 PAGE    13

0058 120000   F      784             LCALL   ?C?ULDIV
005B 900000   F      785             MOV     DPTR,#tmp?544
005E EF              786             MOV     A,R7
005F F0              787             MOVX    @DPTR,A
                     788     ;       }
                     789                             ; SOURCE LINE # 184
0060                 790     ?C0022:
                     791     ;           
                     792     ;     SetIntPri(SIO_VECTOR, 1);
                     793                             ; SOURCE LINE # 186
0060 7D01            794             MOV     R5,#01H
0062 7F04            795             MOV     R7,#04H
0064 120000   F      796             LCALL   _SetIntPri
                     797     ;     
                     798     ;       TI = RI = 0;
                     799                             ; SOURCE LINE # 188
0067 C298            800             CLR     RI
0069 C299            801             CLR     TI
                     802     ;       SCON =  0x50;
                     803                             ; SOURCE LINE # 189
006B 759850          804             MOV     SCON,#050H
                     805     ;       TMOD &= 0x0F;
                     806                             ; SOURCE LINE # 190
006E 53890F          807             ANL     TMOD,#0FH
                     808     ;       TMOD |= 0x20;
                     809                             ; SOURCE LINE # 191
0071 438920          810             ORL     TMOD,#020H
                     811     ;       TR1 = 1;
                     812                             ; SOURCE LINE # 192
0074 D28E            813             SETB    TR1
                     814     ;       TH1 = 256 - tmp;
                     815                             ; SOURCE LINE # 193
0076 900000   F      816             MOV     DPTR,#tmp?544
0079 E0              817             MOVX    A,@DPTR
007A F4              818             CPL     A
007B 04              819             INC     A
007C F58D            820             MOV     TH1,A
                     821     ;       enable();
                     822                             ; SOURCE LINE # 194
007E D2AF            823             SETB    EA
                     824     ;       ES=1;
                     825                             ; SOURCE LINE # 195
0080 D2AC            826             SETB    ES
                     827     ; }
                     828                             ; SOURCE LINE # 196
0082 22              829             RET     
                     830     ; END OF _ComOpen
                     831     
                     832     ; 
                     833     ; unsigned int ComWrite( unsigned char *buf, unsigned int len )
                     834     
----                 835             RSEG  ?PR?_ComWrite?UART
0000                 836     _ComWrite:
                     837             USING   0
                     838                             ; SOURCE LINE # 198
0000 900000   F      839             MOV     DPTR,#buf?645
0003 EB              840             MOV     A,R3
0004 F0              841             MOVX    @DPTR,A
0005 A3              842             INC     DPTR
0006 EA              843             MOV     A,R2
0007 F0              844             MOVX    @DPTR,A
0008 A3              845             INC     DPTR
0009 E9              846             MOV     A,R1
000A F0              847             MOVX    @DPTR,A
000B A3              848             INC     DPTR
000C EC              849             MOV     A,R4
A51 MACRO ASSEMBLER  UART                                                                 03/13/2009 15:44:52 PAGE    14

000D F0              850             MOVX    @DPTR,A
000E A3              851             INC     DPTR
000F ED              852             MOV     A,R5
0010 F0              853             MOVX    @DPTR,A
                     854     ; {
                     855                             ; SOURCE LINE # 199
                     856     ;       unsigned int i;
                     857     ;       unsigned int starttime;
                     858     ;       
                     859     ;       for(i=0; i<len; i++)
                     860                             ; SOURCE LINE # 203
0011 E4              861             CLR     A
0012 A3              862             INC     DPTR
0013 F0              863             MOVX    @DPTR,A
0014 A3              864             INC     DPTR
0015 F0              865             MOVX    @DPTR,A
0016                 866     ?C0024:
0016 900000   F      867             MOV     DPTR,#len?646
0019 E0              868             MOVX    A,@DPTR
001A FE              869             MOV     R6,A
001B A3              870             INC     DPTR
001C E0              871             MOVX    A,@DPTR
001D FF              872             MOV     R7,A
001E C3              873             CLR     C
001F 900000   F      874             MOV     DPTR,#i?647+01H
0022 E0              875             MOVX    A,@DPTR
0023 9F              876             SUBB    A,R7
0024 900000   F      877             MOV     DPTR,#i?647
0027 E0              878             MOVX    A,@DPTR
0028 9E              879             SUBB    A,R6
0029 5065            880             JNC     ?C0025
                     881     ;       {
                     882                             ; SOURCE LINE # 204
                     883     ;       starttime = GetTickCount();
                     884                             ; SOURCE LINE # 205
002B 120000   F      885             LCALL   GetTickCount
002E 900000   F      886             MOV     DPTR,#starttime?648
0031 EE              887             MOV     A,R6
0032 F0              888             MOVX    @DPTR,A
0033 A3              889             INC     DPTR
0034 EF              890             MOV     A,R7
0035 F0              891             MOVX    @DPTR,A
0036                 892     ?C0027:
                     893     ;               while( !PutOutputData(buf[i]) )
                     894                             ; SOURCE LINE # 206
0036 900000   F      895             MOV     DPTR,#buf?645
0039 E0              896             MOVX    A,@DPTR
003A FB              897             MOV     R3,A
003B A3              898             INC     DPTR
003C E0              899             MOVX    A,@DPTR
003D FA              900             MOV     R2,A
003E A3              901             INC     DPTR
003F E0              902             MOVX    A,@DPTR
0040 F9              903             MOV     R1,A
0041 900000   F      904             MOV     DPTR,#i?647
0044 E0              905             MOVX    A,@DPTR
0045 FE              906             MOV     R6,A
0046 A3              907             INC     DPTR
0047 E0              908             MOVX    A,@DPTR
0048 F582            909             MOV     DPL,A
004A 8E83            910             MOV     DPH,R6
004C 120000   F      911             LCALL   ?C?CLDOPTR
004F FF              912             MOV     R7,A
0050 120000   F      913             LCALL   _PutOutputData
0053 402B            914             JC      ?C0026
                     915     ;               {
A51 MACRO ASSEMBLER  UART                                                                 03/13/2009 15:44:52 PAGE    15

⌨️ 快捷键说明

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