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

📄 cstartup.lst

📁 针对at91sam7a3为主芯片开发板开发的spi口应用程序
💻 LST
📖 第 1 页 / 共 2 页
字号:
                               -------------------------------
   99    00000030              ;- Setup the stack for each mode
  100    00000030              ;-----------------------------------------------
                               -------------------------------
  101    00000030 80009FE5         ldr     r0, =__iramend
  102    00000034              
  103    00000034              ;- Set up Interrupt Mode and set IRQ Mode
                                Stack
  104    00000034 D2F021E3         msr     CPSR_c, #ARM_MODE_IRQ | I_BIT |
                                                    F_BIT
  105    00000038 00D0A0E1         mov     r13, r0                     ; Init
                                                 stack IRQ
  106    0000003C 600040E2         sub     r0, r0, #IRQ_STACK_SIZE
  107    00000040              
  108    00000040              ;- Enable interrupt & Set up Supervisor Mode and
                                set Supervisor Mode Stack
  109    00000040 53F021E3         msr     CPSR_c, #ARM_MODE_SVC | F_BIT
  110    00000044 00D0A0E1         mov     r13, r0
  111    00000048              
  112    00000048              ;-----------------------------------------------
                               -------------------------------
  113    00000048              ; Initialize segments.
  114    00000048              ;-----------------------------------------------
                               -------------------------------
  115    00000048              ; __segment_init is assumed to use
  116    00000048              ; instruction set and to be reachable by BL from
                                the ICODE segment
  117    00000048              ; (it is safest to link them in segment
                                ICODE).
  118    00000048              ;-----------------------------------------------
                               -------------------------------
  119    00000000                  EXTERN      __segment_init
  120    00000048 70009FE5         ldr r0,=__segment_init
  121    0000004C 0FE0A0E1         mov     lr, pc
  122    00000050 10FF2FE1         bx  r0
  123    00000054              
  124    00000054              ;-----------------------------------------------
                               -------------------------------
  125    00000054              ;- Branch on C code Main function (with
                                interworking)
  126    00000054              ;-----------------------------------------------
                               -------------------------------
  127    00000000                  EXTERN      main
  128    00000000                  PUBLIC      __main
  129    00000054              ?jump_to_main:
  130    00000054 68E09FE5         ldr lr,=?call_exit
  131    00000058 68009FE5         ldr r0,=main
  132    0000005C              __main:
  133    0000005C 10FF2FE1         bx  r0
  134    00000060              
  135    00000060              ;-----------------------------------------------
                               -------------------------------
  136    00000060              ;- Loop for ever
  137    00000060              ;-----------------------------------------------
                               -------------------------------
  138    00000060              ;- End of application. Normally, never
                                occur.
  139    00000060              ;- Could jump on Software Reset ( B 0x0
                                ).
  140    00000060              ;-----------------------------------------------
                               -------------------------------
  141    00000060              ?call_exit:
  142    00000060              End
  143    00000060 FEFFFFEA         b       End
  144    00000064              
  145    00000064              ;-----------------------------------------------
                               -------------------------------
  146    00000064              ;- Manage exception: The exception must be
                                ensure in ARM mode
  147    00000064              ;-----------------------------------------------
                               -------------------------------
  148    00000064              ;-----------------------------------------------
                               -------------------------------
  149    00000064              ;- Function             : IRQ_Handler_Entry
  150    00000064              ;- Treatments           : IRQ Controller
                                Interrupt Handler.
  151    00000064              ;- Called Functions     : AIC_IVR[interrupt]
  152    00000064              ;-----------------------------------------------
                               -------------------------------
  153    00000064              IRQ_Handler_Entry:
  154    00000064              
  155    00000064              ;-------------------------
  156    00000064              ;- Manage Exception Entry
  157    00000064              ;-------------------------
  158    00000064              ;- Adjust and save LR_irq in IRQ stack
  159    00000064 04E04EE2         sub         lr, lr, #4
  160    00000068 00402DE9         stmfd       sp!, {lr}
  161    0000006C              
  162    0000006C              ;- Save r0 and SPSR (need to be saved for nested
                                interrupt)
  163    0000006C 00E04FE1         mrs         r14, SPSR
  164    00000070 01402DE9         stmfd       sp!, {r0,r14}
  165    00000074              
  166    00000074              ;- Write in the IVR to support Protect
                                Mode
  167    00000074              ;- No effect in Normal Mode
  168    00000074              ;- De-assert the NIRQ and clear the source in
                                Protect Mode
  169    00000074 50E09FE5         ldr         r14, =AT91C_BASE_AIC
  170    00000078 00019EE5         ldr         r0 , [r14, #AIC_IVR]
  171    0000007C 00E18EE5         str         r14, [r14, #AIC_IVR]
  172    00000080              
  173    00000080              ;- Enable Interrupt and Switch in Supervisor
                                Mode
  174    00000080 13F021E3         msr         CPSR_c, #ARM_MODE_SVC
  175    00000084              
  176    00000084              ;- Save scratch/used registers and LR in User
                                Stack
  177    00000084 0E502DE9         stmfd       sp!, { r1-r3, r12, r14}
  178    00000088              
  179    00000088              ;----------------------------------------------
  180    00000088              ;- Branch to the routine pointed by the
                                AIC_IVR
  181    00000088              ;----------------------------------------------
  182    00000088 0FE0A0E1         mov         r14, pc
  183    0000008C 10FF2FE1         bx          r0
  184    00000090              
  185    00000090              ;----------------------------------------------
  186    00000090              ;- Manage Exception Exit
  187    00000090              ;----------------------------------------------
  188    00000090              ;- Restore scratch/used registers and LR from
                                User Stack
  189    00000090 0E50BDE8         ldmia       sp!, { r1-r3, r12, r14}
  190    00000094              
  191    00000094              ;- Disable Interrupt and switch back in IRQ
                                mode
  192    00000094 92F021E3         msr         CPSR_c, #I_BIT | ARM_MODE_IRQ
  193    00000098              
  194    00000098              ;- Mark the End of Interrupt on the AIC
  195    00000098 2CE09FE5         ldr         r14, =AT91C_BASE_AIC
  196    0000009C 30E18EE5         str         r14, [r14, #AIC_EOICR]
  197    000000A0              
  198    000000A0              ;- Restore SPSR_irq and r0 from IRQ stack
  199    000000A0 0140BDE8         ldmia       sp!, {r0,r14}
  200    000000A4 0EF06FE1         msr         SPSR_cxsf, r14
  201    000000A8              
  202    000000A8              ;- Restore adjusted  LR_irq from IRQ stack
                                directly in the PC
  203    000000A8 0080FDE8         ldmia       sp!, {pc}^
  204    000000AC              
  205    000000AC              ;-----------------------------------------------
                               -------------------------------
  206    000000AC              ;- Exception Vectors
  207    000000AC              ;-----------------------------------------------
                               -------------------------------
  208    00000000                  PUBLIC    AT91F_Default_FIQ_handler
  209    00000000                  PUBLIC    AT91F_Default_IRQ_handler
  210    00000000                  PUBLIC    AT91F_Spurious_handler
  211    000000AC              
  212    000000AC                  CODE32      ; Always ARM mode after
                                exeption
  213    000000AC              
  214    000000AC              AT91F_Default_FIQ_handler
  215    000000AC FEFFFFEA         b         AT91F_Default_FIQ_handler
  216    000000B0              
  217    000000B0              AT91F_Default_IRQ_handler
  218    000000B0 FEFFFFEA         b         AT91F_Default_IRQ_handler
  219    000000B4              
  220    000000B4              AT91F_Spurious_handler
  221    000000B4 FEFFFFEA         b         AT91F_Spurious_handler
  222    000000B8              
  223    000000B8                  ENDMOD      ;- Terminates the assembly of
  the current module
  223.1  000000B8                       TABLE
  223.2  000000B8 ........             Reference on line 79,101 
  223.3  000000BC ........             Reference on line 80 
  223.4  000000C0 ........             Reference on line 120 
  223.5  000000C4 ........             Reference on line 130 
  223.6  000000C8 ........             Reference on line 131 
  223.7  000000CC 00F0FFFF             Reference on line 169,195 
  223    000000D0                  ENDMOD      ;- Terminates the assembly of
  the current module
##############################
#          CRC:63F0          #
#        Errors:   0         #
#        Warnings: 0         #
#         Bytes: 208         #
##############################



##############################
#          CRC:63F0          #
#        Errors:   0         #
#        Warnings: 0         #
#         Bytes: 208         #
##############################





⌨️ 快捷键说明

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