]> git.donarmstrong.com Git - qmk_firmware.git/blob - tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC13XX/TOOLCHAIN_ARM_STD/startup_LPC13xx.s
Squashed 'tmk_core/' changes from 7967731..b9e0ea0
[qmk_firmware.git] / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_NXP / TARGET_LPC13XX / TOOLCHAIN_ARM_STD / startup_LPC13xx.s
1 ;/*****************************************************************************
2 ; * @file:    startup_LPC13xx.s
3 ; * @purpose: CMSIS Cortex-M3 Core Device Startup File 
4 ; *           for the NXP LPC13xx Device Series 
5 ; * @version: V1.02, modified for mbed
6 ; * @date:    27. July 2009, modified 3rd Aug 2009
7 ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------
8 ; *
9 ; * Copyright (C) 2009 ARM Limited. All rights reserved.
10 ; * ARM Limited (ARM) is supplying this software for use with Cortex-M3 
11 ; * processor based microcontrollers.  This file can be freely distributed 
12 ; * within development tools that are supporting such ARM based processors. 
13 ; *
14 ; * THIS SOFTWARE IS PROVIDED "AS IS".  NO WARRANTIES, WHETHER EXPRESS, IMPLIED
15 ; * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
16 ; * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
17 ; * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
18 ; * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
19 ; *
20 ; *****************************************************************************/
21
22 __initial_sp        EQU     0x10002000  ; Top of RAM from LPC1347
23
24                 PRESERVE8
25                 THUMB
26
27 ; Vector Table Mapped to Address 0 at Reset
28
29                 AREA    RESET, DATA, READONLY
30                 EXPORT  __Vectors
31
32 __Vectors       DCD     __initial_sp              ; Top of Stack
33                 DCD     Reset_Handler             ; Reset Handler
34                 DCD     NMI_Handler               ; NMI Handler
35                 DCD     HardFault_Handler         ; Hard Fault Handler
36                 DCD     MemManage_Handler         ; MPU Fault Handler
37                 DCD     BusFault_Handler          ; Bus Fault Handler
38                 DCD     UsageFault_Handler        ; Usage Fault Handler
39                 DCD     0                         ; Reserved
40                 DCD     0                         ; Reserved
41                 DCD     0                         ; Reserved
42                 DCD     0                         ; Reserved
43                 DCD     SVC_Handler               ; SVCall Handler
44                 DCD     DebugMon_Handler          ; Debug Monitor Handler
45                 DCD     0                         ; Reserved
46                 DCD     PendSV_Handler            ; PendSV Handler
47                 DCD     SysTick_Handler           ; SysTick Handler
48
49                 ; External Interrupts
50
51                 DCD    PIN_INT0_Handler      ; All GPIO pin can be routed to PIN_INTx
52                 DCD    PIN_INT1_Handler
53                 DCD    PIN_INT2_Handler
54                 DCD    PIN_INT3_Handler
55                 DCD    PIN_INT4_Handler
56                 DCD    PIN_INT5_Handler
57                 DCD    PIN_INT6_Handler
58                 DCD    PIN_INT7_Handler
59                 DCD    GINT0_Handler
60                 DCD    GINT1_Handler         ; PIO0 (0:7) 
61                 DCD    0
62                 DCD    0
63                 DCD    OSTIMER_Handler
64                 DCD    0
65                 DCD    SSP1_Handler          ; SSP1 
66                 DCD    I2C_Handler           ; I2C 
67                 DCD    CT16B0_Handler        ; 16-bit Timer0 
68                 DCD    CT16B1_Handler        ; 16-bit Timer1 
69                 DCD    CT32B0_Handler        ; 32-bit Timer0 
70                 DCD    CT32B1_Handler        ; 32-bit Timer1 
71                 DCD    SSP0_Handler          ; SSP0 
72                 DCD    USART_Handler         ; USART 
73                 DCD    USB_Handler           ; USB IRQ 
74                 DCD    USB_FIQHandler        ; USB FIQ 
75                 DCD    ADC_Handler           ; A/D Converter 
76                 DCD    WDT_Handler           ; Watchdog timer 
77                 DCD    BOD_Handler           ; Brown Out Detect 
78                 DCD    FMC_Handler           ; IP2111 Flash Memory Controller 
79                 DCD    OSCFAIL_Handler       ; OSC FAIL 
80                 DCD    PVTCIRCUIT_Handler    ; PVT CIRCUIT 
81                 DCD    USBWakeup_Handler     ; USB wake up 
82                 DCD    0
83
84                 IF      :LNOT::DEF:NO_CRP
85                 AREA    |.ARM.__at_0x02FC|, CODE, READONLY
86 CRP_Key         DCD     0xFFFFFFFF
87                 ENDIF
88
89
90                 AREA    |.text|, CODE, READONLY
91
92
93 ; Reset Handler
94
95 Reset_Handler   PROC
96                 EXPORT  Reset_Handler             [WEAK]
97                 IMPORT  SystemInit
98                 IMPORT  __main
99                 LDR     R0, =SystemInit
100                 BLX     R0
101                 LDR     R0, =__main
102                 BX      R0
103                 ENDP
104
105
106 ; Dummy Exception Handlers (infinite loops which can be modified)                
107
108 NMI_Handler     PROC
109                 EXPORT  NMI_Handler               [WEAK]
110                 B       .
111                 ENDP
112 HardFault_Handler\
113                 PROC
114                 EXPORT  HardFault_Handler         [WEAK]
115                 B       .
116                 ENDP
117 MemManage_Handler\
118                 PROC
119                 EXPORT  MemManage_Handler         [WEAK]
120                 B       .
121                 ENDP
122 BusFault_Handler\
123                 PROC
124                 EXPORT  BusFault_Handler          [WEAK]
125                 B       .
126                 ENDP
127 UsageFault_Handler\
128                 PROC
129                 EXPORT  UsageFault_Handler        [WEAK]
130                 B       .
131                 ENDP
132 SVC_Handler     PROC
133                 EXPORT  SVC_Handler               [WEAK]
134                 B       .
135                 ENDP
136 DebugMon_Handler\
137                 PROC
138                 EXPORT  DebugMon_Handler          [WEAK]
139                 B       .
140                 ENDP
141 PendSV_Handler  PROC
142                 EXPORT  PendSV_Handler            [WEAK]
143                 B       .
144                 ENDP
145 SysTick_Handler PROC
146                 EXPORT  SysTick_Handler           [WEAK]
147                 B       .
148                 ENDP
149
150 Default_Handler PROC
151
152                 EXPORT  PIN_INT0_Handler          [WEAK]
153                 EXPORT  PIN_INT1_Handler          [WEAK]
154                 EXPORT  PIN_INT2_Handler          [WEAK]
155                 EXPORT  PIN_INT3_Handler          [WEAK]
156                 EXPORT  PIN_INT4_Handler          [WEAK]
157                 EXPORT  PIN_INT5_Handler          [WEAK]
158                 EXPORT  PIN_INT6_Handler          [WEAK]
159                 EXPORT  PIN_INT7_Handler          [WEAK]
160                 EXPORT  GINT0_Handler             [WEAK]
161                 EXPORT  GINT1_Handler             [WEAK]
162                 EXPORT  OSTIMER_Handler           [WEAK]
163                 EXPORT  SSP1_Handler              [WEAK]
164                 EXPORT  I2C_Handler               [WEAK]
165                 EXPORT  CT16B0_Handler            [WEAK]
166                 EXPORT  CT16B1_Handler            [WEAK]
167                 EXPORT  CT32B0_Handler            [WEAK]
168                 EXPORT  CT32B1_Handler            [WEAK]
169                 EXPORT  SSP0_Handler              [WEAK]
170                 EXPORT  USART_Handler             [WEAK]
171                 EXPORT  USB_Handler               [WEAK]
172                 EXPORT  USB_FIQHandler            [WEAK]
173                 EXPORT  ADC_Handler               [WEAK]
174                 EXPORT  WDT_Handler               [WEAK]
175                 EXPORT  BOD_Handler               [WEAK]
176                 EXPORT  FMC_Handler               [WEAK]
177                 EXPORT  OSCFAIL_Handler           [WEAK]
178                 EXPORT  PVTCIRCUIT_Handler        [WEAK]
179                 EXPORT  USBWakeup_Handler         [WEAK]
180   
181 PIN_INT0_Handler
182 PIN_INT1_Handler
183 PIN_INT2_Handler
184 PIN_INT3_Handler
185 PIN_INT4_Handler
186 PIN_INT5_Handler
187 PIN_INT6_Handler
188 PIN_INT7_Handler
189 GINT0_Handler
190 GINT1_Handler
191 OSTIMER_Handler
192 SSP1_Handler
193 I2C_Handler
194 CT16B0_Handler
195 CT16B1_Handler
196 CT32B0_Handler
197 CT32B1_Handler
198 SSP0_Handler
199 USART_Handler
200 USB_Handler
201 USB_FIQHandler
202 ADC_Handler
203 WDT_Handler
204 BOD_Handler
205 FMC_Handler
206 OSCFAIL_Handler
207 PVTCIRCUIT_Handler
208 USBWakeup_Handler
209
210                 B       .
211
212                 ENDP
213                 
214                 ALIGN
215                 END