comparison libs/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x/startup/iar/startup_stm32f10x_cl.s @ 0:c59513fd84fb

Initial commit of STM32 test code.
author Daniel O'Connor <darius@dons.net.au>
date Mon, 03 Oct 2011 21:19:15 +1030
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:c59513fd84fb
1 ;******************** (C) COPYRIGHT 2011 STMicroelectronics *******************
2 ;* File Name : startup_stm32f10x_cl.s
3 ;* Author : MCD Application Team
4 ;* Version : V3.5.0
5 ;* Date : 11-March-2011
6 ;* Description : STM32F10x Connectivity line devices vector table for
7 ;* EWARM toolchain.
8 ;* This module performs:
9 ;* - Set the initial SP
10 ;* - Configure the clock system
11 ;* - Set the initial PC == __iar_program_start,
12 ;* - Set the vector table entries with the exceptions ISR
13 ;* address.
14 ;* After Reset the Cortex-M3 processor is in Thread mode,
15 ;* priority is Privileged, and the Stack is set to Main.
16 ;********************************************************************************
17 ;* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
18 ;* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
19 ;* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
20 ;* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
21 ;* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
22 ;* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
23 ;*******************************************************************************
24 ;
25 ;
26 ; The modules in this file are included in the libraries, and may be replaced
27 ; by any user-defined modules that define the PUBLIC symbol _program_start or
28 ; a user defined start symbol.
29 ; To override the cstartup defined in the library, simply add your modified
30 ; version to the workbench project.
31 ;
32 ; The vector table is normally located at address 0.
33 ; When debugging in RAM, it can be located in RAM, aligned to at least 2^6.
34 ; The name "__vector_table" has special meaning for C-SPY:
35 ; it is where the SP start value is found, and the NVIC vector
36 ; table register (VTOR) is initialized to this address if != 0.
37 ;
38 ; Cortex-M version
39 ;
40
41 MODULE ?cstartup
42
43 ;; Forward declaration of sections.
44 SECTION CSTACK:DATA:NOROOT(3)
45
46 SECTION .intvec:CODE:NOROOT(2)
47
48 EXTERN __iar_program_start
49 EXTERN SystemInit
50 PUBLIC __vector_table
51
52 DATA
53 __vector_table
54 DCD sfe(CSTACK)
55 DCD Reset_Handler ; Reset Handler
56 DCD NMI_Handler ; NMI Handler
57 DCD HardFault_Handler ; Hard Fault Handler
58 DCD MemManage_Handler ; MPU Fault Handler
59 DCD BusFault_Handler ; Bus Fault Handler
60 DCD UsageFault_Handler ; Usage Fault Handler
61 DCD 0 ; Reserved
62 DCD 0 ; Reserved
63 DCD 0 ; Reserved
64 DCD 0 ; Reserved
65 DCD SVC_Handler ; SVCall Handler
66 DCD DebugMon_Handler ; Debug Monitor Handler
67 DCD 0 ; Reserved
68 DCD PendSV_Handler ; PendSV Handler
69 DCD SysTick_Handler ; SysTick Handler
70
71 ; External Interrupts
72 DCD WWDG_IRQHandler ; Window Watchdog
73 DCD PVD_IRQHandler ; PVD through EXTI Line detect
74 DCD TAMPER_IRQHandler ; Tamper
75 DCD RTC_IRQHandler ; RTC
76 DCD FLASH_IRQHandler ; Flash
77 DCD RCC_IRQHandler ; RCC
78 DCD EXTI0_IRQHandler ; EXTI Line 0
79 DCD EXTI1_IRQHandler ; EXTI Line 1
80 DCD EXTI2_IRQHandler ; EXTI Line 2
81 DCD EXTI3_IRQHandler ; EXTI Line 3
82 DCD EXTI4_IRQHandler ; EXTI Line 4
83 DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1
84 DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2
85 DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3
86 DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4
87 DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5
88 DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6
89 DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7
90 DCD ADC1_2_IRQHandler ; ADC1 and ADC2
91 DCD CAN1_TX_IRQHandler ; CAN1 TX
92 DCD CAN1_RX0_IRQHandler ; CAN1 RX0
93 DCD CAN1_RX1_IRQHandler ; CAN1 RX1
94 DCD CAN1_SCE_IRQHandler ; CAN1 SCE
95 DCD EXTI9_5_IRQHandler ; EXTI Line 9..5
96 DCD TIM1_BRK_IRQHandler ; TIM1 Break
97 DCD TIM1_UP_IRQHandler ; TIM1 Update
98 DCD TIM1_TRG_COM_IRQHandler ; TIM1 Trigger and Commutation
99 DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare
100 DCD TIM2_IRQHandler ; TIM2
101 DCD TIM3_IRQHandler ; TIM3
102 DCD TIM4_IRQHandler ; TIM4
103 DCD I2C1_EV_IRQHandler ; I2C1 Event
104 DCD I2C1_ER_IRQHandler ; I2C1 Error
105 DCD I2C2_EV_IRQHandler ; I2C2 Event
106 DCD I2C2_ER_IRQHandler ; I2C1 Error
107 DCD SPI1_IRQHandler ; SPI1
108 DCD SPI2_IRQHandler ; SPI2
109 DCD USART1_IRQHandler ; USART1
110 DCD USART2_IRQHandler ; USART2
111 DCD USART3_IRQHandler ; USART3
112 DCD EXTI15_10_IRQHandler ; EXTI Line 15..10
113 DCD RTCAlarm_IRQHandler ; RTC alarm through EXTI line
114 DCD OTG_FS_WKUP_IRQHandler ; USB OTG FS Wakeup through EXTI line
115 DCD 0 ; Reserved
116 DCD 0 ; Reserved
117 DCD 0 ; Reserved
118 DCD 0 ; Reserved
119 DCD 0 ; Reserved
120 DCD 0 ; Reserved
121 DCD 0 ; Reserved
122 DCD TIM5_IRQHandler ; TIM5
123 DCD SPI3_IRQHandler ; SPI3
124 DCD UART4_IRQHandler ; UART4
125 DCD UART5_IRQHandler ; UART5
126 DCD TIM6_IRQHandler ; TIM6
127 DCD TIM7_IRQHandler ; TIM7
128 DCD DMA2_Channel1_IRQHandler ; DMA2 Channel1
129 DCD DMA2_Channel2_IRQHandler ; DMA2 Channel2
130 DCD DMA2_Channel3_IRQHandler ; DMA2 Channel3
131 DCD DMA2_Channel4_IRQHandler ; DMA2 Channel4
132 DCD DMA2_Channel5_IRQHandler ; DMA2 Channel5
133 DCD ETH_IRQHandler ; Ethernet
134 DCD ETH_WKUP_IRQHandler ; Ethernet Wakeup through EXTI line
135 DCD CAN2_TX_IRQHandler ; CAN2 TX
136 DCD CAN2_RX0_IRQHandler ; CAN2 RX0
137 DCD CAN2_RX1_IRQHandler ; CAN2 RX1
138 DCD CAN2_SCE_IRQHandler ; CAN2 SCE
139 DCD OTG_FS_IRQHandler ; USB OTG FS
140
141 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
142 ;;
143 ;; Default interrupt handlers.
144 ;;
145 THUMB
146
147 PUBWEAK Reset_Handler
148 SECTION .text:CODE:REORDER(2)
149 Reset_Handler
150 LDR R0, =SystemInit
151 BLX R0
152 LDR R0, =__iar_program_start
153 BX R0
154
155 PUBWEAK NMI_Handler
156 SECTION .text:CODE:REORDER(1)
157 NMI_Handler
158 B NMI_Handler
159
160 PUBWEAK HardFault_Handler
161 SECTION .text:CODE:REORDER(1)
162 HardFault_Handler
163 B HardFault_Handler
164
165 PUBWEAK MemManage_Handler
166 SECTION .text:CODE:REORDER(1)
167 MemManage_Handler
168 B MemManage_Handler
169
170 PUBWEAK BusFault_Handler
171 SECTION .text:CODE:REORDER(1)
172 BusFault_Handler
173 B BusFault_Handler
174
175 PUBWEAK UsageFault_Handler
176 SECTION .text:CODE:REORDER(1)
177 UsageFault_Handler
178 B UsageFault_Handler
179
180 PUBWEAK SVC_Handler
181 SECTION .text:CODE:REORDER(1)
182 SVC_Handler
183 B SVC_Handler
184
185 PUBWEAK DebugMon_Handler
186 SECTION .text:CODE:REORDER(1)
187 DebugMon_Handler
188 B DebugMon_Handler
189
190 PUBWEAK PendSV_Handler
191 SECTION .text:CODE:REORDER(1)
192 PendSV_Handler
193 B PendSV_Handler
194
195 PUBWEAK SysTick_Handler
196 SECTION .text:CODE:REORDER(1)
197 SysTick_Handler
198 B SysTick_Handler
199
200 PUBWEAK WWDG_IRQHandler
201 SECTION .text:CODE:REORDER(1)
202 WWDG_IRQHandler
203 B WWDG_IRQHandler
204
205 PUBWEAK PVD_IRQHandler
206 SECTION .text:CODE:REORDER(1)
207 PVD_IRQHandler
208 B PVD_IRQHandler
209
210 PUBWEAK TAMPER_IRQHandler
211 SECTION .text:CODE:REORDER(1)
212 TAMPER_IRQHandler
213 B TAMPER_IRQHandler
214
215 PUBWEAK RTC_IRQHandler
216 SECTION .text:CODE:REORDER(1)
217 RTC_IRQHandler
218 B RTC_IRQHandler
219
220 PUBWEAK FLASH_IRQHandler
221 SECTION .text:CODE:REORDER(1)
222 FLASH_IRQHandler
223 B FLASH_IRQHandler
224
225 PUBWEAK RCC_IRQHandler
226 SECTION .text:CODE:REORDER(1)
227 RCC_IRQHandler
228 B RCC_IRQHandler
229
230 PUBWEAK EXTI0_IRQHandler
231 SECTION .text:CODE:REORDER(1)
232 EXTI0_IRQHandler
233 B EXTI0_IRQHandler
234
235 PUBWEAK EXTI1_IRQHandler
236 SECTION .text:CODE:REORDER(1)
237 EXTI1_IRQHandler
238 B EXTI1_IRQHandler
239
240 PUBWEAK EXTI2_IRQHandler
241 SECTION .text:CODE:REORDER(1)
242 EXTI2_IRQHandler
243 B EXTI2_IRQHandler
244
245 PUBWEAK EXTI3_IRQHandler
246 SECTION .text:CODE:REORDER(1)
247 EXTI3_IRQHandler
248 B EXTI3_IRQHandler
249
250
251 PUBWEAK EXTI4_IRQHandler
252 SECTION .text:CODE:REORDER(1)
253 EXTI4_IRQHandler
254 B EXTI4_IRQHandler
255
256 PUBWEAK DMA1_Channel1_IRQHandler
257 SECTION .text:CODE:REORDER(1)
258 DMA1_Channel1_IRQHandler
259 B DMA1_Channel1_IRQHandler
260
261 PUBWEAK DMA1_Channel2_IRQHandler
262 SECTION .text:CODE:REORDER(1)
263 DMA1_Channel2_IRQHandler
264 B DMA1_Channel2_IRQHandler
265
266 PUBWEAK DMA1_Channel3_IRQHandler
267 SECTION .text:CODE:REORDER(1)
268 DMA1_Channel3_IRQHandler
269 B DMA1_Channel3_IRQHandler
270
271 PUBWEAK DMA1_Channel4_IRQHandler
272 SECTION .text:CODE:REORDER(1)
273 DMA1_Channel4_IRQHandler
274 B DMA1_Channel4_IRQHandler
275
276 PUBWEAK DMA1_Channel5_IRQHandler
277 SECTION .text:CODE:REORDER(1)
278 DMA1_Channel5_IRQHandler
279 B DMA1_Channel5_IRQHandler
280
281 PUBWEAK DMA1_Channel6_IRQHandler
282 SECTION .text:CODE:REORDER(1)
283 DMA1_Channel6_IRQHandler
284 B DMA1_Channel6_IRQHandler
285
286 PUBWEAK DMA1_Channel7_IRQHandler
287 SECTION .text:CODE:REORDER(1)
288 DMA1_Channel7_IRQHandler
289 B DMA1_Channel7_IRQHandler
290
291 PUBWEAK ADC1_2_IRQHandler
292 SECTION .text:CODE:REORDER(1)
293 ADC1_2_IRQHandler
294 B ADC1_2_IRQHandler
295
296 PUBWEAK CAN1_TX_IRQHandler
297 SECTION .text:CODE:REORDER(1)
298 CAN1_TX_IRQHandler
299 B CAN1_TX_IRQHandler
300
301 PUBWEAK CAN1_RX0_IRQHandler
302 SECTION .text:CODE:REORDER(1)
303 CAN1_RX0_IRQHandler
304 B CAN1_RX0_IRQHandler
305
306 PUBWEAK CAN1_RX1_IRQHandler
307 SECTION .text:CODE:REORDER(1)
308 CAN1_RX1_IRQHandler
309 B CAN1_RX1_IRQHandler
310
311 PUBWEAK CAN1_SCE_IRQHandler
312 SECTION .text:CODE:REORDER(1)
313 CAN1_SCE_IRQHandler
314 B CAN1_SCE_IRQHandler
315
316 PUBWEAK EXTI9_5_IRQHandler
317 SECTION .text:CODE:REORDER(1)
318 EXTI9_5_IRQHandler
319 B EXTI9_5_IRQHandler
320
321 PUBWEAK TIM1_BRK_IRQHandler
322 SECTION .text:CODE:REORDER(1)
323 TIM1_BRK_IRQHandler
324 B TIM1_BRK_IRQHandler
325
326 PUBWEAK TIM1_UP_IRQHandler
327 SECTION .text:CODE:REORDER(1)
328 TIM1_UP_IRQHandler
329 B TIM1_UP_IRQHandler
330
331 PUBWEAK TIM1_TRG_COM_IRQHandler
332 SECTION .text:CODE:REORDER(1)
333 TIM1_TRG_COM_IRQHandler
334 B TIM1_TRG_COM_IRQHandler
335
336 PUBWEAK TIM1_CC_IRQHandler
337 SECTION .text:CODE:REORDER(1)
338 TIM1_CC_IRQHandler
339 B TIM1_CC_IRQHandler
340
341 PUBWEAK TIM2_IRQHandler
342 SECTION .text:CODE:REORDER(1)
343 TIM2_IRQHandler
344 B TIM2_IRQHandler
345
346 PUBWEAK TIM3_IRQHandler
347 SECTION .text:CODE:REORDER(1)
348 TIM3_IRQHandler
349 B TIM3_IRQHandler
350
351 PUBWEAK TIM4_IRQHandler
352 SECTION .text:CODE:REORDER(1)
353 TIM4_IRQHandler
354 B TIM4_IRQHandler
355
356 PUBWEAK I2C1_EV_IRQHandler
357 SECTION .text:CODE:REORDER(1)
358 I2C1_EV_IRQHandler
359 B I2C1_EV_IRQHandler
360
361 PUBWEAK I2C1_ER_IRQHandler
362 SECTION .text:CODE:REORDER(1)
363 I2C1_ER_IRQHandler
364 B I2C1_ER_IRQHandler
365
366 PUBWEAK I2C2_EV_IRQHandler
367 SECTION .text:CODE:REORDER(1)
368 I2C2_EV_IRQHandler
369 B I2C2_EV_IRQHandler
370
371 PUBWEAK I2C2_ER_IRQHandler
372 SECTION .text:CODE:REORDER(1)
373 I2C2_ER_IRQHandler
374 B I2C2_ER_IRQHandler
375
376 PUBWEAK SPI1_IRQHandler
377 SECTION .text:CODE:REORDER(1)
378 SPI1_IRQHandler
379 B SPI1_IRQHandler
380
381 PUBWEAK SPI2_IRQHandler
382 SECTION .text:CODE:REORDER(1)
383 SPI2_IRQHandler
384 B SPI2_IRQHandler
385
386 PUBWEAK USART1_IRQHandler
387 SECTION .text:CODE:REORDER(1)
388 USART1_IRQHandler
389 B USART1_IRQHandler
390
391 PUBWEAK USART2_IRQHandler
392 SECTION .text:CODE:REORDER(1)
393 USART2_IRQHandler
394 B USART2_IRQHandler
395
396 PUBWEAK USART3_IRQHandler
397 SECTION .text:CODE:REORDER(1)
398 USART3_IRQHandler
399 B USART3_IRQHandler
400
401 PUBWEAK EXTI15_10_IRQHandler
402 SECTION .text:CODE:REORDER(1)
403 EXTI15_10_IRQHandler
404 B EXTI15_10_IRQHandler
405
406 PUBWEAK RTCAlarm_IRQHandler
407 SECTION .text:CODE:REORDER(1)
408 RTCAlarm_IRQHandler
409 B RTCAlarm_IRQHandler
410
411 PUBWEAK OTG_FS_WKUP_IRQHandler
412 SECTION .text:CODE:REORDER(1)
413 OTG_FS_WKUP_IRQHandler
414 B OTG_FS_WKUP_IRQHandler
415
416 PUBWEAK TIM5_IRQHandler
417 SECTION .text:CODE:REORDER(1)
418 TIM5_IRQHandler
419 B TIM5_IRQHandler
420
421 PUBWEAK SPI3_IRQHandler
422 SECTION .text:CODE:REORDER(1)
423 SPI3_IRQHandler
424 B SPI3_IRQHandler
425
426 PUBWEAK UART4_IRQHandler
427 SECTION .text:CODE:REORDER(1)
428 UART4_IRQHandler
429 B UART4_IRQHandler
430
431 PUBWEAK UART5_IRQHandler
432 SECTION .text:CODE:REORDER(1)
433 UART5_IRQHandler
434 B UART5_IRQHandler
435
436 PUBWEAK TIM6_IRQHandler
437 SECTION .text:CODE:REORDER(1)
438 TIM6_IRQHandler
439 B TIM6_IRQHandler
440
441 PUBWEAK TIM7_IRQHandler
442 SECTION .text:CODE:REORDER(1)
443 TIM7_IRQHandler
444 B TIM7_IRQHandler
445
446 PUBWEAK DMA2_Channel1_IRQHandler
447 SECTION .text:CODE:REORDER(1)
448 DMA2_Channel1_IRQHandler
449 B DMA2_Channel1_IRQHandler
450
451 PUBWEAK DMA2_Channel2_IRQHandler
452 SECTION .text:CODE:REORDER(1)
453 DMA2_Channel2_IRQHandler
454 B DMA2_Channel2_IRQHandler
455
456 PUBWEAK DMA2_Channel3_IRQHandler
457 SECTION .text:CODE:REORDER(1)
458 DMA2_Channel3_IRQHandler
459 B DMA2_Channel3_IRQHandler
460
461 PUBWEAK DMA2_Channel4_IRQHandler
462 SECTION .text:CODE:REORDER(1)
463 DMA2_Channel4_IRQHandler
464 B DMA2_Channel4_IRQHandler
465
466 PUBWEAK DMA2_Channel5_IRQHandler
467 SECTION .text:CODE:REORDER(1)
468 DMA2_Channel5_IRQHandler
469 B DMA2_Channel5_IRQHandler
470
471 PUBWEAK ETH_IRQHandler
472 SECTION .text:CODE:REORDER(1)
473 ETH_IRQHandler
474 B ETH_IRQHandler
475
476 PUBWEAK ETH_WKUP_IRQHandler
477 SECTION .text:CODE:REORDER(1)
478 ETH_WKUP_IRQHandler
479 B ETH_WKUP_IRQHandler
480
481 PUBWEAK CAN2_TX_IRQHandler
482 SECTION .text:CODE:REORDER(1)
483 CAN2_TX_IRQHandler
484 B CAN2_TX_IRQHandler
485
486 PUBWEAK CAN2_RX0_IRQHandler
487 SECTION .text:CODE:REORDER(1)
488 CAN2_RX0_IRQHandler
489 B CAN2_RX0_IRQHandler
490
491 PUBWEAK CAN2_RX1_IRQHandler
492 SECTION .text:CODE:REORDER(1)
493 CAN2_RX1_IRQHandler
494 B CAN2_RX1_IRQHandler
495
496 PUBWEAK CAN2_SCE_IRQHandler
497 SECTION .text:CODE:REORDER(1)
498 CAN2_SCE_IRQHandler
499 B CAN2_SCE_IRQHandler
500
501 PUBWEAK OTG_FS_IRQHandler
502 SECTION .text:CODE:REORDER(1)
503 OTG_FS_IRQHandler
504 B OTG_FS_IRQHandler
505
506 END
507 /******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/