mbed library sources

Fork of mbed-src by mbed official

Committer:
lzbpli
Date:
Thu Jul 07 06:48:59 2016 +0000
Revision:
636:b0d178e9fa10
Parent:
577:15494b56c2f3
l053

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mbed_official 577:15494b56c2f3 1 /**************************************************
mbed_official 577:15494b56c2f3 2 *
mbed_official 577:15494b56c2f3 3 * Part one of the system initialization code, contains low-level
mbed_official 577:15494b56c2f3 4 * initialization, plain thumb variant.
mbed_official 577:15494b56c2f3 5 *
mbed_official 577:15494b56c2f3 6 * Copyright 2011 IAR Systems. All rights reserved.
mbed_official 577:15494b56c2f3 7 *
mbed_official 577:15494b56c2f3 8 * $Revision: 47876 $
mbed_official 577:15494b56c2f3 9 *
mbed_official 577:15494b56c2f3 10 **************************************************/
mbed_official 577:15494b56c2f3 11
mbed_official 577:15494b56c2f3 12 ;
mbed_official 577:15494b56c2f3 13 ; The modules in this file are included in the libraries, and may be replaced
mbed_official 577:15494b56c2f3 14 ; by any user-defined modules that define the PUBLIC symbol _program_start or
mbed_official 577:15494b56c2f3 15 ; a user defined start symbol.
mbed_official 577:15494b56c2f3 16 ; To override the cstartup defined in the library, simply add your modified
mbed_official 577:15494b56c2f3 17 ; version to the workbench project.
mbed_official 577:15494b56c2f3 18 ;
mbed_official 577:15494b56c2f3 19 ; The vector table is normally located at address 0.
mbed_official 577:15494b56c2f3 20 ; When debugging in RAM, it can be located in RAM, aligned to at least 2^6.
mbed_official 577:15494b56c2f3 21 ; The name "__vector_table" has special meaning for C-SPY:
mbed_official 577:15494b56c2f3 22 ; it is where the SP start value is found, and the NVIC vector
mbed_official 577:15494b56c2f3 23 ; table register (VTOR) is initialized to this address if != 0.
mbed_official 577:15494b56c2f3 24 ;
mbed_official 577:15494b56c2f3 25 ; Cortex-M version
mbed_official 577:15494b56c2f3 26 ;
mbed_official 577:15494b56c2f3 27
mbed_official 577:15494b56c2f3 28
mbed_official 577:15494b56c2f3 29 MODULE ?cstartup
mbed_official 577:15494b56c2f3 30
mbed_official 577:15494b56c2f3 31 ;; Forward declaration of sections.
mbed_official 577:15494b56c2f3 32 SECTION CSTACK:DATA:NOROOT(3)
mbed_official 577:15494b56c2f3 33
mbed_official 577:15494b56c2f3 34 SECTION .intvec:CODE:NOROOT(2)
mbed_official 577:15494b56c2f3 35
mbed_official 577:15494b56c2f3 36 EXTERN __iar_program_start
mbed_official 577:15494b56c2f3 37 EXTERN SystemInit
mbed_official 577:15494b56c2f3 38 PUBLIC __vector_table
mbed_official 577:15494b56c2f3 39 PUBLIC __vector_table_0x1c
mbed_official 577:15494b56c2f3 40 PUBLIC __Vectors
mbed_official 577:15494b56c2f3 41 PUBLIC __Vectors_End
mbed_official 577:15494b56c2f3 42 PUBLIC __Vectors_Size
mbed_official 577:15494b56c2f3 43
mbed_official 577:15494b56c2f3 44 DATA
mbed_official 577:15494b56c2f3 45
mbed_official 577:15494b56c2f3 46 __vector_table
mbed_official 577:15494b56c2f3 47 DCD sfe(CSTACK)
mbed_official 577:15494b56c2f3 48 DCD Reset_Handler
mbed_official 577:15494b56c2f3 49 DCD NMI_Handler
mbed_official 577:15494b56c2f3 50 DCD HardFault_Handler
mbed_official 577:15494b56c2f3 51 DCD MemManage_Handler
mbed_official 577:15494b56c2f3 52 DCD BusFault_Handler
mbed_official 577:15494b56c2f3 53 DCD UsageFault_Handler
mbed_official 577:15494b56c2f3 54 __vector_table_0x1c
mbed_official 577:15494b56c2f3 55 DCD 0
mbed_official 577:15494b56c2f3 56 DCD 0
mbed_official 577:15494b56c2f3 57 DCD 0
mbed_official 577:15494b56c2f3 58 DCD 0
mbed_official 577:15494b56c2f3 59 DCD SVC_Handler
mbed_official 577:15494b56c2f3 60 DCD DebugMon_Handler
mbed_official 577:15494b56c2f3 61 DCD 0
mbed_official 577:15494b56c2f3 62 DCD PendSV_Handler
mbed_official 577:15494b56c2f3 63 DCD SysTick_Handler
mbed_official 577:15494b56c2f3 64
mbed_official 577:15494b56c2f3 65 ; External Interrupts
mbed_official 577:15494b56c2f3 66 DCD DAC_IRQHandler ; 16 D/A Converter
mbed_official 577:15494b56c2f3 67 DCD MX_CORE_IRQHandler ; 17 CortexM0 (LPC43XX ONLY)
mbed_official 577:15494b56c2f3 68 DCD DMA_IRQHandler ; 18 General Purpose DMA
mbed_official 577:15494b56c2f3 69 DCD 0 ; 19 Reserved
mbed_official 577:15494b56c2f3 70 DCD FLASHEEPROM_IRQHandler ; 20 ORed flash bank A, flash bank B, EEPROM interrupts
mbed_official 577:15494b56c2f3 71 DCD ETH_IRQHandler ; 21 Ethernet
mbed_official 577:15494b56c2f3 72 DCD SDIO_IRQHandler ; 22 SD/MMC
mbed_official 577:15494b56c2f3 73 DCD LCD_IRQHandler ; 23 LCD
mbed_official 577:15494b56c2f3 74 DCD USB0_IRQHandler ; 24 USB0
mbed_official 577:15494b56c2f3 75 DCD USB1_IRQHandler ; 25 USB1
mbed_official 577:15494b56c2f3 76 DCD SCT_IRQHandler ; 26 State Configurable Timer
mbed_official 577:15494b56c2f3 77 DCD RIT_IRQHandler ; 27 Repetitive Interrupt Timer
mbed_official 577:15494b56c2f3 78 DCD TIMER0_IRQHandler ; 28 Timer0
mbed_official 577:15494b56c2f3 79 DCD TIMER1_IRQHandler ; 29 Timer1
mbed_official 577:15494b56c2f3 80 DCD TIMER2_IRQHandler ; 30 Timer2
mbed_official 577:15494b56c2f3 81 DCD TIMER3_IRQHandler ; 31 Timer3
mbed_official 577:15494b56c2f3 82 DCD MCPWM_IRQHandler ; 32 Motor Control PWM
mbed_official 577:15494b56c2f3 83 DCD ADC0_IRQHandler ; 33 A/D Converter 0
mbed_official 577:15494b56c2f3 84 DCD I2C0_IRQHandler ; 34 I2C0
mbed_official 577:15494b56c2f3 85 DCD I2C1_IRQHandler ; 35 I2C1
mbed_official 577:15494b56c2f3 86 DCD SPI_IRQHandler ; 36 SPI (LPC43XX ONLY)
mbed_official 577:15494b56c2f3 87 DCD ADC1_IRQHandler ; 37 A/D Converter 1
mbed_official 577:15494b56c2f3 88 DCD SSP0_IRQHandler ; 38 SSP0
mbed_official 577:15494b56c2f3 89 DCD SSP1_IRQHandler ; 39 SSP1
mbed_official 577:15494b56c2f3 90 DCD UART0_IRQHandler ; 40 UART0
mbed_official 577:15494b56c2f3 91 DCD UART1_IRQHandler ; 41 UART1
mbed_official 577:15494b56c2f3 92 DCD UART2_IRQHandler ; 42 UART2
mbed_official 577:15494b56c2f3 93 DCD UART3_IRQHandler ; 43 UART3
mbed_official 577:15494b56c2f3 94 DCD I2S0_IRQHandler ; 44 I2S0
mbed_official 577:15494b56c2f3 95 DCD I2S1_IRQHandler ; 45 I2S1
mbed_official 577:15494b56c2f3 96 DCD SPIFI_IRQHandler ; 46 SPI Flash Interface
mbed_official 577:15494b56c2f3 97 DCD SGPIO_IRQHandler ; 47 SGPIO (LPC43XX ONLY)
mbed_official 577:15494b56c2f3 98 DCD GPIO0_IRQHandler ; 48 GPIO0
mbed_official 577:15494b56c2f3 99 DCD GPIO1_IRQHandler ; 49 GPIO1
mbed_official 577:15494b56c2f3 100 DCD GPIO2_IRQHandler ; 50 GPIO2
mbed_official 577:15494b56c2f3 101 DCD GPIO3_IRQHandler ; 51 GPIO3
mbed_official 577:15494b56c2f3 102 DCD GPIO4_IRQHandler ; 52 GPIO4
mbed_official 577:15494b56c2f3 103 DCD GPIO5_IRQHandler ; 53 GPIO5
mbed_official 577:15494b56c2f3 104 DCD GPIO6_IRQHandler ; 54 GPIO6
mbed_official 577:15494b56c2f3 105 DCD GPIO7_IRQHandler ; 55 GPIO7
mbed_official 577:15494b56c2f3 106 DCD GINT0_IRQHandler ; 56 GINT0
mbed_official 577:15494b56c2f3 107 DCD GINT1_IRQHandler ; 57 GINT1
mbed_official 577:15494b56c2f3 108 DCD EVRT_IRQHandler ; 58 Event Router
mbed_official 577:15494b56c2f3 109 DCD CAN1_IRQHandler ; 59 C_CAN1
mbed_official 577:15494b56c2f3 110 DCD 0
mbed_official 577:15494b56c2f3 111 DCD 0
mbed_official 577:15494b56c2f3 112 DCD ATIMER_IRQHandler ; 62 ATIMER
mbed_official 577:15494b56c2f3 113 DCD RTC_IRQHandler ; 63 RTC
mbed_official 577:15494b56c2f3 114 DCD 0
mbed_official 577:15494b56c2f3 115 DCD WDT_IRQHandler ; 65 WDT
mbed_official 577:15494b56c2f3 116 DCD 0
mbed_official 577:15494b56c2f3 117 DCD CAN0_IRQHandler ; 67 C_CAN0
mbed_official 577:15494b56c2f3 118 DCD QEI_IRQHandler ; 68 QEI
mbed_official 577:15494b56c2f3 119 __Vectors_End
mbed_official 577:15494b56c2f3 120
mbed_official 577:15494b56c2f3 121 __Vectors EQU __vector_table
mbed_official 577:15494b56c2f3 122 __Vectors_Size EQU __Vectors_End - __Vectors
mbed_official 577:15494b56c2f3 123
mbed_official 577:15494b56c2f3 124 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mbed_official 577:15494b56c2f3 125 ;;
mbed_official 577:15494b56c2f3 126 ;; Default interrupt handlers.
mbed_official 577:15494b56c2f3 127 ;;
mbed_official 577:15494b56c2f3 128 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
mbed_official 577:15494b56c2f3 129
mbed_official 577:15494b56c2f3 130 THUMB
mbed_official 577:15494b56c2f3 131
mbed_official 577:15494b56c2f3 132 PUBWEAK Reset_Handler
mbed_official 577:15494b56c2f3 133 SECTION .text:CODE:REORDER(2)
mbed_official 577:15494b56c2f3 134 Reset_Handler
mbed_official 577:15494b56c2f3 135 LDR R0, =SystemInit
mbed_official 577:15494b56c2f3 136 BLX R0
mbed_official 577:15494b56c2f3 137 LDR R0, =__iar_program_start
mbed_official 577:15494b56c2f3 138 BX R0
mbed_official 577:15494b56c2f3 139
mbed_official 577:15494b56c2f3 140 PUBWEAK NMI_Handler
mbed_official 577:15494b56c2f3 141 PUBWEAK HardFault_Handler
mbed_official 577:15494b56c2f3 142 PUBWEAK MemManage_Handler
mbed_official 577:15494b56c2f3 143 PUBWEAK BusFault_Handler
mbed_official 577:15494b56c2f3 144 PUBWEAK UsageFault_Handler
mbed_official 577:15494b56c2f3 145 PUBWEAK SVC_Handler
mbed_official 577:15494b56c2f3 146 PUBWEAK DebugMon_Handler
mbed_official 577:15494b56c2f3 147 PUBWEAK PendSV_Handler
mbed_official 577:15494b56c2f3 148 PUBWEAK SysTick_Handler
mbed_official 577:15494b56c2f3 149 PUBWEAK DAC_IRQHandler
mbed_official 577:15494b56c2f3 150 PUBWEAK MX_CORE_IRQHandler
mbed_official 577:15494b56c2f3 151 PUBWEAK DMA_IRQHandler
mbed_official 577:15494b56c2f3 152 PUBWEAK FLASHEEPROM_IRQHandler
mbed_official 577:15494b56c2f3 153 PUBWEAK ETH_IRQHandler
mbed_official 577:15494b56c2f3 154 PUBWEAK SDIO_IRQHandler
mbed_official 577:15494b56c2f3 155 PUBWEAK LCD_IRQHandler
mbed_official 577:15494b56c2f3 156 PUBWEAK USB0_IRQHandler
mbed_official 577:15494b56c2f3 157 PUBWEAK USB1_IRQHandler
mbed_official 577:15494b56c2f3 158 PUBWEAK SCT_IRQHandler
mbed_official 577:15494b56c2f3 159 PUBWEAK RIT_IRQHandler
mbed_official 577:15494b56c2f3 160 PUBWEAK TIMER0_IRQHandler
mbed_official 577:15494b56c2f3 161 PUBWEAK TIMER1_IRQHandler
mbed_official 577:15494b56c2f3 162 PUBWEAK TIMER2_IRQHandler
mbed_official 577:15494b56c2f3 163 PUBWEAK TIMER3_IRQHandler
mbed_official 577:15494b56c2f3 164 PUBWEAK MCPWM_IRQHandler
mbed_official 577:15494b56c2f3 165 PUBWEAK ADC0_IRQHandler
mbed_official 577:15494b56c2f3 166 PUBWEAK I2C0_IRQHandler
mbed_official 577:15494b56c2f3 167 PUBWEAK I2C1_IRQHandler
mbed_official 577:15494b56c2f3 168 PUBWEAK SPI_IRQHandler
mbed_official 577:15494b56c2f3 169 PUBWEAK ADC1_IRQHandler
mbed_official 577:15494b56c2f3 170 PUBWEAK SSP0_IRQHandler
mbed_official 577:15494b56c2f3 171 PUBWEAK SSP1_IRQHandler
mbed_official 577:15494b56c2f3 172 PUBWEAK UART0_IRQHandler
mbed_official 577:15494b56c2f3 173 PUBWEAK UART1_IRQHandler
mbed_official 577:15494b56c2f3 174 PUBWEAK UART2_IRQHandler
mbed_official 577:15494b56c2f3 175 PUBWEAK UART3_IRQHandler
mbed_official 577:15494b56c2f3 176 PUBWEAK I2S0_IRQHandler
mbed_official 577:15494b56c2f3 177 PUBWEAK I2S1_IRQHandler
mbed_official 577:15494b56c2f3 178 PUBWEAK SPIFI_IRQHandler
mbed_official 577:15494b56c2f3 179 PUBWEAK SGPIO_IRQHandler
mbed_official 577:15494b56c2f3 180 PUBWEAK GPIO0_IRQHandler
mbed_official 577:15494b56c2f3 181 PUBWEAK GPIO1_IRQHandler
mbed_official 577:15494b56c2f3 182 PUBWEAK GPIO2_IRQHandler
mbed_official 577:15494b56c2f3 183 PUBWEAK GPIO3_IRQHandler
mbed_official 577:15494b56c2f3 184 PUBWEAK GPIO4_IRQHandler
mbed_official 577:15494b56c2f3 185 PUBWEAK GPIO5_IRQHandler
mbed_official 577:15494b56c2f3 186 PUBWEAK GPIO6_IRQHandler
mbed_official 577:15494b56c2f3 187 PUBWEAK GPIO7_IRQHandler
mbed_official 577:15494b56c2f3 188 PUBWEAK GINT0_IRQHandler
mbed_official 577:15494b56c2f3 189 PUBWEAK GINT1_IRQHandler
mbed_official 577:15494b56c2f3 190 PUBWEAK EVRT_IRQHandler
mbed_official 577:15494b56c2f3 191 PUBWEAK CAN1_IRQHandler
mbed_official 577:15494b56c2f3 192 PUBWEAK ATIMER_IRQHandler
mbed_official 577:15494b56c2f3 193 PUBWEAK RTC_IRQHandler
mbed_official 577:15494b56c2f3 194 PUBWEAK WDT_IRQHandler
mbed_official 577:15494b56c2f3 195 PUBWEAK CAN0_IRQHandler
mbed_official 577:15494b56c2f3 196 PUBWEAK QEI_IRQHandler
mbed_official 577:15494b56c2f3 197 SECTION .text:CODE:REORDER(1)
mbed_official 577:15494b56c2f3 198 NMI_Handler
mbed_official 577:15494b56c2f3 199 B NMI_Handler
mbed_official 577:15494b56c2f3 200 SVC_Handler
mbed_official 577:15494b56c2f3 201 B SVC_Handler
mbed_official 577:15494b56c2f3 202 DebugMon_Handler
mbed_official 577:15494b56c2f3 203 B DebugMon_Handler
mbed_official 577:15494b56c2f3 204 PendSV_Handler
mbed_official 577:15494b56c2f3 205 B PendSV_Handler
mbed_official 577:15494b56c2f3 206 SysTick_Handler
mbed_official 577:15494b56c2f3 207 B SysTick_Handler
mbed_official 577:15494b56c2f3 208 HardFault_Handler
mbed_official 577:15494b56c2f3 209 B HardFault_Handler
mbed_official 577:15494b56c2f3 210 MemManage_Handler
mbed_official 577:15494b56c2f3 211 B MemManage_Handler
mbed_official 577:15494b56c2f3 212 BusFault_Handler
mbed_official 577:15494b56c2f3 213 B BusFault_Handler
mbed_official 577:15494b56c2f3 214 UsageFault_Handler
mbed_official 577:15494b56c2f3 215 DAC_IRQHandler
mbed_official 577:15494b56c2f3 216 MX_CORE_IRQHandler
mbed_official 577:15494b56c2f3 217 DMA_IRQHandler
mbed_official 577:15494b56c2f3 218 FLASHEEPROM_IRQHandler
mbed_official 577:15494b56c2f3 219 ETH_IRQHandler
mbed_official 577:15494b56c2f3 220 SDIO_IRQHandler
mbed_official 577:15494b56c2f3 221 LCD_IRQHandler
mbed_official 577:15494b56c2f3 222 USB0_IRQHandler
mbed_official 577:15494b56c2f3 223 USB1_IRQHandler
mbed_official 577:15494b56c2f3 224 SCT_IRQHandler
mbed_official 577:15494b56c2f3 225 RIT_IRQHandler
mbed_official 577:15494b56c2f3 226 TIMER0_IRQHandler
mbed_official 577:15494b56c2f3 227 TIMER1_IRQHandler
mbed_official 577:15494b56c2f3 228 TIMER2_IRQHandler
mbed_official 577:15494b56c2f3 229 TIMER3_IRQHandler
mbed_official 577:15494b56c2f3 230 MCPWM_IRQHandler
mbed_official 577:15494b56c2f3 231 ADC0_IRQHandler
mbed_official 577:15494b56c2f3 232 I2C0_IRQHandler
mbed_official 577:15494b56c2f3 233 I2C1_IRQHandler
mbed_official 577:15494b56c2f3 234 SPI_IRQHandler
mbed_official 577:15494b56c2f3 235 ADC1_IRQHandler
mbed_official 577:15494b56c2f3 236 SSP0_IRQHandler
mbed_official 577:15494b56c2f3 237 SSP1_IRQHandler
mbed_official 577:15494b56c2f3 238 UART0_IRQHandler
mbed_official 577:15494b56c2f3 239 UART1_IRQHandler
mbed_official 577:15494b56c2f3 240 UART2_IRQHandler
mbed_official 577:15494b56c2f3 241 UART3_IRQHandler
mbed_official 577:15494b56c2f3 242 I2S0_IRQHandler
mbed_official 577:15494b56c2f3 243 I2S1_IRQHandler
mbed_official 577:15494b56c2f3 244 SPIFI_IRQHandler
mbed_official 577:15494b56c2f3 245 SGPIO_IRQHandler
mbed_official 577:15494b56c2f3 246 GPIO0_IRQHandler
mbed_official 577:15494b56c2f3 247 GPIO1_IRQHandler
mbed_official 577:15494b56c2f3 248 GPIO2_IRQHandler
mbed_official 577:15494b56c2f3 249 GPIO3_IRQHandler
mbed_official 577:15494b56c2f3 250 GPIO4_IRQHandler
mbed_official 577:15494b56c2f3 251 GPIO5_IRQHandler
mbed_official 577:15494b56c2f3 252 GPIO6_IRQHandler
mbed_official 577:15494b56c2f3 253 GPIO7_IRQHandler
mbed_official 577:15494b56c2f3 254 GINT0_IRQHandler
mbed_official 577:15494b56c2f3 255 GINT1_IRQHandler
mbed_official 577:15494b56c2f3 256 EVRT_IRQHandler
mbed_official 577:15494b56c2f3 257 CAN1_IRQHandler
mbed_official 577:15494b56c2f3 258 ATIMER_IRQHandler
mbed_official 577:15494b56c2f3 259 RTC_IRQHandler
mbed_official 577:15494b56c2f3 260 WDT_IRQHandler
mbed_official 577:15494b56c2f3 261 CAN0_IRQHandler
mbed_official 577:15494b56c2f3 262 QEI_IRQHandler
mbed_official 577:15494b56c2f3 263 Default_IRQHandler
mbed_official 577:15494b56c2f3 264 B Default_IRQHandler
mbed_official 577:15494b56c2f3 265
mbed_official 577:15494b56c2f3 266 /* CRP Section - not needed for flashless devices */
mbed_official 577:15494b56c2f3 267
mbed_official 577:15494b56c2f3 268 ;;; SECTION .crp:CODE:ROOT(2)
mbed_official 577:15494b56c2f3 269 ;;; DATA
mbed_official 577:15494b56c2f3 270 /* Code Read Protection
mbed_official 577:15494b56c2f3 271 NO_ISP 0x4E697370 - Prevents sampling of pin PIO0_1 for entering ISP mode
mbed_official 577:15494b56c2f3 272 CRP1 0x12345678 - Write to RAM command cannot access RAM below 0x10000300.
mbed_official 577:15494b56c2f3 273 - Copy RAM to flash command can not write to Sector 0.
mbed_official 577:15494b56c2f3 274 - Erase command can erase Sector 0 only when all sectors
mbed_official 577:15494b56c2f3 275 are selected for erase.
mbed_official 577:15494b56c2f3 276 - Compare command is disabled.
mbed_official 577:15494b56c2f3 277 - Read Memory command is disabled.
mbed_official 577:15494b56c2f3 278 CRP2 0x87654321 - Read Memory is disabled.
mbed_official 577:15494b56c2f3 279 - Write to RAM is disabled.
mbed_official 577:15494b56c2f3 280 - "Go" command is disabled.
mbed_official 577:15494b56c2f3 281 - Copy RAM to flash is disabled.
mbed_official 577:15494b56c2f3 282 - Compare is disabled.
mbed_official 577:15494b56c2f3 283 CRP3 0x43218765 - Access to chip via the SWD pins is disabled. ISP entry
mbed_official 577:15494b56c2f3 284 by pulling PIO0_1 LOW is disabled if a valid user code is
mbed_official 577:15494b56c2f3 285 present in flash sector 0.
mbed_official 577:15494b56c2f3 286 Caution: If CRP3 is selected, no future factory testing can be
mbed_official 577:15494b56c2f3 287 performed on the device.
mbed_official 577:15494b56c2f3 288 */
mbed_official 577:15494b56c2f3 289 ;;; DCD 0xFFFFFFFF
mbed_official 577:15494b56c2f3 290 ;;;
mbed_official 577:15494b56c2f3 291
mbed_official 577:15494b56c2f3 292 END