Skip to content

Commit a31ec9c

Browse files
committed
Merge pull request #150 from bcostm/master
Add NUCLEO_L152RE
2 parents 338215a + 1ccef1a commit a31ec9c

File tree

171 files changed

+85630
-171
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

171 files changed

+85630
-171
lines changed
Lines changed: 244 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,244 @@
1+
;******************** (C) COPYRIGHT 2014 STMicroelectronics ********************
2+
;* File Name : startup_stm32f030.s
3+
;* Author : MCD Application Team
4+
;* Version : V1.3.1
5+
;* Date : 17-January-2014
6+
;* Description : STM32F030 devices vector table for MDK-ARM toolchain.
7+
;* This module performs:
8+
;* - Set the initial SP
9+
;* - Set the initial PC == Reset_Handler
10+
;* - Set the vector table entries with the exceptions ISR address
11+
;* - Configure the system clock
12+
;* - Branches to __main in the C library (which eventually
13+
;* calls main()).
14+
;* After Reset the CortexM0 processor is in Thread mode,
15+
;* priority is Privileged, and the Stack is set to Main.
16+
;* <<< Use Configuration Wizard in Context Menu >>>
17+
;*******************************************************************************
18+
; @attention
19+
;
20+
; Licensed under MCD-ST Liberty SW License Agreement V2, (the "License");
21+
; You may not use this file except in compliance with the License.
22+
; You may obtain a copy of the License at:
23+
;
24+
; http://www.st.com/software_license_agreement_liberty_v2
25+
;
26+
; Unless required by applicable law or agreed to in writing, software
27+
; distributed under the License is distributed on an "AS IS" BASIS,
28+
; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
29+
; See the License for the specific language governing permissions and
30+
; limitations under the License.
31+
;
32+
;*******************************************************************************
33+
;
34+
; Amount of memory (in bytes) allocated for Stack
35+
; Tailor this value to your application needs
36+
; <h> Stack Configuration
37+
; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
38+
; </h>
39+
40+
Stack_Size EQU 0x00000400
41+
42+
AREA STACK, NOINIT, READWRITE, ALIGN=3
43+
Stack_Mem SPACE Stack_Size
44+
__initial_sp
45+
46+
47+
; <h> Heap Configuration
48+
; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
49+
; </h>
50+
51+
Heap_Size EQU 0x00000200
52+
53+
AREA HEAP, NOINIT, READWRITE, ALIGN=3
54+
__heap_base
55+
Heap_Mem SPACE Heap_Size
56+
__heap_limit
57+
58+
PRESERVE8
59+
THUMB
60+
61+
62+
; Vector Table Mapped to Address 0 at Reset
63+
AREA RESET, DATA, READONLY
64+
EXPORT __Vectors
65+
EXPORT __Vectors_End
66+
EXPORT __Vectors_Size
67+
68+
__Vectors DCD __initial_sp ; Top of Stack
69+
DCD Reset_Handler ; Reset Handler
70+
DCD NMI_Handler ; NMI Handler
71+
DCD HardFault_Handler ; Hard Fault Handler
72+
DCD 0 ; Reserved
73+
DCD 0 ; Reserved
74+
DCD 0 ; Reserved
75+
DCD 0 ; Reserved
76+
DCD 0 ; Reserved
77+
DCD 0 ; Reserved
78+
DCD 0 ; Reserved
79+
DCD SVC_Handler ; SVCall Handler
80+
DCD 0 ; Reserved
81+
DCD 0 ; Reserved
82+
DCD PendSV_Handler ; PendSV Handler
83+
DCD SysTick_Handler ; SysTick Handler
84+
85+
; External Interrupts
86+
DCD WWDG_IRQHandler ; Window Watchdog
87+
DCD 0 ; Reserved
88+
DCD RTC_IRQHandler ; RTC through EXTI Line
89+
DCD FLASH_IRQHandler ; FLASH
90+
DCD RCC_IRQHandler ; RCC
91+
DCD EXTI0_1_IRQHandler ; EXTI Line 0 and 1
92+
DCD EXTI2_3_IRQHandler ; EXTI Line 2 and 3
93+
DCD EXTI4_15_IRQHandler ; EXTI Line 4 to 15
94+
DCD 0 ; Reserved
95+
DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1
96+
DCD DMA1_Channel2_3_IRQHandler ; DMA1 Channel 2 and Channel 3
97+
DCD DMA1_Channel4_5_IRQHandler ; DMA1 Channel 4 and Channel 5
98+
DCD ADC1_IRQHandler ; ADC1
99+
DCD TIM1_BRK_UP_TRG_COM_IRQHandler ; TIM1 Break, Update, Trigger and Commutation
100+
DCD TIM1_CC_IRQHandler ; TIM1 Capture Compare
101+
DCD 0 ; Reserved
102+
DCD TIM3_IRQHandler ; TIM3
103+
DCD 0 ; Reserved
104+
DCD 0 ; Reserved
105+
DCD TIM14_IRQHandler ; TIM14
106+
DCD TIM15_IRQHandler ; TIM15
107+
DCD TIM16_IRQHandler ; TIM16
108+
DCD TIM17_IRQHandler ; TIM17
109+
DCD I2C1_IRQHandler ; I2C1
110+
DCD I2C2_IRQHandler ; I2C2
111+
DCD SPI1_IRQHandler ; SPI1
112+
DCD SPI2_IRQHandler ; SPI2
113+
DCD USART1_IRQHandler ; USART1
114+
DCD USART2_IRQHandler ; USART2
115+
116+
__Vectors_End
117+
118+
__Vectors_Size EQU __Vectors_End - __Vectors
119+
120+
AREA |.text|, CODE, READONLY
121+
122+
; Reset handler routine
123+
Reset_Handler PROC
124+
EXPORT Reset_Handler [WEAK]
125+
IMPORT __main
126+
IMPORT SystemInit
127+
LDR R0, =SystemInit
128+
BLX R0
129+
LDR R0, =__main
130+
BX R0
131+
ENDP
132+
133+
; Dummy Exception Handlers (infinite loops which can be modified)
134+
135+
NMI_Handler PROC
136+
EXPORT NMI_Handler [WEAK]
137+
B .
138+
ENDP
139+
HardFault_Handler\
140+
PROC
141+
EXPORT HardFault_Handler [WEAK]
142+
B .
143+
ENDP
144+
SVC_Handler PROC
145+
EXPORT SVC_Handler [WEAK]
146+
B .
147+
ENDP
148+
PendSV_Handler PROC
149+
EXPORT PendSV_Handler [WEAK]
150+
B .
151+
ENDP
152+
SysTick_Handler PROC
153+
EXPORT SysTick_Handler [WEAK]
154+
B .
155+
ENDP
156+
157+
Default_Handler PROC
158+
159+
EXPORT WWDG_IRQHandler [WEAK]
160+
EXPORT RTC_IRQHandler [WEAK]
161+
EXPORT FLASH_IRQHandler [WEAK]
162+
EXPORT RCC_IRQHandler [WEAK]
163+
EXPORT EXTI0_1_IRQHandler [WEAK]
164+
EXPORT EXTI2_3_IRQHandler [WEAK]
165+
EXPORT EXTI4_15_IRQHandler [WEAK]
166+
EXPORT DMA1_Channel1_IRQHandler [WEAK]
167+
EXPORT DMA1_Channel2_3_IRQHandler [WEAK]
168+
EXPORT DMA1_Channel4_5_IRQHandler [WEAK]
169+
EXPORT ADC1_IRQHandler [WEAK]
170+
EXPORT TIM1_BRK_UP_TRG_COM_IRQHandler [WEAK]
171+
EXPORT TIM1_CC_IRQHandler [WEAK]
172+
EXPORT TIM3_IRQHandler [WEAK]
173+
EXPORT TIM14_IRQHandler [WEAK]
174+
EXPORT TIM15_IRQHandler [WEAK]
175+
EXPORT TIM16_IRQHandler [WEAK]
176+
EXPORT TIM17_IRQHandler [WEAK]
177+
EXPORT I2C1_IRQHandler [WEAK]
178+
EXPORT I2C2_IRQHandler [WEAK]
179+
EXPORT SPI1_IRQHandler [WEAK]
180+
EXPORT SPI2_IRQHandler [WEAK]
181+
EXPORT USART1_IRQHandler [WEAK]
182+
EXPORT USART2_IRQHandler [WEAK]
183+
184+
185+
WWDG_IRQHandler
186+
RTC_IRQHandler
187+
FLASH_IRQHandler
188+
RCC_IRQHandler
189+
EXTI0_1_IRQHandler
190+
EXTI2_3_IRQHandler
191+
EXTI4_15_IRQHandler
192+
DMA1_Channel1_IRQHandler
193+
DMA1_Channel2_3_IRQHandler
194+
DMA1_Channel4_5_IRQHandler
195+
ADC1_IRQHandler
196+
TIM1_BRK_UP_TRG_COM_IRQHandler
197+
TIM1_CC_IRQHandler
198+
TIM3_IRQHandler
199+
TIM14_IRQHandler
200+
TIM15_IRQHandler
201+
TIM16_IRQHandler
202+
TIM17_IRQHandler
203+
I2C1_IRQHandler
204+
I2C2_IRQHandler
205+
SPI1_IRQHandler
206+
SPI2_IRQHandler
207+
USART1_IRQHandler
208+
USART2_IRQHandler
209+
210+
B .
211+
212+
ENDP
213+
214+
ALIGN
215+
216+
;*******************************************************************************
217+
; User Stack and Heap initialization
218+
;*******************************************************************************
219+
IF :DEF:__MICROLIB
220+
221+
EXPORT __initial_sp
222+
EXPORT __heap_base
223+
EXPORT __heap_limit
224+
225+
ELSE
226+
227+
IMPORT __use_two_region_memory
228+
EXPORT __user_initial_stackheap
229+
230+
__user_initial_stackheap
231+
232+
LDR R0, = Heap_Mem
233+
LDR R1, =(Stack_Mem + Stack_Size)
234+
LDR R2, = (Heap_Mem + Heap_Size)
235+
LDR R3, = Stack_Mem
236+
BX LR
237+
238+
ALIGN
239+
240+
ENDIF
241+
242+
END
243+
244+
;************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE*****

0 commit comments

Comments
 (0)