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

📄 main.lst

📁 at91sam7x256 FREERTOS sd卡的读写程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
   \   000000D8   0460               STR         R4,[R0, #0]
   \   000000DA   4460               STR         R4,[R0, #+4]
   \   000000DC   8460               STR         R4,[R0, #+8]
    103                  char i;
    104          
    105                  TRACE_INFO( "file <FileName> <Si");
   \   000000DE   6349               LDR         R1,??menu_1+0x34   ;; `?<Constant "wodemima">` + 12
   \   000000E0   281C               MOV         R0,R5
   \   000000E2   ........           _BLF        fprintf,??fprintf??rT
    106                  TRACE_INFO( "ze>\n\rEnter name: ");
   \   000000E6   6249               LDR         R1,??menu_1+0x38   ;; `?<Constant "wodemima">` + 160
   \   000000E8   281C               MOV         R0,R5
   \   000000EA   ........           _BLF        fprintf,??fprintf??rT
    107                  AT91F_DBGU_scanf(fileName);
   \   000000EE   02A8               ADD         R0,SP,#+8
   \   000000F0   ........           _BLF        AT91F_DBGU_scanf,??AT91F_DBGU_scanf??rT
    108                  TRACE_INFO( "\n\r");
   \   000000F4   311C               MOV         R1,R6
   \   000000F6   281C               MOV         R0,R5
   \   000000F8   ........           _BLF        fprintf,??fprintf??rT
    109          
    110                  TRACE_INFO( "File size: ");
   \   000000FC   5D49               LDR         R1,??menu_1+0x3C   ;; `?<Constant "wodemima">` + 180
   \   000000FE   281C               MOV         R0,R5
   \   00000100   ........           _BLF        fprintf,??fprintf??rT
    111                  AT91F_DBGU_scanf(Size );
   \   00000104   06A8               ADD         R0,SP,#+24
   \   00000106   ........           _BLF        AT91F_DBGU_scanf,??AT91F_DBGU_scanf??rT
    112                  TRACE_INFO( "\n\r.");
   \   0000010A   5BA1               ADR         R1,??menu_1+0x40   ;; "\n\r."
   \   0000010C   281C               MOV         R0,R5
   \   0000010E   ........           _BLF        fprintf,??fprintf??rT
    113          
    114                  i=0;
   \   00000112   201C               MOV         R0,R4
   \   00000114   0A22               MOV         R2,#+10
   \   00000116   03E0               B           ??menu_14
    115                  while( (Size[i] != '\0') && (i != sizeof(Size)) )
    116                  {
    117                    if( (Size[i]>='0') && (Size[i]<='9') )
    118                    {
    119                      ulSize *=10;
    120                      ulSize += ((unsigned int) Size[i] - '0'); // convert ASCII to INT
   \                     ??menu_15:
   \   00000118   5743               MUL         R7,R2
   \   0000011A   CF19               ADD         R7,R1,R7
   \   0000011C   303F               SUB         R7,#+48
    121                      i++;
   \   0000011E   401C               ADD         R0,R0,#+1
    122                    }
   \                     ??menu_14:
   \   00000120   06A9               ADD         R1,SP,#+24
   \   00000122   095C               LDRB        R1,[R1, R0]
   \   00000124   0029               CMP         R1,#+0
   \   00000126   05D0               BEQ         ??menu_16
   \   00000128   0A28               CMP         R0,#+10
   \   0000012A   03D0               BEQ         ??menu_16
   \   0000012C   3029               CMP         R1,#+48
   \   0000012E   01D3               BCC         ??menu_16
   \   00000130   3A29               CMP         R1,#+58
   \   00000132   F1D3               BCC         ??menu_15
    123                    else
    124                    {
    125                      break;
    126                    }
    127                  }
    128          
    129                  // Fill buffer
    130                  for (count=0; count < sizeof(FileBuff); count++)
   \                     ??menu_16:
   \   00000134   0020               MOV         R0,#+0
   \   00000136   211C               MOV         R1,R4
    131                  {
    132                    FileBuff[count] = (unsigned char)count;
   \                     ??menu_17:
   \   00000138   09AA               ADD         R2,SP,#+36
   \   0000013A   5154               STRB        R1,[R2, R1]
    133                  }
   \   0000013C   491C               ADD         R1,R1,#+1
   \   0000013E   8022               MOV         R2,#+128
   \   00000140   5200               LSL         R2,R2,#+1          ;; #+256
   \   00000142   9142               CMP         R1,R2
   \   00000144   F8D3               BCC         ??menu_17
    134          
    135                  // Write parts of file
    136                  for (count=0;count<ulSize / sizeof(FileBuff); count++)
   \   00000146   0190               STR         R0,[SP, #+4]
   \   00000148   8026               MOV         R6,#+128
   \   0000014A   3606               LSL         R6,R6,#+24         ;; #-2147483648
   \   0000014C   0CE0               B           ??menu_18
    137                  {
    138                    status = BFSA_write( fileName, (char*)FileBuff, sizeof(FileBuff), count );
   \                     ??menu_19:
   \   0000014E   0306               LSL         R3,R0,#+24
   \   00000150   1B0E               LSR         R3,R3,#+24
   \   00000152   F20D               LSR         R2,R6,#+23
   \   00000154   09A9               ADD         R1,SP,#+36
   \   00000156   02A8               ADD         R0,SP,#+8
   \   00000158   ........           _BLF        BFSA_write,??BFSA_write??rT
   \   0000015C   041C               MOV         R4,R0
    139                    if( BFSA_FAILURE(status) )
   \   0000015E   3042               TST         R0,R6
   \   00000160   60D1               BNE         ??menu_11
    140                    {
    141                      goto FAILURE;
    142                    }
    143                  }
   \   00000162   0198               LDR         R0,[SP, #+4]
   \   00000164   401C               ADD         R0,R0,#+1
   \   00000166   0190               STR         R0,[SP, #+4]
   \                     ??menu_18:
   \   00000168   0198               LDR         R0,[SP, #+4]
   \   0000016A   390A               LSR         R1,R7,#+8
   \   0000016C   8842               CMP         R0,R1
   \   0000016E   EED3               BCC         ??menu_19
    144          
    145                  // Write end of file
    146                  if (ulSize % sizeof( FileBuff) )
   \   00000170   3806               LSL         R0,R7,#+24
   \   00000172   A6D0               BEQ         ??menu_12
    147                  {
    148                    status = BFSA_write( fileName, (char*)FileBuff, ulSize % sizeof(FileBuff), ulSize / sizeof(FileBuff) );
   \   00000174   3B0A               LSR         R3,R7,#+8
   \   00000176   1B06               LSL         R3,R3,#+24
   \   00000178   1B0E               LSR         R3,R3,#+24
   \   0000017A   3A06               LSL         R2,R7,#+24
   \   0000017C   120E               LSR         R2,R2,#+24
   \   0000017E   09A9               ADD         R1,SP,#+36
   \   00000180   02A8               ADD         R0,SP,#+8
   \   00000182   ........           _BLF        BFSA_write,??BFSA_write??rT
   \   00000186   041C               MOV         R4,R0
    149                    if( BFSA_FAILURE(status) )
   \   00000188   3042               TST         R0,R6
   \   0000018A   4BD1               BNE         ??menu_11
    150                    {
    151                      goto FAILURE;
    152                    }
    153                  }
    154                  status = BFSA_SUCCESS;
    155                  TRACE_INFO( "OK\n\r");
   \   0000018C   99E7               B           ??menu_12
    156                }
    157                break;
    158          
    159                case '4': // dir
    160                {
    161                  status = BFSA_dir();
   \                     ??menu_5:
   \   0000018E   ........           _BLF        BFSA_dir,??BFSA_dir??rT
   \                     ??menu_20:
   \   00000192   041C               MOV         R4,R0
    162                  if( BFSA_SUCCESS != status )
   \   00000194   46D1               BNE         ??menu_11
    163                  {
    164                    goto FAILURE;
    165                  }
    166                  TRACE_INFO( "OK\n\r");
   \   00000196   0099               LDR         R1,[SP, #+0]
   \   00000198   281C               MOV         R0,R5
   \   0000019A   ........           _BLF        fprintf,??fprintf??rT
   \   0000019E   48E0               B           ??menu_13
    167                }
    168                break;
    169          
    170                case  '5': // cd
    171                {
    172                  char dirName[10]="";
   \                     ??menu_6:
   \   000001A0   02A8               ADD         R0,SP,#+8
   \   000001A2   0460               STR         R4,[R0, #0]
   \   000001A4   4460               STR         R4,[R0, #+4]
   \   000001A6   8460               STR         R4,[R0, #+8]
    173          
    174                  TRACE_INFO( "cd <DirName> \n\r");
   \   000001A8   3449               LDR         R1,??menu_1+0x44   ;; `?<Constant "wodemima">` + 192
   \   000001AA   281C               MOV         R0,R5
   \   000001AC   ........           _BLF        fprintf,??fprintf??rT
    175                  TRACE_INFO( "Enter name: ");
   \   000001B0   391C               MOV         R1,R7
   \   000001B2   281C               MOV         R0,R5
   \   000001B4   ........           _BLF        fprintf,??fprintf??rT
    176                  AT91F_DBGU_scanf(dirName);
   \   000001B8   02A8               ADD         R0,SP,#+8
   \   000001BA   ........           _BLF        AT91F_DBGU_scanf,??AT91F_DBGU_scanf??rT
    177                  TRACE_INFO( "\n\r");
   \   000001BE   311C               MOV         R1,R6
   \   000001C0   281C               MOV         R0,R5
   \   000001C2   ........           _BLF        fprintf,??fprintf??rT
    178          
    179                  status = BFSA_cd(dirName);
   \   000001C6   02A8               ADD         R0,SP,#+8
   \   000001C8   ........           _BLF        BFSA_cd,??BFSA_cd??rT
   \   000001CC   041C               MOV         R4,R0
    180                  if( BFSA_SUCCESS != status )
   \   000001CE   29D1               BNE         ??menu_11
    181                  {
    182                    goto FAILURE;
    183                  }
    184                  TRACE_INFO( "OK\n\r");
   \   000001D0   77E7               B           ??menu_12
    185                }
    186                break;
    187          
    188                case '6': // delete
    189                {
    190                  char fileName[10]="";
   \                     ??menu_7:
   \   000001D2   02A8               ADD         R0,SP,#+8
   \   000001D4   0460               STR         R4,[R0, #0]
   \   000001D6   4460               STR         R4,[R0, #+4]
   \   000001D8   8460               STR         R4,[R0, #+8]
    191          
    192                  TRACE_INFO( "delete <FileName>");
   \   000001DA   2949               LDR         R1,??menu_1+0x48   ;; `?<Constant "wodemima">` + 208
   \   000001DC   281C               MOV         R0,R5
   \   000001DE   ........           _BLF        fprintf,??fprintf??rT
    193                  TRACE_INFO( "\n\r Enter name: ");
   \   000001E2   2849               LDR         R1,??menu_1+0x4C   ;; `?<Constant "wodemima">` + 228
   \   000001E4   281C               MOV         R0,R5
   \   000001E6   ........           _BLF        fprintf,??fprintf??rT
    194                  AT91F_DBGU_scanf(fileName);
   \   000001EA   02A8               ADD         R0,SP,#+8
   \   000001EC   ........           _BLF        AT91F_DBGU_scanf,??AT91F_DBGU_scanf??rT
    195                  TRACE_INFO( "\n\r");
   \   000001F0   311C               MOV         R1,R6
   \   000001F2   281C               MOV         R0,R5
   \   000001F4   ........           _BLF        fprintf,??fprintf??rT
    196          
    197                  status = BFSA_delete(fileName);
   \   000001F8   02A8               ADD         R0,SP,#+8
   \   000001FA   ........           _BLF        BFSA_delete,??BFSA_delete??rT
   \   000001FE   C8E7               B           ??menu_20
    198                  if( BFSA_SUCCESS != status )
    199                  {
    200                    goto FAILURE;
    201                  }
    202                  TRACE_INFO( "OK\n\r");
    203                }
    204                break;
    205          
    206                case '7': // Init
    207                {
    208                  status = BFSA_init();
   \                     ??menu_8:
   \   00000200   ........           _BLF        BFSA_init,??BFSA_init??rT
   \   00000204   041C               MOV         R4,R0
    209                  if( BFSA_SUCCESS != status )
   \   00000206   0DD1               BNE         ??menu_11
    210                  {
    211                    goto FAILURE;
    212                  }
    213                  TRACE_INFO( "OK\n\r");
   \   00000208   5BE7               B           ??menu_12
    214                }
    215                break;
    216          
    217                case 'F': // Format
    218                {
    219                  status = BFSA_format();
   \                     ??menu_9:
   \   0000020A   ........           _BLF        BFSA_format,??BFSA_format??rT
   \   0000020E   041C               MOV         R4,R0
    220                  if( BFSA_SUCCESS != status )
   \   00000210   08D1               BNE         ??menu_11
    221                  {
    222                    goto FAILURE;
    223                  }
    224                  status = BFSA_init();
   \   00000212   ........           _BLF        BFSA_init,??BFSA_init??rT
   \   00000216   041C               MOV         R4,R0
    225                  if( BFSA_SUCCESS != status )
   \   00000218   04D1               BNE         ??menu_11
    226                  {
    227                    goto FAILURE;
    228                  }
    229                  TRACE_INFO( "OK\n\r");
   \   0000021A   0099               LDR         R1,[SP, #+0]
   \   0000021C   281C               MOV         R0,R5
   \   0000021E   ........           _BLF        fprintf,??fprintf??rT
   \   00000222   06E0               B           ??menu_13

⌨️ 快捷键说明

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