Manh Pham / Mbed OS Nucleo_rtos_basic_ir_controller
Committer:
manhpham
Date:
Sat Apr 07 09:22:54 2018 +0000
Revision:
0:c8673aa96267
Nucleo_rtos_basic_ir_controller

Who changed what in which revision?

UserRevisionLine numberNew contents of line
manhpham 0:c8673aa96267 1 ;/******************** (C) COPYRIGHT 2016 STMicroelectronics ********************
manhpham 0:c8673aa96267 2 ;* File Name : startup_stm32l031xx.s
manhpham 0:c8673aa96267 3 ;* Author : MCD Application Team
manhpham 0:c8673aa96267 4 ;* Version : V1.5.0
manhpham 0:c8673aa96267 5 ;* Date : 8-January-2016
manhpham 0:c8673aa96267 6 ;* Description : STM32L031xx Ultra Low Power Devices vector
manhpham 0:c8673aa96267 7 ;* This module performs:
manhpham 0:c8673aa96267 8 ;* - Set the initial SP
manhpham 0:c8673aa96267 9 ;* - Set the initial PC == _iar_program_start,
manhpham 0:c8673aa96267 10 ;* - Set the vector table entries with the exceptions ISR
manhpham 0:c8673aa96267 11 ;* address.
manhpham 0:c8673aa96267 12 ;* - Configure the system clock
manhpham 0:c8673aa96267 13 ;* - Branches to main in the C library (which eventually
manhpham 0:c8673aa96267 14 ;* calls main()).
manhpham 0:c8673aa96267 15 ;* After Reset the Cortex-M0+ processor is in Thread mode,
manhpham 0:c8673aa96267 16 ;* priority is Privileged, and the Stack is set to Main.
manhpham 0:c8673aa96267 17 ;********************************************************************************
manhpham 0:c8673aa96267 18 ;*
manhpham 0:c8673aa96267 19 ;* Redistribution and use in source and binary forms, with or without modification,
manhpham 0:c8673aa96267 20 ;* are permitted provided that the following conditions are met:
manhpham 0:c8673aa96267 21 ;* 1. Redistributions of source code must retain the above copyright notice,
manhpham 0:c8673aa96267 22 ;* this list of conditions and the following disclaimer.
manhpham 0:c8673aa96267 23 ;* 2. Redistributions in binary form must reproduce the above copyright notice,
manhpham 0:c8673aa96267 24 ;* this list of conditions and the following disclaimer in the documentation
manhpham 0:c8673aa96267 25 ;* and/or other materials provided with the distribution.
manhpham 0:c8673aa96267 26 ;* 3. Neither the name of STMicroelectronics nor the names of its contributors
manhpham 0:c8673aa96267 27 ;* may be used to endorse or promote products derived from this software
manhpham 0:c8673aa96267 28 ;* without specific prior written permission.
manhpham 0:c8673aa96267 29 ;*
manhpham 0:c8673aa96267 30 ;* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
manhpham 0:c8673aa96267 31 ;* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
manhpham 0:c8673aa96267 32 ;* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
manhpham 0:c8673aa96267 33 ;* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
manhpham 0:c8673aa96267 34 ;* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
manhpham 0:c8673aa96267 35 ;* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
manhpham 0:c8673aa96267 36 ;* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
manhpham 0:c8673aa96267 37 ;* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
manhpham 0:c8673aa96267 38 ;* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
manhpham 0:c8673aa96267 39 ;* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
manhpham 0:c8673aa96267 40 ;*
manhpham 0:c8673aa96267 41 ;*******************************************************************************/
manhpham 0:c8673aa96267 42 ;
manhpham 0:c8673aa96267 43 ;
manhpham 0:c8673aa96267 44 ; The modules in this file are included in the libraries, and may be replaced
manhpham 0:c8673aa96267 45 ; by any user-defined modules that define the PUBLIC symbol _program_start or
manhpham 0:c8673aa96267 46 ; a user defined start symbol.
manhpham 0:c8673aa96267 47 ; To override the cstartup defined in the library, simply add your modified
manhpham 0:c8673aa96267 48 ; version to the workbench project.
manhpham 0:c8673aa96267 49 ;
manhpham 0:c8673aa96267 50 ; The vector table is normally located at address 0.
manhpham 0:c8673aa96267 51 ; When debugging in RAM, it can be located in RAM, aligned to at least 2^6.
manhpham 0:c8673aa96267 52 ; The name "__vector_table" has special meaning for C-SPY:
manhpham 0:c8673aa96267 53 ; it is where the SP start value is found, and the NVIC vector
manhpham 0:c8673aa96267 54 ; table register (VTOR) is initialized to this address if != 0.
manhpham 0:c8673aa96267 55 ;
manhpham 0:c8673aa96267 56 ; Cortex-M version
manhpham 0:c8673aa96267 57 ;
manhpham 0:c8673aa96267 58
manhpham 0:c8673aa96267 59 MODULE ?cstartup
manhpham 0:c8673aa96267 60
manhpham 0:c8673aa96267 61 ;; Forward declaration of sections.
manhpham 0:c8673aa96267 62 SECTION CSTACK:DATA:NOROOT(3)
manhpham 0:c8673aa96267 63
manhpham 0:c8673aa96267 64 SECTION .intvec:CODE:NOROOT(2)
manhpham 0:c8673aa96267 65
manhpham 0:c8673aa96267 66 EXTERN __iar_program_start
manhpham 0:c8673aa96267 67 EXTERN SystemInit
manhpham 0:c8673aa96267 68 PUBLIC __vector_table
manhpham 0:c8673aa96267 69
manhpham 0:c8673aa96267 70 DATA
manhpham 0:c8673aa96267 71 __vector_table
manhpham 0:c8673aa96267 72 DCD sfe(CSTACK)
manhpham 0:c8673aa96267 73 DCD Reset_Handler ; Reset Handler
manhpham 0:c8673aa96267 74
manhpham 0:c8673aa96267 75 DCD NMI_Handler ; NMI Handler
manhpham 0:c8673aa96267 76 DCD HardFault_Handler ; Hard Fault Handler
manhpham 0:c8673aa96267 77 DCD 0 ; Reserved
manhpham 0:c8673aa96267 78 DCD 0 ; Reserved
manhpham 0:c8673aa96267 79 DCD 0 ; Reserved
manhpham 0:c8673aa96267 80 DCD 0 ; Reserved
manhpham 0:c8673aa96267 81 DCD 0 ; Reserved
manhpham 0:c8673aa96267 82 DCD 0 ; Reserved
manhpham 0:c8673aa96267 83 DCD 0 ; Reserved
manhpham 0:c8673aa96267 84 DCD SVC_Handler ; SVCall Handler
manhpham 0:c8673aa96267 85 DCD 0 ; Reserved
manhpham 0:c8673aa96267 86 DCD 0 ; Reserved
manhpham 0:c8673aa96267 87 DCD PendSV_Handler ; PendSV Handler
manhpham 0:c8673aa96267 88 DCD SysTick_Handler ; SysTick Handler
manhpham 0:c8673aa96267 89
manhpham 0:c8673aa96267 90 ; External Interrupts
manhpham 0:c8673aa96267 91 DCD WWDG_IRQHandler ; Window Watchdog
manhpham 0:c8673aa96267 92 DCD PVD_IRQHandler ; PVD through EXTI Line detect
manhpham 0:c8673aa96267 93 DCD RTC_IRQHandler ; RTC through EXTI Line
manhpham 0:c8673aa96267 94 DCD FLASH_IRQHandler ; FLASH
manhpham 0:c8673aa96267 95 DCD RCC_IRQHandler ; RCC
manhpham 0:c8673aa96267 96 DCD EXTI0_1_IRQHandler ; EXTI Line 0 and 1
manhpham 0:c8673aa96267 97 DCD EXTI2_3_IRQHandler ; EXTI Line 2 and 3
manhpham 0:c8673aa96267 98 DCD EXTI4_15_IRQHandler ; EXTI Line 4 to 15
manhpham 0:c8673aa96267 99 DCD 0 ; Reserved
manhpham 0:c8673aa96267 100 DCD DMA1_Channel1_IRQHandler ; DMA1 Channel 1
manhpham 0:c8673aa96267 101 DCD DMA1_Channel2_3_IRQHandler ; DMA1 Channel 2 and Channel 3
manhpham 0:c8673aa96267 102 DCD DMA1_Channel4_5_6_7_IRQHandler ; DMA1 Channel 4, Channel 5, Channel 6 and Channel 7
manhpham 0:c8673aa96267 103 DCD ADC1_COMP_IRQHandler ; ADC1, COMP1
manhpham 0:c8673aa96267 104 DCD LPTIM1_IRQHandler ; LPTIM1
manhpham 0:c8673aa96267 105 DCD 0 ; Reserved
manhpham 0:c8673aa96267 106 DCD TIM2_IRQHandler ; TIM2
manhpham 0:c8673aa96267 107 DCD 0 ; Reserved
manhpham 0:c8673aa96267 108 DCD 0 ; Reserved
manhpham 0:c8673aa96267 109 DCD 0 ; Reserved
manhpham 0:c8673aa96267 110 DCD 0 ; Reserved
manhpham 0:c8673aa96267 111 DCD TIM21_IRQHandler ; TIM21
manhpham 0:c8673aa96267 112 DCD 0 ; Reserved
manhpham 0:c8673aa96267 113 DCD TIM22_IRQHandler ; TIM22
manhpham 0:c8673aa96267 114 DCD I2C1_IRQHandler ; I2C1
manhpham 0:c8673aa96267 115 DCD 0 ; Reserved
manhpham 0:c8673aa96267 116 DCD SPI1_IRQHandler ; SPI1
manhpham 0:c8673aa96267 117 DCD 0 ; Reserved
manhpham 0:c8673aa96267 118 DCD 0 ; Reserved
manhpham 0:c8673aa96267 119 DCD USART2_IRQHandler ; USART2
manhpham 0:c8673aa96267 120 DCD LPUART1_IRQHandler ; LPUART1
manhpham 0:c8673aa96267 121 DCD 0 ; Reserved
manhpham 0:c8673aa96267 122 DCD 0 ; Reserved
manhpham 0:c8673aa96267 123
manhpham 0:c8673aa96267 124 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
manhpham 0:c8673aa96267 125 ;;
manhpham 0:c8673aa96267 126 ;; Default interrupt handlers.
manhpham 0:c8673aa96267 127 ;;
manhpham 0:c8673aa96267 128 THUMB
manhpham 0:c8673aa96267 129 PUBWEAK Reset_Handler
manhpham 0:c8673aa96267 130 SECTION .text:CODE:NOROOT:REORDER(2)
manhpham 0:c8673aa96267 131 Reset_Handler
manhpham 0:c8673aa96267 132 LDR R0, =SystemInit
manhpham 0:c8673aa96267 133 BLX R0
manhpham 0:c8673aa96267 134 LDR R0, =__iar_program_start
manhpham 0:c8673aa96267 135 BX R0
manhpham 0:c8673aa96267 136
manhpham 0:c8673aa96267 137 PUBWEAK NMI_Handler
manhpham 0:c8673aa96267 138 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 139 NMI_Handler
manhpham 0:c8673aa96267 140 B NMI_Handler
manhpham 0:c8673aa96267 141
manhpham 0:c8673aa96267 142
manhpham 0:c8673aa96267 143 PUBWEAK HardFault_Handler
manhpham 0:c8673aa96267 144 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 145 HardFault_Handler
manhpham 0:c8673aa96267 146 B HardFault_Handler
manhpham 0:c8673aa96267 147
manhpham 0:c8673aa96267 148
manhpham 0:c8673aa96267 149 PUBWEAK SVC_Handler
manhpham 0:c8673aa96267 150 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 151 SVC_Handler
manhpham 0:c8673aa96267 152 B SVC_Handler
manhpham 0:c8673aa96267 153
manhpham 0:c8673aa96267 154
manhpham 0:c8673aa96267 155 PUBWEAK PendSV_Handler
manhpham 0:c8673aa96267 156 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 157 PendSV_Handler
manhpham 0:c8673aa96267 158 B PendSV_Handler
manhpham 0:c8673aa96267 159
manhpham 0:c8673aa96267 160
manhpham 0:c8673aa96267 161 PUBWEAK SysTick_Handler
manhpham 0:c8673aa96267 162 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 163 SysTick_Handler
manhpham 0:c8673aa96267 164 B SysTick_Handler
manhpham 0:c8673aa96267 165
manhpham 0:c8673aa96267 166
manhpham 0:c8673aa96267 167 PUBWEAK WWDG_IRQHandler
manhpham 0:c8673aa96267 168 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 169 WWDG_IRQHandler
manhpham 0:c8673aa96267 170 B WWDG_IRQHandler
manhpham 0:c8673aa96267 171
manhpham 0:c8673aa96267 172
manhpham 0:c8673aa96267 173 PUBWEAK PVD_IRQHandler
manhpham 0:c8673aa96267 174 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 175 PVD_IRQHandler
manhpham 0:c8673aa96267 176 B PVD_IRQHandler
manhpham 0:c8673aa96267 177
manhpham 0:c8673aa96267 178
manhpham 0:c8673aa96267 179 PUBWEAK RTC_IRQHandler
manhpham 0:c8673aa96267 180 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 181 RTC_IRQHandler
manhpham 0:c8673aa96267 182 B RTC_IRQHandler
manhpham 0:c8673aa96267 183
manhpham 0:c8673aa96267 184
manhpham 0:c8673aa96267 185 PUBWEAK FLASH_IRQHandler
manhpham 0:c8673aa96267 186 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 187 FLASH_IRQHandler
manhpham 0:c8673aa96267 188 B FLASH_IRQHandler
manhpham 0:c8673aa96267 189
manhpham 0:c8673aa96267 190
manhpham 0:c8673aa96267 191 PUBWEAK RCC_IRQHandler
manhpham 0:c8673aa96267 192 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 193 RCC_IRQHandler
manhpham 0:c8673aa96267 194 B RCC_IRQHandler
manhpham 0:c8673aa96267 195
manhpham 0:c8673aa96267 196
manhpham 0:c8673aa96267 197 PUBWEAK EXTI0_1_IRQHandler
manhpham 0:c8673aa96267 198 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 199 EXTI0_1_IRQHandler
manhpham 0:c8673aa96267 200 B EXTI0_1_IRQHandler
manhpham 0:c8673aa96267 201
manhpham 0:c8673aa96267 202
manhpham 0:c8673aa96267 203 PUBWEAK EXTI2_3_IRQHandler
manhpham 0:c8673aa96267 204 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 205 EXTI2_3_IRQHandler
manhpham 0:c8673aa96267 206 B EXTI2_3_IRQHandler
manhpham 0:c8673aa96267 207
manhpham 0:c8673aa96267 208
manhpham 0:c8673aa96267 209 PUBWEAK EXTI4_15_IRQHandler
manhpham 0:c8673aa96267 210 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 211 EXTI4_15_IRQHandler
manhpham 0:c8673aa96267 212 B EXTI4_15_IRQHandler
manhpham 0:c8673aa96267 213
manhpham 0:c8673aa96267 214
manhpham 0:c8673aa96267 215 PUBWEAK DMA1_Channel1_IRQHandler
manhpham 0:c8673aa96267 216 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 217 DMA1_Channel1_IRQHandler
manhpham 0:c8673aa96267 218 B DMA1_Channel1_IRQHandler
manhpham 0:c8673aa96267 219
manhpham 0:c8673aa96267 220
manhpham 0:c8673aa96267 221 PUBWEAK DMA1_Channel2_3_IRQHandler
manhpham 0:c8673aa96267 222 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 223 DMA1_Channel2_3_IRQHandler
manhpham 0:c8673aa96267 224 B DMA1_Channel2_3_IRQHandler
manhpham 0:c8673aa96267 225
manhpham 0:c8673aa96267 226
manhpham 0:c8673aa96267 227 PUBWEAK DMA1_Channel4_5_6_7_IRQHandler
manhpham 0:c8673aa96267 228 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 229 DMA1_Channel4_5_6_7_IRQHandler
manhpham 0:c8673aa96267 230 B DMA1_Channel4_5_6_7_IRQHandler
manhpham 0:c8673aa96267 231
manhpham 0:c8673aa96267 232
manhpham 0:c8673aa96267 233 PUBWEAK ADC1_COMP_IRQHandler
manhpham 0:c8673aa96267 234 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 235 ADC1_COMP_IRQHandler
manhpham 0:c8673aa96267 236 B ADC1_COMP_IRQHandler
manhpham 0:c8673aa96267 237
manhpham 0:c8673aa96267 238
manhpham 0:c8673aa96267 239 PUBWEAK LPTIM1_IRQHandler
manhpham 0:c8673aa96267 240 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 241 LPTIM1_IRQHandler
manhpham 0:c8673aa96267 242 B LPTIM1_IRQHandler
manhpham 0:c8673aa96267 243
manhpham 0:c8673aa96267 244
manhpham 0:c8673aa96267 245 PUBWEAK TIM2_IRQHandler
manhpham 0:c8673aa96267 246 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 247 TIM2_IRQHandler
manhpham 0:c8673aa96267 248 B TIM2_IRQHandler
manhpham 0:c8673aa96267 249
manhpham 0:c8673aa96267 250
manhpham 0:c8673aa96267 251 PUBWEAK TIM21_IRQHandler
manhpham 0:c8673aa96267 252 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 253 TIM21_IRQHandler
manhpham 0:c8673aa96267 254 B TIM21_IRQHandler
manhpham 0:c8673aa96267 255
manhpham 0:c8673aa96267 256 PUBWEAK TIM22_IRQHandler
manhpham 0:c8673aa96267 257 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 258 TIM22_IRQHandler
manhpham 0:c8673aa96267 259 B TIM22_IRQHandler
manhpham 0:c8673aa96267 260
manhpham 0:c8673aa96267 261
manhpham 0:c8673aa96267 262 PUBWEAK I2C1_IRQHandler
manhpham 0:c8673aa96267 263 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 264 I2C1_IRQHandler
manhpham 0:c8673aa96267 265 B I2C1_IRQHandler
manhpham 0:c8673aa96267 266
manhpham 0:c8673aa96267 267
manhpham 0:c8673aa96267 268 PUBWEAK SPI1_IRQHandler
manhpham 0:c8673aa96267 269 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 270 SPI1_IRQHandler
manhpham 0:c8673aa96267 271 B SPI1_IRQHandler
manhpham 0:c8673aa96267 272
manhpham 0:c8673aa96267 273
manhpham 0:c8673aa96267 274 PUBWEAK USART2_IRQHandler
manhpham 0:c8673aa96267 275 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 276 USART2_IRQHandler
manhpham 0:c8673aa96267 277 B USART2_IRQHandler
manhpham 0:c8673aa96267 278
manhpham 0:c8673aa96267 279
manhpham 0:c8673aa96267 280 PUBWEAK LPUART1_IRQHandler
manhpham 0:c8673aa96267 281 SECTION .text:CODE:NOROOT:REORDER(1)
manhpham 0:c8673aa96267 282 LPUART1_IRQHandler
manhpham 0:c8673aa96267 283 B LPUART1_IRQHandler
manhpham 0:c8673aa96267 284
manhpham 0:c8673aa96267 285 END
manhpham 0:c8673aa96267 286 ;************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE*****