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

📄 main.lst

📁 针对at91sam7a3为主芯片开发板开发的spi口应用程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
   \   00000006   1E1C               MOV         R6,R3
   \   00000008   069F               LDR         R7,[SP, #+0x18]
   \   0000000A   0020               MOV         R0,#+0
   \   0000000C   C043               MVN         R0,R0              ;; #-1
   \   0000000E   E060               STR         R0,[R4, #+0xC]
   \   00000010   AC20               MOV         R0,#+0xAC
   \   00000012   2060               STR         R0,[R4, #+0]
   \   00000014   321C               MOV         R2,R6
   \   00000016   0099               LDR         R1,[SP, #+0]
   \   00000018   201C               MOV         R0,R4
   \   0000001A   ........           _BLF        AT91F_US_SetBaudrate,AT91F_US_SetBaudrate??rT
   \   0000001E   391C               MOV         R1,R7
   \   00000020   201C               MOV         R0,R4
   \   00000022   ........           _BLF        AT91F_US_SetTimeguard,AT91F_US_SetTimeguard??rT
   \   00000026   8020               MOV         R0,#+0x80
   \   00000028   4000               LSL         R0,R0,#+0x1        ;; #+0x100
   \   0000002A   2018               ADD         R0,R4,R0
   \   0000002C   ........           _BLF        AT91F_PDC_Open,AT91F_PDC_Open??rT
   \   00000030   6560               STR         R5,[R4, #+0x4]
   \   00000032   01B0               ADD         SP,#+0x4
   \   00000034   F0BC               POP         {R4-R7}
   \   00000036   01BC               POP         {R0}
   \   00000038   0047               BX          R0                 ;; return

   \                                 In segment CODE, align 4, keep-with-next
   \   __??Code16?? __code __interwork __atpcs void AT91F_US_EnableTx(AT91PS_USART)
   \                     AT91F_US_EnableTx:
   \   00000000   4021               MOV         R1,#+0x40
   \   00000002   0160               STR         R1,[R0, #+0]
   \   00000004   7047               BX          LR                 ;; return

   \                                 In segment CODE, align 4, keep-with-next
   \   __??Code16?? __code __interwork __atpcs void AT91F_DBGU_CfgPMC(void)
   \                     AT91F_DBGU_CfgPMC:
   \   00000000   00B5               PUSH        {LR}
   \   00000002   0221               MOV         R1,#+0x2
   \   00000004   0248               LDR         R0,??AT91F_DBGU_CfgPMC_0  ;; 0xfffffc00
   \   00000006   ........           _BLF        AT91F_PMC_EnablePeriphClock,AT91F_PMC_EnablePeriphClock??rT
   \   0000000A   01BC               POP         {R0}
   \   0000000C   0047               BX          R0                 ;; return
   \   0000000E   C046               NOP         
   \                     ??AT91F_DBGU_CfgPMC_0:
   \   00000010   00FCFFFF           DC32        0xfffffc00

   \                                 In segment CODE, align 4, keep-with-next
   \   __??Code16?? __code __interwork __atpcs void AT91F_DBGU_CfgPIO(void)
   \                     AT91F_DBGU_CfgPIO:
   \   00000000   00B5               PUSH        {LR}
   \   00000002   0022               MOV         R2,#+0
   \   00000004   C021               MOV         R1,#+0xC0
   \   00000006   0906               LSL         R1,R1,#+0x18       ;; #-1073741824
   \   00000008   0248               LDR         R0,??AT91F_DBGU_CfgPIO_0  ;; 0xfffff400
   \   0000000A   ........           _BLF        AT91F_PIO_CfgPeriph,AT91F_PIO_CfgPeriph??rT
   \   0000000E   01BC               POP         {R0}
   \   00000010   0047               BX          R0                 ;; return
   \   00000012   C046               NOP         
   \                     ??AT91F_DBGU_CfgPIO_0:
   \   00000014   00F4FFFF           DC32        0xfffff400
     18          #include "trace.h"
     19          //*************************** declare local foundations ************************
     20          void DBGU_Init(void) ;
     21          //*********************************** end declare ******************************

   \                                 In segment DATA_Z, align 4, align-sorted
     22          INT8U *GetBuf ;
   \                     GetBuf:
   \   00000000                      DS8 4

   \                                 In segment CODE, align 4, keep-with-next
     23          void main(void)
     24          {
   \                     main:
   \   00000000   00B5               PUSH        {LR}
     25           DBGU_Init();
   \   00000002   ........           BL          DBGU_Init
     26           SD_Initialize() ;
   \   00000006   ........           _BLF        SD_Initialize,SD_Initialize??rT
     27           SD_ActiveInit() ;
   \   0000000A   ........           _BLF        SD_ActiveInit,SD_ActiveInit??rT
     28           SD_GetCardInfo() ;
   \   0000000E   ........           _BLF        SD_GetCardInfo,SD_GetCardInfo??rT
     29           TRACE_INFO("START to READ \r\n") ;
   \   00000012   0A48               LDR         R0,??main_0        ;; _Stdout
   \   00000014   0028               CMP         R0,#+0
   \   00000016   03D0               BEQ         ??main_1
   \   00000018   0949               LDR         R1,??main_0+0x4    ;; `?<Constant "START to READ \\r\\n">`
   \   0000001A   0848               LDR         R0,??main_0        ;; _Stdout
   \   0000001C   ........           _BLF        fprintf,fprintf??rT
     30           for(;;)
     31            {
     32              SD_ReadBlock(64, GetBuf);
   \                     ??main_1:
   \   00000020   0848               LDR         R0,??main_0+0x8    ;; GetBuf
   \   00000022   0168               LDR         R1,[R0, #+0]
   \   00000024   4020               MOV         R0,#+0x40
   \   00000026   ........           _BLF        SD_ReadBlock,SD_ReadBlock??rT
     33              TRACE_INFO(GetBuf) ;
                     ^
Warning[Pe167]: argument of type "INT8U *" is incompatible with parameter of
          type "char const *"
   \   0000002A   0448               LDR         R0,??main_0        ;; _Stdout
   \   0000002C   0028               CMP         R0,#+0
   \   0000002E   F7D0               BEQ         ??main_1
   \   00000030   0448               LDR         R0,??main_0+0x8    ;; GetBuf
   \   00000032   0168               LDR         R1,[R0, #+0]
   \   00000034   0148               LDR         R0,??main_0        ;; _Stdout
   \   00000036   ........           _BLF        fprintf,fprintf??rT
   \   0000003A   F1E7               B           ??main_1
   \                     ??main_0:
   \   0000003C   ........           DC32        _Stdout
   \   00000040   ........           DC32        `?<Constant "START to READ \\r\\n">`
   \   00000044   ........           DC32        GetBuf
     34            }
     35          }
     36          //******************************************************************************

   \                                 In segment CODE, align 4, keep-with-next
     37          void DBGU_Init(void)
     38           {
   \                     DBGU_Init:
   \   00000000   00B5               PUSH        {LR}
     39              AT91F_DBGU_CfgPIO() ;
   \   00000002   ........           _BLF        AT91F_DBGU_CfgPIO,AT91F_DBGU_CfgPIO??rT
     40              AT91F_DBGU_CfgPMC ();        //no need
   \   00000006   ........           _BLF        AT91F_DBGU_CfgPMC,AT91F_DBGU_CfgPMC??rT
     41              AT91F_US_Configure((AT91PS_USART)AT91C_BASE_DBGU,MCK,AT91C_US_ASYNC_MODE,115200,0) ;
   \   0000000A   0020               MOV         R0,#+0
   \   0000000C   01B4               PUSH        {R0}
   \   0000000E   E123               MOV         R3,#+0xE1
   \   00000010   5B02               LSL         R3,R3,#+0x9        ;; #+0x1C200
   \   00000012   8C22               MOV         R2,#+0x8C
   \   00000014   1201               LSL         R2,R2,#+0x4        ;; #+0x8C0
   \   00000016   0549               LDR         R1,??DBGU_Init_0   ;; 0x2db4000
   \   00000018   0548               LDR         R0,??DBGU_Init_0+0x4  ;; 0xfffff200
   \   0000001A   ........           _BLF        AT91F_US_Configure,AT91F_US_Configure??rT
   \   0000001E   01B0               ADD         SP,#+0x4
     42              AT91F_US_EnableTx((AT91PS_USART)AT91C_BASE_DBGU) ;
   \   00000020   0348               LDR         R0,??DBGU_Init_0+0x4  ;; 0xfffff200
   \   00000022   ........           _BLF        AT91F_US_EnableTx,AT91F_US_EnableTx??rT
     43           }
   \   00000026   01BC               POP         {R0}
   \   00000028   0047               BX          R0                 ;; return
   \   0000002A   C046               NOP         
   \                     ??DBGU_Init_0:
   \   0000002C   0040DB02           DC32        0x2db4000
   \   00000030   00F2FFFF           DC32        0xfffff200

   \                                 In segment DATA_C, align 4, align-sorted
   \                     `?<Constant "START to READ \\r\\n">`:
   \   00000000   535441525420       DC8 "START to READ \015\012"
   \              746F20524541
   \              44200D0A00  
   \   00000011   000000             DC8 0, 0, 0
     44          

   Maximum stack usage in bytes:

     Function                    CSTACK
     --------                    ------
     AT91F_DBGU_CfgPIO               4
     AT91F_DBGU_CfgPMC               4
     AT91F_PDC_DisableRx             0
     AT91F_PDC_DisableTx             0
     AT91F_PDC_EnableRx              0
     AT91F_PDC_EnableTx              0
     AT91F_PDC_Open                  8
     AT91F_PDC_SetNextRx             0
     AT91F_PDC_SetNextTx             0
     AT91F_PDC_SetRx                 0
     AT91F_PDC_SetTx                 0
     AT91F_PIO_CfgPeriph             0
     AT91F_PMC_EnablePeriphClock     0
     AT91F_US_Baudrate               8
     AT91F_US_Configure             24
     AT91F_US_EnableTx               0
     AT91F_US_SetBaudrate           16
     AT91F_US_SetTimeguard           0
     DBGU_Init                       8
     main                            4


   Segment part sizes:

     Function/Label                 Bytes
     --------------                 -----
     AT91F_PDC_SetNextRx               6
     AT91F_PDC_SetNextTx               6
     AT91F_PDC_SetRx                   6
     AT91F_PDC_SetTx                   6
     AT91F_PDC_EnableTx                8
     AT91F_PDC_EnableRx                6
     AT91F_PDC_DisableTx               8
     AT91F_PDC_DisableRx               6
     AT91F_PDC_Open                   74
     AT91F_PIO_CfgPeriph              12
     AT91F_PMC_EnablePeriphClock       4
     AT91F_US_Baudrate                64
     AT91F_US_SetBaudrate             24
     AT91F_US_SetTimeguard             4
     AT91F_US_Configure               58
     AT91F_US_EnableTx                 6
     AT91F_DBGU_CfgPMC                20
     AT91F_DBGU_CfgPIO                24
     GetBuf                            4
     main                             72
     DBGU_Init                        52
     ?<Constant "START to READ \r\n">
                                      20
      Others                         244

 
 698 bytes in segment CODE
  20 bytes in segment DATA_C
   4 bytes in segment DATA_Z
  12 bytes in segment INITTAB
 
 124 bytes of CODE  memory (+ 586 bytes shared)
  20 bytes of CONST memory
   4 bytes of DATA  memory

Errors: none
Warnings: 1

⌨️ 快捷键说明

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