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

📄 startup.lst

📁 lpc2148上的一个可带操作系统的多任务编程模式
💻 LST
📖 第 1 页 / 共 2 页
字号:
                        258     EXTERN CODE32 (SWI_Handler?A)
                        259     EXTERN CODE32 (PAbt_Handler?A)
                        260     EXTERN CODE32 (DAbt_Handler?A)
                        261     EXTERN CODE32 (IRQ_Handler?A)
                        262     EXTERN CODE32 (FIQ_Handler?A)
                        263     
                        264     
                        265     
                        266     
                        267     
00000000 E59FF020       268     Vectors:        LDR     PC,Reset_Addr         
00000004 E59FF024       269                     LDR     PC,Undef_Addr
00000008 E59FF028       270                     LDR     PC,SWI_Addr
0000000C E59FF02C       271                     LDR     PC,PAbt_Addr
00000010 E59FF030       272                     LDR     PC,DAbt_Addr
00000014 E1A00000       273                     NOP                             
                        274     ;               LDR     PC,IRQ_Addr
00000018 E51FFFF0       275                     LDR     PC,[PC, #-0x0FF0]       
0000001C E59FF03C       276                     LDR     PC,FIQ_Addr
                        277     
00000020 00000040 R     278     Reset_Addr:     DD      Reset_Handler
00000024 00000000 E     279     Undef_Addr:     DD      Undef_Handler?A
00000028 00000000 E     280     SWI_Addr:       DD      SWI_Handler?A
0000002C 00000000 E     281     PAbt_Addr:      DD      PAbt_Handler?A
00000030 00000000 E     282     DAbt_Addr:      DD      DAbt_Handler?A
00000034 00000000       283                     DD      0                       
00000038 00000000 E     284     IRQ_Addr:       DD      IRQ_Handler?A
0000003C 00000000 E     285     FIQ_Addr:       DD      FIQ_Handler?A
                        286     
                        287     
                        288     
                        289     
00000040                290     Reset_Handler:  
                        291     
                        292     
                        293     $if  (EXTMEM_MODE)
                                                LDR     R0, =PINSEL2
                                                LDR     R1, =PINSEL2_Val
                                                STR     R1, [R0]
                                $endif 
                        298     
                        299     
                        300     IF (EMC_SETUP != 0)
                                                LDR     R0, =EMC_BASE
                                
                                IF (BCFG0_SETUP != 0)
                                                LDR     R1, =BCFG0_Val
                                                STR     R1, [R0, #BCFG0_OFS]
                                ENDIF
                                
                                IF (BCFG1_SETUP != 0)
                                                LDR     R1, =BCFG1_Val
                                                STR     R1, [R0, #BCFG1_OFS]
                                ENDIF
                                
                                IF (BCFG2_SETUP != 0)
                                                LDR     R1, =BCFG2_Val
                                                STR     R1, [R0, #BCFG2_OFS]
                                ENDIF
                                
                                IF (BCFG3_SETUP != 0)
                                                LDR     R1, =BCFG3_Val
                                                STR     R1, [R0, #BCFG3_OFS]
                                ENDIF
                                
AA MACRO ASSEMBLER RSTARTUP                                                                 06/12/08 09:44:47 PAGE     6

                                ENDIF
                        324     
                        325     
                        326     IF (VPBDIV_SETUP != 0)
                                                LDR     R0, =VPBDIV
                                                LDR     R1, =VPBDIV_Val
                                                STR     R1, [R0]
                                ENDIF
                        331     
                        332     
                        333     IF (PLL_SETUP != 0)
00000040 E59F0034       334                     LDR     R0, =PLL_BASE
00000044 E3A010AA       335                     MOV     R1, #0xAA
00000048 E3A02055       336                     MOV     R2, #0x55
                        337     
                        338     
0000004C E3A03024       339                     MOV     R3, #PLLCFG_Val
00000050 E5803004       340                     STR     R3, [R0, #PLLCFG_OFS] 
00000054 E3A03001       341                     MOV     R3, #PLLCON_PLLE
00000058 E5803000       342                     STR     R3, [R0, #PLLCON_OFS]
0000005C E580100C       343                     STR     R1, [R0, #PLLFEED_OFS]
00000060 E580200C       344                     STR     R2, [R0, #PLLFEED_OFS]
                        345     
                        346     
00000064 E5903008       347     PLL_Loop:       LDR     R3, [R0, #PLLSTAT_OFS]
00000068 E2133B01       348                     ANDS    R3, R3, #PLLSTAT_PLOCK
0000006C 0AFFFFFC       349                     BEQ     PLL_Loop
                        350     
                        351     
00000070 E3A03003       352                     MOV     R3, #(PLLCON_PLLE | PLLCON_PLLC)
00000074 E5803000       353                     STR     R3, [R0, #PLLCON_OFS]
00000078 E580100C       354                     STR     R1, [R0, #PLLFEED_OFS]
0000007C E580200C       355                     STR     R2, [R0, #PLLFEED_OFS]
                        356     ENDIF
                        357     
                        358     
                        359     IF (MAM_SETUP != 0)
00000080 E59F0034       360                     LDR     R0, =MAM_BASE
00000084 E3A01004       361                     MOV     R1, #MAMTIM_Val
00000088 E5801004       362                     STR     R1, [R0, #MAMTIM_OFS] 
0000008C E3A01002       363                     MOV     R1, #MAMCR_Val
00000090 E5801000       364                     STR     R1, [R0, #MAMCR_OFS] 
                        365     ENDIF
                        366     
                        367     
                        368     
 E01FC040               369                     MEMMAP  EQU  0xE01FC040   
                        370     
                        371     $if  (REMAP)
                                                LDR     R0, =MEMMAP
                                $if      (EXTMEM_MODE)                
                                                MOV     R1, #3
                                $elseif  (RAM_MODE)                
                                                MOV     R1, #2
                                $else 
                                                MOV     R1, #1
                                $endif                 
                                                STR     R1, [R0]
                                $endif 
                        382     
                        383     
                        384     
00000094 E59F0034       385                     LDR     R0, =Top_Stack
                        386     
                        387     
00000098 E321F0DB       388                     MSR     CPSR_c, #Mode_UND|I_Bit|F_Bit
AA MACRO ASSEMBLER RSTARTUP                                                                 06/12/08 09:44:47 PAGE     7

0000009C E1A0D000       389                     MOV     SP, R0
000000A0 E2400004       390                     SUB     R0, R0, #UND_Stack_Size
                        391     
                        392     
000000A4 E321F0D7       393                     MSR     CPSR_c, #Mode_ABT|I_Bit|F_Bit
000000A8 E1A0D000       394                     MOV     SP, R0
000000AC E2400004       395                     SUB     R0, R0, #ABT_Stack_Size
                        396     
                        397     
000000B0 E321F0D1       398                     MSR     CPSR_c, #Mode_FIQ|I_Bit|F_Bit
000000B4 E1A0D000       399                     MOV     SP, R0
000000B8 E2400004       400                     SUB     R0, R0, #FIQ_Stack_Size
                        401     
                        402     
000000BC E321F0D2       403                     MSR     CPSR_c, #Mode_IRQ|I_Bit|F_Bit
000000C0 E1A0D000       404                     MOV     SP, R0
000000C4 E2400080       405                     SUB     R0, R0, #IRQ_Stack_Size
                        406     
                        407     
000000C8 E321F0D3       408                     MSR     CPSR_c, #Mode_SVC|I_Bit|F_Bit
000000CC E1A0D000       409                     MOV     SP, R0
000000D0 E2400004       410                     SUB     R0, R0, #SVC_Stack_Size
                        411     
                        412     
000000D4 E321F010       413                     MSR     CPSR_c, #Mode_USR
000000D8 E1A0D000       414                     MOV     SP, R0
                        415     
                        416     
000000DC E59F0034       417                     LDR     R0,=?C?INIT
000000E0 E3100001       418                     TST     R0,#1       ; Bit-0 set: INIT is Thumb
000000E4 E3A0E0F0       419                     LDREQ   LR,=exit?A  ; ARM Mode
000000E8 E3A0E0F4       420                     LDRNE   LR,=exit?T  ; Thumb Mode
000000EC E12FFF10       421                     BX      R0
                        422                     ENDP
                        423     
                        424     PUBLIC exit?A
                        425     exit?A          PROC    CODE32
000000F0 EAFFFFFE       426                     B       exit?A
                        427                     ENDP
                        428     
                        429     PUBLIC exit?T
                        430     exit?T          PROC    CODE16
000000F4 E7FE           431     exit:           B       exit?T
                        432                     ENDP
                        433     
                        434     
                        435                     END
AA MACRO ASSEMBLER RSTARTUP                                                                 06/12/08 09:44:47 PAGE     8

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E     ATTRIBUTES

?C?INIT. . . . . .  C  ADDR  -------       EXT
ABT_Stack_Size . .  -- ----  0004H     A   
BCFG0_OFS. . . . .  -- ----  0000H     A   
BCFG0_SETUP. . . .  -- ----  0000H     A   
BCFG0_Val. . . . .  -- ----  FBEFH     A   
BCFG1_OFS. . . . .  -- ----  0004H     A   
BCFG1_SETUP. . . .  -- ----  0000H     A   
BCFG1_Val. . . . .  -- ----  FBEFH     A   
BCFG2_OFS. . . . .  -- ----  0008H     A   
BCFG2_SETUP. . . .  -- ----  0000H     A   
BCFG2_Val. . . . .  -- ----  FBEFH     A   
BCFG3_OFS. . . . .  -- ----  000CH     A   
BCFG3_SETUP. . . .  -- ----  0000H     A   
BCFG3_Val. . . . .  -- ----  FBEFH     A   
CODE_BASE. . . . .  -- ----  0000H     A   
DAbt_Addr. . . . .  C  ADDR  0030H     R   SEG=STARTUPCODE
DAbt_Handler?A . .  C  ADDR  -------       EXT
EMC_BASE . . . . .  -- ----  FFE00000H A   
EMC_SETUP. . . . .  -- ----  0000H     A   
FIQ_Addr . . . . .  C  ADDR  003CH     R   SEG=STARTUPCODE
FIQ_Handler?A. . .  C  ADDR  -------       EXT
FIQ_Stack_Size . .  -- ----  0004H     A   
F_Bit. . . . . . .  -- ----  0040H     A   
IRQ_Addr . . . . .  C  ADDR  0038H     R   SEG=STARTUPCODE
IRQ_Handler?A. . .  C  ADDR  -------       EXT
IRQ_Stack_Size . .  -- ----  0080H     A   
I_Bit. . . . . . .  -- ----  0080H     A   
MAMCR_OFS. . . . .  -- ----  0000H     A   
MAMCR_Val. . . . .  -- ----  0002H     A   
MAMTIM_OFS . . . .  -- ----  0004H     A   
MAMTIM_Val . . . .  -- ----  0004H     A   
MAM_BASE . . . . .  -- ----  E01FC000H A   
MAM_SETUP. . . . .  -- ----  0001H     A   
MEMMAP . . . . . .  -- ----  E01FC040H A   
Mode_ABT . . . . .  -- ----  0017H     A   
Mode_FIQ . . . . .  -- ----  0011H     A   
Mode_IRQ . . . . .  -- ----  0012H     A   
Mode_SVC . . . . .  -- ----  0013H     A   
Mode_SYS . . . . .  -- ----  001FH     A   
Mode_UND . . . . .  -- ----  001BH     A   
Mode_USR . . . . .  -- ----  0010H     A   
PAbt_Addr. . . . .  C  ADDR  002CH     R   SEG=STARTUPCODE
PAbt_Handler?A . .  C  ADDR  -------       EXT
PINSEL2. . . . . .  -- ----  E002C014H A   
PINSEL2_Val. . . .  -- ----  0E6149E4H A   
PLLCFG_MSEL. . . .  -- ----  001FH     A   
PLLCFG_OFS . . . .  -- ----  0004H     A   
PLLCFG_PSEL. . . .  -- ----  0060H     A   
PLLCFG_Val . . . .  -- ----  0024H     A   
PLLCON_OFS . . . .  -- ----  0000H     A   
PLLCON_PLLC. . . .  -- ----  0002H     A   
PLLCON_PLLE. . . .  -- ----  0001H     A   
PLLFEED_OFS. . . .  -- ----  000CH     A   
PLLSTAT_OFS. . . .  -- ----  0008H     A   
PLLSTAT_PLOCK. . .  -- ----  0400H     A   
PLL_BASE . . . . .  -- ----  E01FC080H A   
PLL_Loop . . . . .  C  ADDR  0064H     R   SEG=STARTUPCODE
PLL_SETUP. . . . .  -- ----  0001H     A   
Reset_Addr . . . .  C  ADDR  0020H     R   SEG=STARTUPCODE
Reset_Handler. . .  C  ADDR  0040H     R   SEG=STARTUPCODE
AA MACRO ASSEMBLER RSTARTUP                                                                 06/12/08 09:44:47 PAGE     9

STACK. . . . . . .  D  SEG   0490H         REL=UNIT, ALN=BYTE
STARTUPCODE. . . .  C  SEG   00F6H         REL=ABS, ALN=BYTE
SVC_Stack_Size . .  -- ----  0004H     A   
SWI_Addr . . . . .  C  ADDR  0028H     R   SEG=STARTUPCODE
SWI_Handler?A. . .  C  ADDR  -------       EXT
Top_Stack. . . . .  D  ADDR  0490H     R   SEG=STACK
UND_Stack_Size . .  -- ----  0004H     A   
USR_Stack_Size . .  -- ----  0400H     A   
Undef_Addr . . . .  C  ADDR  0024H     R   SEG=STARTUPCODE
Undef_Handler?A. .  C  ADDR  -------       EXT
VPBDIV . . . . . .  -- ----  E01FC100H A   
VPBDIV_SETUP . . .  -- ----  0000H     A   
VPBDIV_Val . . . .  -- ----  0000H     A   
Vectors. . . . . .  C  ADDR  0000H     R   SEG=STARTUPCODE
__startup. . . . .  C  ADDR  0000H     R   SEG=STARTUPCODE
exit . . . . . . .  C  ADDR  00F4H     R   SEG=STARTUPCODE
exit?A . . . . . .  C  ADDR  00F0H     R   SEG=STARTUPCODE
exit?T . . . . . .  C  ADDR  00F4H     R   SEG=STARTUPCODE

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S).

⌨️ 快捷键说明

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