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

📄 f34x_msd_cmd.ls1

📁 USB读写SD卡例程
💻 LS1
📖 第 1 页 / 共 5 页
字号:
0083 120000   F      871             LCALL   L?0101
0086 30E309          872             JNB     ACC.3,?C0021
                     873     ;       printf("\t<LABEL>");
                     874                             ; SOURCE LINE # 141
0089 7BFF            875             MOV     R3,#0FFH
008B 7A00     F      876             MOV     R2,#HIGH (?SC_39)
008D 7900     F      877             MOV     R1,#LOW (?SC_39)
008F 120000   F      878             LCALL   _printf
0092                 879     ?C0021:
                     880     ;     if(findinfo.direntry->sfn.attrib & ATTRIB_SUBDIR) 
                     881                             ; SOURCE LINE # 142
0092 120000   F      882             LCALL   L?0081
0095 120000   F      883             LCALL   L?0102
0098 30E409          884             JNB     ACC.4,?C0022
                     885     ;       printf("\t<DIR>");
                     886                             ; SOURCE LINE # 143
009B 7BFF            887             MOV     R3,#0FFH
009D 7A00     F      888             MOV     R2,#HIGH (?SC_48)
009F 7900     F      889             MOV     R1,#LOW (?SC_48)
00A1 120000   F      890             LCALL   _printf
00A4                 891     ?C0022:
                     892     ;       printf(ENDLINE);
                     893                             ; SOURCE LINE # 144
00A4 120000   F      894             LCALL   L?0094
00A7 120000   F      895             LCALL   _printf
                     896     ; 
                     897     ;   } while(findnext(&findinfo));
                     898                             ; SOURCE LINE # 146
00AA 7B01            899             MOV     R3,#01H
00AC 7A00     F      900             MOV     R2,#HIGH (findinfo?243)
00AE 7900     F      901             MOV     R1,#LOW (findinfo?243)
00B0 120000   F      902             LCALL   _findnext
00B3 EF              903             MOV     A,R7
00B4 6003            904             JZ      $ + 5H
00B6 020000   F      905             LJMP    ?C0012
                     906     ; }
                     907                             ; SOURCE LINE # 147
00B9                 908     ?C0009:
00B9 22              909             RET     
00BA                 910     L?0092:
00BA 8F82            911             MOV     DPL,R7
00BC 758300          912             MOV     DPH,#00H
00BF 120000   F      913             LCALL   ?C?CLDOPTR
00C2 FF              914             MOV     R7,A
00C3 120000   F      915             LCALL   _tolower
00C6 120000   F      916             LCALL   _putchar
00C9 900000   F      917             MOV     DPTR,#i?242
00CC E0              918             MOVX    A,@DPTR
00CD 04              919             INC     A
00CE F0              920             MOVX    @DPTR,A
00CF 22              921             RET     
                     922     ; END OF Cmd_Dir
                     923     
                     924     ; 
                     925     ; //----------------------------------------------------------------------------
A51 MACRO ASSEMBLER  F34X_MSD_CMD                                                         11/16/2006 13:16:27 PAGE    16

                     926     ; // Cmd_Type
                     927     ; //----------------------------------------------------------------------------
                     928     ; //
                     929     ; // This function sends via UART the content of file which is defiened with 
                     930     ; // "type" command.
                     931     ; //
                     932     ; // Parameters   : filename - pointer to file name
                     933     ; // Return Value :
                     934     ; //----------------------------------------------------------------------------
                     935     ; 
                     936     ; void Cmd_Type(char* filename) 
                     937     
----                 938             RSEG  ?PR?_Cmd_Type?F34X_MSD_CMD
0000                 939     _Cmd_Type:
                     940             USING   0
                     941                             ; SOURCE LINE # 160
0000 900000   F      942             MOV     DPTR,#filename?344
0003 120000   F      943             LCALL   L?0086
                     944     ; {
                     945                             ; SOURCE LINE # 161
                     946     ;   FILE xdata f;unsigned xdata bytesread,i;
                     947     ; 
                     948     ;   if(!fopen(&f,filename,"r")) { 
                     949                             ; SOURCE LINE # 164
0006 900000   F      950             MOV     DPTR,#filename?344
0009 120000   F      951             LCALL   L?0098
000C 900000   F      952             MOV     DPTR,#?_fopen?BYTE+03H
000F C9              953             XCH     A,R1
0010 120000   F      954             LCALL   L?0087
0013 A3              955             INC     DPTR
0014 74FF            956             MOV     A,#0FFH
0016 F0              957             MOVX    @DPTR,A
0017 A3              958             INC     DPTR
0018 7400     F      959             MOV     A,#HIGH (?SC_58)
001A F0              960             MOVX    @DPTR,A
001B A3              961             INC     DPTR
001C 7400     F      962             MOV     A,#LOW (?SC_58)
001E 120000   F      963             LCALL   L?0099
0021 120000   F      964             LCALL   _fopen
0024 EF              965             MOV     A,R7
0025 4E              966             ORL     A,R6
0026 7008            967             JNZ     ?C0025
                     968     ;     printf("File not found"ENDLINE);
                     969                             ; SOURCE LINE # 165
0028 7BFF            970             MOV     R3,#0FFH
002A 7A00     F      971             MOV     R2,#HIGH (?SC_60)
002C 7900     F      972             MOV     R1,#LOW (?SC_60)
002E 806E            973             SJMP    ?C0073
                     974     ;     return; 
                     975     ;   }  
                     976                             ; SOURCE LINE # 167
0030                 977     ?C0025:
                     978     ; 
                     979     ;   while(bytesread=fread(&f,Scratch,Sect_Block_Size())) {
                     980                             ; SOURCE LINE # 169
0030 900000   F      981             MOV     DPTR,#?_fread?BYTE+03H
0033 7401            982             MOV     A,#01H
0035 F0              983             MOVX    @DPTR,A
0036 A3              984             INC     DPTR
0037 7400     F      985             MOV     A,#HIGH (Scratch)
0039 F0              986             MOVX    @DPTR,A
003A A3              987             INC     DPTR
003B 7400     F      988             MOV     A,#LOW (Scratch)
003D F0              989             MOVX    @DPTR,A
003E A3              990             INC     DPTR
003F 7402            991             MOV     A,#02H
A51 MACRO ASSEMBLER  F34X_MSD_CMD                                                         11/16/2006 13:16:27 PAGE    17

0041 F0              992             MOVX    @DPTR,A
0042 A3              993             INC     DPTR
0043 E4              994             CLR     A
0044 120000   F      995             LCALL   L?0099
0047 120000   F      996             LCALL   _fread
004A 900000   F      997             MOV     DPTR,#bytesread?346
004D EE              998             MOV     A,R6
004E F0              999             MOVX    @DPTR,A
004F A3             1000             INC     DPTR
0050 EF             1001             MOV     A,R7
0051 F0             1002             MOVX    @DPTR,A
0052 4E             1003             ORL     A,R6
0053 6040           1004             JZ      ?C0026
                    1005     ;     if(key_available()) { 
                    1006                             ; SOURCE LINE # 170
0055 120000   F     1007             LCALL   key_available
0058 EF             1008             MOV     A,R7
0059 703A           1009             JNZ     ?C0026
                    1010     ;       break; 
                    1011                             ; SOURCE LINE # 171
                    1012     ;     }
                    1013                             ; SOURCE LINE # 172
005B                1014     ?C0027:
                    1015     ;     for(i=0;i<bytesread;i++) {
                    1016                             ; SOURCE LINE # 173
005B E4             1017             CLR     A
005C 900000   F     1018             MOV     DPTR,#i?347
005F F0             1019             MOVX    @DPTR,A
0060 A3             1020             INC     DPTR
0061 F0             1021             MOVX    @DPTR,A
0062                1022     ?C0028:
0062 900000   F     1023             MOV     DPTR,#bytesread?346
0065 E0             1024             MOVX    A,@DPTR
0066 FE             1025             MOV     R6,A
0067 A3             1026             INC     DPTR
0068 E0             1027             MOVX    A,@DPTR
0069 FF             1028             MOV     R7,A
006A A3             1029             INC     DPTR
006B E0             1030             MOVX    A,@DPTR
006C FC             1031             MOV     R4,A
006D A3             1032             INC     DPTR
006E E0             1033             MOVX    A,@DPTR
006F FD             1034             MOV     R5,A
0070 C3             1035             CLR     C
0071 9F             1036             SUBB    A,R7
0072 EC             1037             MOV     A,R4
0073 9E             1038             SUBB    A,R6
0074 50BA           1039             JNC     ?C0025
                    1040     ;       putchar(Scratch[i]);
                    1041                             ; SOURCE LINE # 174
0076 7400     F     1042             MOV     A,#LOW (Scratch)
0078 2D             1043             ADD     A,R5
0079 F582           1044             MOV     DPL,A
007B 7400     F     1045             MOV     A,#HIGH (Scratch)
007D 3C             1046             ADDC    A,R4
007E F583           1047             MOV     DPH,A
0080 E0             1048             MOVX    A,@DPTR
0081 FF             1049             MOV     R7,A
0082 120000   F     1050             LCALL   _putchar
                    1051     ;     }
                    1052                             ; SOURCE LINE # 175
0085 900000   F     1053             MOV     DPTR,#i?347+01H
0088 E0             1054             MOVX    A,@DPTR
0089 04             1055             INC     A
008A F0             1056             MOVX    @DPTR,A
008B 70D5           1057             JNZ     ?C0028
A51 MACRO ASSEMBLER  F34X_MSD_CMD                                                         11/16/2006 13:16:27 PAGE    18

008D 900000   F     1058             MOV     DPTR,#i?347
0090 E0             1059             MOVX    A,@DPTR
0091 04             1060             INC     A
0092 F0             1061             MOVX    @DPTR,A
0093                1062     ?C0071:
0093 80CD           1063             SJMP    ?C0028
                    1064     ;   }
                    1065                             ; SOURCE LINE # 176
0095                1066     ?C0026:
                    1067     ; 
                    1068     ;   fclose(&f);
                    1069                             ; SOURCE LINE # 178
0095 120000   F     1070             LCALL   L?0100
0098 120000   F     1071             LCALL   _fclose
                    1072     ; 
                    1073     ; 
                    1074     ;   printf(ENDLINE);
                    1075                             ; SOURCE LINE # 181
009B 120000   F     1076             LCALL   L?0094
009E                1077     ?C0073:
009E 120000   F     1078             LCALL   _printf
                    1079     ; }
                    1080                             ; SOURCE LINE # 182
00A1                1081     ?C0024:
00A1 22             1082             RET     
                    1083     ; END OF _Cmd_Type
                    1084     
                    1085     ; 
                    1086     ; //----------------------------------------------------------------------------
                    1087     ; // Cmd_Help
                    1088     ; //----------------------------------------------------------------------------
                    1089     ; //
                    1090     ; // Function sends via UART the list of known commands. This list contains all
                    1091     ; // commands allowed for normal user. List is printing when system doesn't 
                    1092     ; // recognize the last sent command.
                    1093     ; //
                    1094     ; // Parameters   :
                    1095     ; // Return Value :
                    1096     ; //----------------------------------------------------------------------------
                    1097     ; 
                    1098     ; void Cmd_Help(void) 
                    1099     
----                1100             RSEG  ?PR?Cmd_Help?F34X_MSD_CMD
0000                1101     Cmd_Help:
                    1102             USING   0
                   

⌨️ 快捷键说明

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