Rev Author Line No. Line
3328 povik 1 ;/******************** (C) COPYRIGHT 2009 STMicroelectronics ********************
2 ;* File Name : startup_stm32f10x_md.s
3 ;* Author : MCD Application Team
4 ;* Version : V3.1.2
5 ;* Date : 09/28/2009
6 ;* Description : STM32F10x Medium Density Devices vector table for
7 ;* EWARM5.x toolchain.
8 ;* This module performs:
9 ;* - Set the initial SP
10 ;* - Set the initial PC == __iar_program_start,
11 ;* - Set the vector table entries with the exceptions ISR
12 ;* address.
13 ;* After Reset the Cortex-M3 processor is in Thread mode,
14 ;* priority is Privileged, and the Stack is set to Main.
15 ;********************************************************************************
16 ;* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
17 ;* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
18 ;* AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT,
19 ;* INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE
20 ;* CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING
21 ;* INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
22 ;*******************************************************************************/
23 ;
24 ;
25 ; The modules in this file are included in the libraries, and may be replaced
26 ; by any user-defined modules that define the PUBLIC symbol _program_start or
27 ; a user defined start symbol.
28 ; To override the cstartup defined in the library, simply add your modified
29 ; version to the workbench project.
30 ;
31 ; The vector table is normally located at address 0.
32 ; When debugging in RAM, it can be located in RAM, aligned to at least 2^6.
33 ; The name "__vector_table" has special meaning for C-SPY:
34 ; it is where the SP start value is found, and the NVIC vector
35 ; table register (VTOR) is initialized to this address if != 0.
36 ;
37 ; Cortex-M version
38 ;
39  
40 MODULE ?cstartup
41  
42 ;; Forward declaration of sections.
43 SECTION CSTACK:DATA:NOROOT(3)
44  
45 SECTION .intvec:CODE:NOROOT(2)
46  
47 EXTERN __iar_program_start
48 PUBLIC __vector_table
49  
50 DATA
51 __vector_table
52 DCD sfe(CSTACK)
53 DCD __iar_program_start
54  
55 DCD NMI_Handler ; NMI Handler
56 DCD HardFault_Handler ; Hard Fault Handler
57 DCD MemManage_Handler ; MPU Fault Handler
58 DCD BusFault_Handler ; Bus Fault Handler
59 DCD UsageFault_Handler ; Usage Fault Handler
60 DCD 0 ; Reserved
61 DCD 0 ; Reserved
62 DCD 0 ; Reserved
63 DCD 0 ; Reserved
64 DCD SVC_Handler ; SVCall Handler
65 DCD DebugMon_Handler ; Debug Monitor Handler
66 DCD 0 ; Reserved
67 DCD PendSV_Handler ; PendSV Handler
68 DCD SysTick_Handler ; SysTick Handler
69  
70 ; External Interrupts
71 DCD WWDG_IRQHandler ; Window Watchdog
72 DCD PVD_IRQHandler ; PVD through EXTI Line detect
73 DCD TAMPER_IRQHandler ; Tamper
74 DCD RTC_IRQHandler ; RTC
75 DCD FLASH_IRQHandler ; Flash
76 DCD RCC_IRQHandler ; RCC
77 DCD EXTI0_IRQHandler ; EXTI Line 0
78 DCD EXTI1_IRQHandler ; EXTI Line 1
79 DCD EXTI2_IRQHandler ; EXTI Line 2
80 DCD EXTI3_IRQHandler ; EXTI Line 3
81 DCD EXTI4_IRQHandler ; EXTI Line 4
82 DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1
83 DCD DMA1_Channel2_IRQHandler ; DMA1 Channel 2
84 DCD DMA1_Channel3_IRQHandler ; DMA1 Channel 3
85 DCD DMA1_Channel4_IRQHandler ; DMA1 Channel 4
86 DCD DMA1_Channel5_IRQHandler ; DMA1 Channel 5
87 DCD DMA1_Channel6_IRQHandler ; DMA1 Channel 6
88 DCD DMA1_Channel7_IRQHandler ; DMA1 Channel 7
89 DCD ADC1_2_IRQHandler ; ADC1 & ADC2
90 DCD USB_HP_CAN1_TX_IRQHandler ; USB High Priority or CAN1 TX
91 DCD USB_LP_CAN1_RX0_IRQHandler ; USB Low Priority or CAN1 RX0
92 DCD CAN1_RX1_IRQHandler ; CAN1 RX1
93 DCD CAN1_SCE_IRQHandler ; CAN1 SCE
94 DCD EXTI9_5_IRQHandler ; EXTI Line 9..5
95 DCD TIM1_BRK_IRQHandler ; TIM1 Break
96 DCD TIM1_UP_IRQHandler ; TIM1 Update
97 DCD TIM1_TRG_COM_IRQHandler ; TIM1 Trigger and Commutation
98 DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare
99 DCD TIM2_IRQHandler ; TIM2
100 DCD TIM3_IRQHandler ; TIM3
101 DCD TIM4_IRQHandler ; TIM4
102 DCD I2C1_EV_IRQHandler ; I2C1 Event
103 DCD I2C1_ER_IRQHandler ; I2C1 Error
104 DCD I2C2_EV_IRQHandler ; I2C2 Event
105 DCD I2C2_ER_IRQHandler ; I2C2 Error
106 DCD SPI1_IRQHandler ; SPI1
107 DCD SPI2_IRQHandler ; SPI2
108 DCD USART1_IRQHandler ; USART1
109 DCD USART2_IRQHandler ; USART2
110 DCD USART3_IRQHandler ; USART3
111 DCD EXTI15_10_IRQHandler ; EXTI Line 15..10
112 DCD RTCAlarm_IRQHandler ; RTC Alarm through EXTI Line
113 DCD USBWakeUp_IRQHandler ; USB Wakeup from suspend
114  
115 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
116 ;;
117 ;; Default interrupt handlers.
118 ;;
119 THUMB
120  
121 PUBWEAK NMI_Handler
122 SECTION .text:CODE:REORDER(1)
123 NMI_Handler
124 B NMI_Handler
125  
126 PUBWEAK HardFault_Handler
127 SECTION .text:CODE:REORDER(1)
128 HardFault_Handler
129 B HardFault_Handler
130  
131 PUBWEAK MemManage_Handler
132 SECTION .text:CODE:REORDER(1)
133 MemManage_Handler
134 B MemManage_Handler
135  
136 PUBWEAK BusFault_Handler
137 SECTION .text:CODE:REORDER(1)
138 BusFault_Handler
139 B BusFault_Handler
140  
141 PUBWEAK UsageFault_Handler
142 SECTION .text:CODE:REORDER(1)
143 UsageFault_Handler
144 B UsageFault_Handler
145  
146 PUBWEAK SVC_Handler
147 SECTION .text:CODE:REORDER(1)
148 SVC_Handler
149 B SVC_Handler
150  
151 PUBWEAK DebugMon_Handler
152 SECTION .text:CODE:REORDER(1)
153 DebugMon_Handler
154 B DebugMon_Handler
155  
156 PUBWEAK PendSV_Handler
157 SECTION .text:CODE:REORDER(1)
158 PendSV_Handler
159 B PendSV_Handler
160  
161 PUBWEAK SysTick_Handler
162 SECTION .text:CODE:REORDER(1)
163 SysTick_Handler
164 B SysTick_Handler
165  
166 PUBWEAK WWDG_IRQHandler
167 SECTION .text:CODE:REORDER(1)
168 WWDG_IRQHandler
169 B WWDG_IRQHandler
170  
171 PUBWEAK PVD_IRQHandler
172 SECTION .text:CODE:REORDER(1)
173 PVD_IRQHandler
174 B PVD_IRQHandler
175  
176 PUBWEAK TAMPER_IRQHandler
177 SECTION .text:CODE:REORDER(1)
178 TAMPER_IRQHandler
179 B TAMPER_IRQHandler
180  
181 PUBWEAK RTC_IRQHandler
182 SECTION .text:CODE:REORDER(1)
183 RTC_IRQHandler
184 B RTC_IRQHandler
185  
186 PUBWEAK FLASH_IRQHandler
187 SECTION .text:CODE:REORDER(1)
188 FLASH_IRQHandler
189 B FLASH_IRQHandler
190  
191 PUBWEAK RCC_IRQHandler
192 SECTION .text:CODE:REORDER(1)
193 RCC_IRQHandler
194 B RCC_IRQHandler
195  
196 PUBWEAK EXTI0_IRQHandler
197 SECTION .text:CODE:REORDER(1)
198 EXTI0_IRQHandler
199 B EXTI0_IRQHandler
200  
201 PUBWEAK EXTI1_IRQHandler
202 SECTION .text:CODE:REORDER(1)
203 EXTI1_IRQHandler
204 B EXTI1_IRQHandler
205  
206 PUBWEAK EXTI2_IRQHandler
207 SECTION .text:CODE:REORDER(1)
208 EXTI2_IRQHandler
209 B EXTI2_IRQHandler
210  
211 PUBWEAK EXTI3_IRQHandler
212 SECTION .text:CODE:REORDER(1)
213 EXTI3_IRQHandler
214 B EXTI3_IRQHandler
215  
216 PUBWEAK EXTI4_IRQHandler
217 SECTION .text:CODE:REORDER(1)
218 EXTI4_IRQHandler
219 B EXTI4_IRQHandler
220  
221 PUBWEAK DMA1_Channel1_IRQHandler
222 SECTION .text:CODE:REORDER(1)
223 DMA1_Channel1_IRQHandler
224 B DMA1_Channel1_IRQHandler
225  
226 PUBWEAK DMA1_Channel2_IRQHandler
227 SECTION .text:CODE:REORDER(1)
228 DMA1_Channel2_IRQHandler
229 B DMA1_Channel2_IRQHandler
230  
231 PUBWEAK DMA1_Channel3_IRQHandler
232 SECTION .text:CODE:REORDER(1)
233 DMA1_Channel3_IRQHandler
234 B DMA1_Channel3_IRQHandler
235  
236 PUBWEAK DMA1_Channel4_IRQHandler
237 SECTION .text:CODE:REORDER(1)
238 DMA1_Channel4_IRQHandler
239 B DMA1_Channel4_IRQHandler
240  
241 PUBWEAK DMA1_Channel5_IRQHandler
242 SECTION .text:CODE:REORDER(1)
243 DMA1_Channel5_IRQHandler
244 B DMA1_Channel5_IRQHandler
245  
246 PUBWEAK DMA1_Channel6_IRQHandler
247 SECTION .text:CODE:REORDER(1)
248 DMA1_Channel6_IRQHandler
249 B DMA1_Channel6_IRQHandler
250  
251 PUBWEAK DMA1_Channel7_IRQHandler
252 SECTION .text:CODE:REORDER(1)
253 DMA1_Channel7_IRQHandler
254 B DMA1_Channel7_IRQHandler
255  
256 PUBWEAK ADC1_2_IRQHandler
257 SECTION .text:CODE:REORDER(1)
258 ADC1_2_IRQHandler
259 B ADC1_2_IRQHandler
260  
261 PUBWEAK USB_HP_CAN1_TX_IRQHandler
262 SECTION .text:CODE:REORDER(1)
263 USB_HP_CAN1_TX_IRQHandler
264 B USB_HP_CAN1_TX_IRQHandler
265  
266 PUBWEAK USB_LP_CAN1_RX0_IRQHandler
267 SECTION .text:CODE:REORDER(1)
268 USB_LP_CAN1_RX0_IRQHandler
269 B USB_LP_CAN1_RX0_IRQHandler
270  
271 PUBWEAK CAN1_RX1_IRQHandler
272 SECTION .text:CODE:REORDER(1)
273 CAN1_RX1_IRQHandler
274 B CAN1_RX1_IRQHandler
275  
276 PUBWEAK CAN1_SCE_IRQHandler
277 SECTION .text:CODE:REORDER(1)
278 CAN1_SCE_IRQHandler
279 B CAN1_SCE_IRQHandler
280  
281 PUBWEAK EXTI9_5_IRQHandler
282 SECTION .text:CODE:REORDER(1)
283 EXTI9_5_IRQHandler
284 B EXTI9_5_IRQHandler
285  
286 PUBWEAK TIM1_BRK_IRQHandler
287 SECTION .text:CODE:REORDER(1)
288 TIM1_BRK_IRQHandler
289 B TIM1_BRK_IRQHandler
290  
291 PUBWEAK TIM1_UP_IRQHandler
292 SECTION .text:CODE:REORDER(1)
293 TIM1_UP_IRQHandler
294 B TIM1_UP_IRQHandler
295  
296 PUBWEAK TIM1_TRG_COM_IRQHandler
297 SECTION .text:CODE:REORDER(1)
298 TIM1_TRG_COM_IRQHandler
299 B TIM1_TRG_COM_IRQHandler
300  
301 PUBWEAK TIM1_CC_IRQHandler
302 SECTION .text:CODE:REORDER(1)
303 TIM1_CC_IRQHandler
304 B TIM1_CC_IRQHandler
305  
306 PUBWEAK TIM2_IRQHandler
307 SECTION .text:CODE:REORDER(1)
308 TIM2_IRQHandler
309 B TIM2_IRQHandler
310  
311 PUBWEAK TIM3_IRQHandler
312 SECTION .text:CODE:REORDER(1)
313 TIM3_IRQHandler
314 B TIM3_IRQHandler
315  
316 PUBWEAK TIM4_IRQHandler
317 SECTION .text:CODE:REORDER(1)
318 TIM4_IRQHandler
319 B TIM4_IRQHandler
320  
321 PUBWEAK I2C1_EV_IRQHandler
322 SECTION .text:CODE:REORDER(1)
323 I2C1_EV_IRQHandler
324 B I2C1_EV_IRQHandler
325  
326 PUBWEAK I2C1_ER_IRQHandler
327 SECTION .text:CODE:REORDER(1)
328 I2C1_ER_IRQHandler
329 B I2C1_ER_IRQHandler
330  
331 PUBWEAK I2C2_EV_IRQHandler
332 SECTION .text:CODE:REORDER(1)
333 I2C2_EV_IRQHandler
334 B I2C2_EV_IRQHandler
335  
336 PUBWEAK I2C2_ER_IRQHandler
337 SECTION .text:CODE:REORDER(1)
338 I2C2_ER_IRQHandler
339 B I2C2_ER_IRQHandler
340  
341 PUBWEAK SPI1_IRQHandler
342 SECTION .text:CODE:REORDER(1)
343 SPI1_IRQHandler
344 B SPI1_IRQHandler
345  
346 PUBWEAK SPI2_IRQHandler
347 SECTION .text:CODE:REORDER(1)
348 SPI2_IRQHandler
349 B SPI2_IRQHandler
350  
351 PUBWEAK USART1_IRQHandler
352 SECTION .text:CODE:REORDER(1)
353 USART1_IRQHandler
354 B USART1_IRQHandler
355  
356 PUBWEAK USART2_IRQHandler
357 SECTION .text:CODE:REORDER(1)
358 USART2_IRQHandler
359 B USART2_IRQHandler
360  
361 PUBWEAK USART3_IRQHandler
362 SECTION .text:CODE:REORDER(1)
363 USART3_IRQHandler
364 B USART3_IRQHandler
365  
366 PUBWEAK EXTI15_10_IRQHandler
367 SECTION .text:CODE:REORDER(1)
368 EXTI15_10_IRQHandler
369 B EXTI15_10_IRQHandler
370  
371 PUBWEAK RTCAlarm_IRQHandler
372 SECTION .text:CODE:REORDER(1)
373 RTCAlarm_IRQHandler
374 B RTCAlarm_IRQHandler
375  
376 PUBWEAK USBWakeUp_IRQHandler
377 SECTION .text:CODE:REORDER(1)
378 USBWakeUp_IRQHandler
379 B USBWakeUp_IRQHandler
380  
381 END
382 /******************* (C) COPYRIGHT 2009 STMicroelectronics *****END OF FILE****/