]> git.gir.st - tmk_keyboard.git/blob - tmk_core/tool/mbed/mbed-sdk/libraries/mbed/targets/cmsis/TARGET_NXP/TARGET_LPC176X/TOOLCHAIN_ARM_STD/startup_LPC17xx.s
Merge commit '1fe4406f374291ab2e86e95a97341fd9c475fcb8'
[tmk_keyboard.git] / tmk_core / tool / mbed / mbed-sdk / libraries / mbed / targets / cmsis / TARGET_NXP / TARGET_LPC176X / TOOLCHAIN_ARM_STD / startup_LPC17xx.s
1 ;/*****************************************************************************
2 ; * @file: startup_LPC17xx.s
3 ; * @purpose: CMSIS Cortex-M3 Core Device Startup File
4 ; * for the NXP LPC17xx 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 0x10008000 ; Top of RAM from LPC1768
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 DCD WDT_IRQHandler ; 16: Watchdog Timer
51 DCD TIMER0_IRQHandler ; 17: Timer0
52 DCD TIMER1_IRQHandler ; 18: Timer1
53 DCD TIMER2_IRQHandler ; 19: Timer2
54 DCD TIMER3_IRQHandler ; 20: Timer3
55 DCD UART0_IRQHandler ; 21: UART0
56 DCD UART1_IRQHandler ; 22: UART1
57 DCD UART2_IRQHandler ; 23: UART2
58 DCD UART3_IRQHandler ; 24: UART3
59 DCD PWM1_IRQHandler ; 25: PWM1
60 DCD I2C0_IRQHandler ; 26: I2C0
61 DCD I2C1_IRQHandler ; 27: I2C1
62 DCD I2C2_IRQHandler ; 28: I2C2
63 DCD SPI_IRQHandler ; 29: SPI
64 DCD SSP0_IRQHandler ; 30: SSP0
65 DCD SSP1_IRQHandler ; 31: SSP1
66 DCD PLL0_IRQHandler ; 32: PLL0 Lock (Main PLL)
67 DCD RTC_IRQHandler ; 33: Real Time Clock
68 DCD EINT0_IRQHandler ; 34: External Interrupt 0
69 DCD EINT1_IRQHandler ; 35: External Interrupt 1
70 DCD EINT2_IRQHandler ; 36: External Interrupt 2
71 DCD EINT3_IRQHandler ; 37: External Interrupt 3
72 DCD ADC_IRQHandler ; 38: A/D Converter
73 DCD BOD_IRQHandler ; 39: Brown-Out Detect
74 DCD USB_IRQHandler ; 40: USB
75 DCD CAN_IRQHandler ; 41: CAN
76 DCD DMA_IRQHandler ; 42: General Purpose DMA
77 DCD I2S_IRQHandler ; 43: I2S
78 DCD ENET_IRQHandler ; 44: Ethernet
79 DCD RIT_IRQHandler ; 45: Repetitive Interrupt Timer
80 DCD MCPWM_IRQHandler ; 46: Motor Control PWM
81 DCD QEI_IRQHandler ; 47: Quadrature Encoder Interface
82 DCD PLL1_IRQHandler ; 48: PLL1 Lock (USB PLL)
83
84
85 IF :LNOT::DEF:NO_CRP
86 AREA |.ARM.__at_0x02FC|, CODE, READONLY
87 CRP_Key DCD 0xFFFFFFFF
88 ENDIF
89
90
91 AREA |.text|, CODE, READONLY
92
93
94 ; Reset Handler
95
96 Reset_Handler PROC
97 EXPORT Reset_Handler [WEAK]
98 IMPORT SystemInit
99 IMPORT __main
100 LDR R0, =SystemInit
101 BLX R0
102 LDR R0, =__main
103 BX R0
104 ENDP
105
106
107 ; Dummy Exception Handlers (infinite loops which can be modified)
108
109 NMI_Handler PROC
110 EXPORT NMI_Handler [WEAK]
111 B .
112 ENDP
113 HardFault_Handler\
114 PROC
115 EXPORT HardFault_Handler [WEAK]
116 B .
117 ENDP
118 MemManage_Handler\
119 PROC
120 EXPORT MemManage_Handler [WEAK]
121 B .
122 ENDP
123 BusFault_Handler\
124 PROC
125 EXPORT BusFault_Handler [WEAK]
126 B .
127 ENDP
128 UsageFault_Handler\
129 PROC
130 EXPORT UsageFault_Handler [WEAK]
131 B .
132 ENDP
133 SVC_Handler PROC
134 EXPORT SVC_Handler [WEAK]
135 B .
136 ENDP
137 DebugMon_Handler\
138 PROC
139 EXPORT DebugMon_Handler [WEAK]
140 B .
141 ENDP
142 PendSV_Handler PROC
143 EXPORT PendSV_Handler [WEAK]
144 B .
145 ENDP
146 SysTick_Handler PROC
147 EXPORT SysTick_Handler [WEAK]
148 B .
149 ENDP
150
151 Default_Handler PROC
152
153 EXPORT WDT_IRQHandler [WEAK]
154 EXPORT TIMER0_IRQHandler [WEAK]
155 EXPORT TIMER1_IRQHandler [WEAK]
156 EXPORT TIMER2_IRQHandler [WEAK]
157 EXPORT TIMER3_IRQHandler [WEAK]
158 EXPORT UART0_IRQHandler [WEAK]
159 EXPORT UART1_IRQHandler [WEAK]
160 EXPORT UART2_IRQHandler [WEAK]
161 EXPORT UART3_IRQHandler [WEAK]
162 EXPORT PWM1_IRQHandler [WEAK]
163 EXPORT I2C0_IRQHandler [WEAK]
164 EXPORT I2C1_IRQHandler [WEAK]
165 EXPORT I2C2_IRQHandler [WEAK]
166 EXPORT SPI_IRQHandler [WEAK]
167 EXPORT SSP0_IRQHandler [WEAK]
168 EXPORT SSP1_IRQHandler [WEAK]
169 EXPORT PLL0_IRQHandler [WEAK]
170 EXPORT RTC_IRQHandler [WEAK]
171 EXPORT EINT0_IRQHandler [WEAK]
172 EXPORT EINT1_IRQHandler [WEAK]
173 EXPORT EINT2_IRQHandler [WEAK]
174 EXPORT EINT3_IRQHandler [WEAK]
175 EXPORT ADC_IRQHandler [WEAK]
176 EXPORT BOD_IRQHandler [WEAK]
177 EXPORT USB_IRQHandler [WEAK]
178 EXPORT CAN_IRQHandler [WEAK]
179 EXPORT DMA_IRQHandler [WEAK]
180 EXPORT I2S_IRQHandler [WEAK]
181 EXPORT ENET_IRQHandler [WEAK]
182 EXPORT RIT_IRQHandler [WEAK]
183 EXPORT MCPWM_IRQHandler [WEAK]
184 EXPORT QEI_IRQHandler [WEAK]
185 EXPORT PLL1_IRQHandler [WEAK]
186
187 WDT_IRQHandler
188 TIMER0_IRQHandler
189 TIMER1_IRQHandler
190 TIMER2_IRQHandler
191 TIMER3_IRQHandler
192 UART0_IRQHandler
193 UART1_IRQHandler
194 UART2_IRQHandler
195 UART3_IRQHandler
196 PWM1_IRQHandler
197 I2C0_IRQHandler
198 I2C1_IRQHandler
199 I2C2_IRQHandler
200 SPI_IRQHandler
201 SSP0_IRQHandler
202 SSP1_IRQHandler
203 PLL0_IRQHandler
204 RTC_IRQHandler
205 EINT0_IRQHandler
206 EINT1_IRQHandler
207 EINT2_IRQHandler
208 EINT3_IRQHandler
209 ADC_IRQHandler
210 BOD_IRQHandler
211 USB_IRQHandler
212 CAN_IRQHandler
213 DMA_IRQHandler
214 I2S_IRQHandler
215 ENET_IRQHandler
216 RIT_IRQHandler
217 MCPWM_IRQHandler
218 QEI_IRQHandler
219 PLL1_IRQHandler
220
221 B .
222
223 ENDP
224
225 ALIGN
226 END
Imprint / Impressum