mbed library sources: Modified to operate FRDM-KL25Z at 48MHz from internal 32kHz oscillator (nothing else changed).
Fork of mbed-src by
The only file that changed is: mbed-src-FLL48/targets/cmsis/TARGET_Freescale/TARGET_KL25Z/system_MKL25Z4.h
targets/cmsis/TARGET_NXP/TARGET_LPC81X/TARGET_LPC810/TOOLCHAIN_ARM_MICRO/startup_LPC8xx.s@20:4263a77256ae, 2013-09-10 (annotated)
- Committer:
- bogdanm
- Date:
- Tue Sep 10 15:14:19 2013 +0300
- Revision:
- 20:4263a77256ae
Sync with git revision 171dda705c947bf910926a0b73d6a4797802554d
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bogdanm | 20:4263a77256ae | 1 | ;/***************************************************************************** |
bogdanm | 20:4263a77256ae | 2 | ; * @file: startup_LPC8xx.s |
bogdanm | 20:4263a77256ae | 3 | ; * @purpose: CMSIS Cortex-M0+ Core Device Startup File |
bogdanm | 20:4263a77256ae | 4 | ; * for the NXP LPC8xx Device Series |
bogdanm | 20:4263a77256ae | 5 | ; * @version: V1.0 |
bogdanm | 20:4263a77256ae | 6 | ; * @date: 16. Aug. 2012 |
bogdanm | 20:4263a77256ae | 7 | ; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------ |
bogdanm | 20:4263a77256ae | 8 | ; * |
bogdanm | 20:4263a77256ae | 9 | ; * Copyright (C) 2012 ARM Limited. All rights reserved. |
bogdanm | 20:4263a77256ae | 10 | ; * ARM Limited (ARM) is supplying this software for use with Cortex-M0+ |
bogdanm | 20:4263a77256ae | 11 | ; * processor based microcontrollers. This file can be freely distributed |
bogdanm | 20:4263a77256ae | 12 | ; * within development tools that are supporting such ARM based processors. |
bogdanm | 20:4263a77256ae | 13 | ; * |
bogdanm | 20:4263a77256ae | 14 | ; * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED |
bogdanm | 20:4263a77256ae | 15 | ; * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF |
bogdanm | 20:4263a77256ae | 16 | ; * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. |
bogdanm | 20:4263a77256ae | 17 | ; * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR |
bogdanm | 20:4263a77256ae | 18 | ; * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. |
bogdanm | 20:4263a77256ae | 19 | ; * |
bogdanm | 20:4263a77256ae | 20 | ; *****************************************************************************/ |
bogdanm | 20:4263a77256ae | 21 | |
bogdanm | 20:4263a77256ae | 22 | |
bogdanm | 20:4263a77256ae | 23 | ; <h> Stack Configuration |
bogdanm | 20:4263a77256ae | 24 | ; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> |
bogdanm | 20:4263a77256ae | 25 | ; </h> |
bogdanm | 20:4263a77256ae | 26 | |
bogdanm | 20:4263a77256ae | 27 | Stack_Size EQU 0x00000200 |
bogdanm | 20:4263a77256ae | 28 | |
bogdanm | 20:4263a77256ae | 29 | AREA STACK, NOINIT, READWRITE, ALIGN=3 |
bogdanm | 20:4263a77256ae | 30 | EXPORT __initial_sp |
bogdanm | 20:4263a77256ae | 31 | |
bogdanm | 20:4263a77256ae | 32 | Stack_Mem SPACE Stack_Size |
bogdanm | 20:4263a77256ae | 33 | __initial_sp EQU 0x10000400 |
bogdanm | 20:4263a77256ae | 34 | |
bogdanm | 20:4263a77256ae | 35 | |
bogdanm | 20:4263a77256ae | 36 | ; <h> Heap Configuration |
bogdanm | 20:4263a77256ae | 37 | ; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> |
bogdanm | 20:4263a77256ae | 38 | ; </h> |
bogdanm | 20:4263a77256ae | 39 | |
bogdanm | 20:4263a77256ae | 40 | Heap_Size EQU 0x00000000 |
bogdanm | 20:4263a77256ae | 41 | |
bogdanm | 20:4263a77256ae | 42 | AREA HEAP, NOINIT, READWRITE, ALIGN=3 |
bogdanm | 20:4263a77256ae | 43 | EXPORT __heap_base |
bogdanm | 20:4263a77256ae | 44 | EXPORT __heap_limit |
bogdanm | 20:4263a77256ae | 45 | |
bogdanm | 20:4263a77256ae | 46 | __heap_base |
bogdanm | 20:4263a77256ae | 47 | Heap_Mem SPACE Heap_Size |
bogdanm | 20:4263a77256ae | 48 | __heap_limit |
bogdanm | 20:4263a77256ae | 49 | |
bogdanm | 20:4263a77256ae | 50 | PRESERVE8 |
bogdanm | 20:4263a77256ae | 51 | THUMB |
bogdanm | 20:4263a77256ae | 52 | |
bogdanm | 20:4263a77256ae | 53 | |
bogdanm | 20:4263a77256ae | 54 | ; Vector Table Mapped to Address 0 at Reset |
bogdanm | 20:4263a77256ae | 55 | |
bogdanm | 20:4263a77256ae | 56 | AREA RESET, DATA, READONLY |
bogdanm | 20:4263a77256ae | 57 | EXPORT __Vectors |
bogdanm | 20:4263a77256ae | 58 | |
bogdanm | 20:4263a77256ae | 59 | __Vectors DCD __initial_sp ; Top of Stack |
bogdanm | 20:4263a77256ae | 60 | DCD Reset_Handler ; Reset Handler |
bogdanm | 20:4263a77256ae | 61 | DCD NMI_Handler ; NMI Handler |
bogdanm | 20:4263a77256ae | 62 | DCD HardFault_Handler ; Hard Fault Handler |
bogdanm | 20:4263a77256ae | 63 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 64 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 65 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 66 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 67 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 68 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 69 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 70 | DCD SVC_Handler ; SVCall Handler |
bogdanm | 20:4263a77256ae | 71 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 72 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 73 | DCD PendSV_Handler ; PendSV Handler |
bogdanm | 20:4263a77256ae | 74 | DCD SysTick_Handler ; SysTick Handler |
bogdanm | 20:4263a77256ae | 75 | |
bogdanm | 20:4263a77256ae | 76 | ; External Interrupts |
bogdanm | 20:4263a77256ae | 77 | DCD SPI0_IRQHandler ; SPI0 controller |
bogdanm | 20:4263a77256ae | 78 | DCD SPI1_IRQHandler ; SPI1 controller |
bogdanm | 20:4263a77256ae | 79 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 80 | DCD UART0_IRQHandler ; UART0 |
bogdanm | 20:4263a77256ae | 81 | DCD UART1_IRQHandler ; UART1 |
bogdanm | 20:4263a77256ae | 82 | DCD UART2_IRQHandler ; UART2 |
bogdanm | 20:4263a77256ae | 83 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 84 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 85 | DCD I2C_IRQHandler ; I2C controller |
bogdanm | 20:4263a77256ae | 86 | DCD SCT_IRQHandler ; Smart Counter Timer |
bogdanm | 20:4263a77256ae | 87 | DCD MRT_IRQHandler ; Multi-Rate Timer |
bogdanm | 20:4263a77256ae | 88 | DCD CMP_IRQHandler ; Comparator |
bogdanm | 20:4263a77256ae | 89 | DCD WDT_IRQHandler ; PIO1 (0:11) |
bogdanm | 20:4263a77256ae | 90 | DCD BOD_IRQHandler ; Brown Out Detect |
bogdanm | 20:4263a77256ae | 91 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 92 | DCD WKT_IRQHandler ; Wakeup timer |
bogdanm | 20:4263a77256ae | 93 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 94 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 95 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 96 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 97 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 98 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 99 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 100 | DCD 0 ; Reserved |
bogdanm | 20:4263a77256ae | 101 | DCD PININT0_IRQHandler ; PIO INT0 |
bogdanm | 20:4263a77256ae | 102 | DCD PININT1_IRQHandler ; PIO INT1 |
bogdanm | 20:4263a77256ae | 103 | DCD PININT2_IRQHandler ; PIO INT2 |
bogdanm | 20:4263a77256ae | 104 | DCD PININT3_IRQHandler ; PIO INT3 |
bogdanm | 20:4263a77256ae | 105 | DCD PININT4_IRQHandler ; PIO INT4 |
bogdanm | 20:4263a77256ae | 106 | DCD PININT5_IRQHandler ; PIO INT5 |
bogdanm | 20:4263a77256ae | 107 | DCD PININT6_IRQHandler ; PIO INT6 |
bogdanm | 20:4263a77256ae | 108 | DCD PININT7_IRQHandler ; PIO INT7 |
bogdanm | 20:4263a77256ae | 109 | |
bogdanm | 20:4263a77256ae | 110 | |
bogdanm | 20:4263a77256ae | 111 | IF :LNOT::DEF:NO_CRP |
bogdanm | 20:4263a77256ae | 112 | AREA |.ARM.__at_0x02FC|, CODE, READONLY |
bogdanm | 20:4263a77256ae | 113 | CRP_Key DCD 0xFFFFFFFF |
bogdanm | 20:4263a77256ae | 114 | ENDIF |
bogdanm | 20:4263a77256ae | 115 | |
bogdanm | 20:4263a77256ae | 116 | |
bogdanm | 20:4263a77256ae | 117 | AREA |.text|, CODE, READONLY |
bogdanm | 20:4263a77256ae | 118 | |
bogdanm | 20:4263a77256ae | 119 | |
bogdanm | 20:4263a77256ae | 120 | ; Reset Handler |
bogdanm | 20:4263a77256ae | 121 | |
bogdanm | 20:4263a77256ae | 122 | Reset_Handler PROC |
bogdanm | 20:4263a77256ae | 123 | EXPORT Reset_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 124 | IMPORT SystemInit |
bogdanm | 20:4263a77256ae | 125 | IMPORT __main |
bogdanm | 20:4263a77256ae | 126 | LDR R0, =SystemInit |
bogdanm | 20:4263a77256ae | 127 | BLX R0 |
bogdanm | 20:4263a77256ae | 128 | LDR R0, =__main |
bogdanm | 20:4263a77256ae | 129 | BX R0 |
bogdanm | 20:4263a77256ae | 130 | ENDP |
bogdanm | 20:4263a77256ae | 131 | |
bogdanm | 20:4263a77256ae | 132 | |
bogdanm | 20:4263a77256ae | 133 | ; Dummy Exception Handlers (infinite loops which can be modified) |
bogdanm | 20:4263a77256ae | 134 | ; now, under COMMON lpc8xx_nmi.c and lpc8xx_nmi.h, a real NMI handler is created if NMI is enabled |
bogdanm | 20:4263a77256ae | 135 | ; for particular peripheral. |
bogdanm | 20:4263a77256ae | 136 | ;NMI_Handler PROC |
bogdanm | 20:4263a77256ae | 137 | ; EXPORT NMI_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 138 | ; B . |
bogdanm | 20:4263a77256ae | 139 | ; ENDP |
bogdanm | 20:4263a77256ae | 140 | HardFault_Handler\ |
bogdanm | 20:4263a77256ae | 141 | PROC |
bogdanm | 20:4263a77256ae | 142 | EXPORT HardFault_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 143 | B . |
bogdanm | 20:4263a77256ae | 144 | ENDP |
bogdanm | 20:4263a77256ae | 145 | SVC_Handler PROC |
bogdanm | 20:4263a77256ae | 146 | EXPORT SVC_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 147 | B . |
bogdanm | 20:4263a77256ae | 148 | ENDP |
bogdanm | 20:4263a77256ae | 149 | PendSV_Handler PROC |
bogdanm | 20:4263a77256ae | 150 | EXPORT PendSV_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 151 | B . |
bogdanm | 20:4263a77256ae | 152 | ENDP |
bogdanm | 20:4263a77256ae | 153 | SysTick_Handler PROC |
bogdanm | 20:4263a77256ae | 154 | EXPORT SysTick_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 155 | B . |
bogdanm | 20:4263a77256ae | 156 | ENDP |
bogdanm | 20:4263a77256ae | 157 | |
bogdanm | 20:4263a77256ae | 158 | Default_Handler PROC |
bogdanm | 20:4263a77256ae | 159 | |
bogdanm | 20:4263a77256ae | 160 | EXPORT NMI_Handler [WEAK] |
bogdanm | 20:4263a77256ae | 161 | EXPORT SPI0_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 162 | EXPORT SPI1_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 163 | EXPORT UART0_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 164 | EXPORT UART1_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 165 | EXPORT UART2_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 166 | EXPORT I2C_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 167 | EXPORT SCT_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 168 | EXPORT MRT_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 169 | EXPORT CMP_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 170 | EXPORT WDT_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 171 | EXPORT BOD_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 172 | |
bogdanm | 20:4263a77256ae | 173 | EXPORT WKT_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 174 | |
bogdanm | 20:4263a77256ae | 175 | EXPORT PININT0_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 176 | EXPORT PININT1_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 177 | EXPORT PININT2_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 178 | EXPORT PININT3_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 179 | EXPORT PININT4_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 180 | EXPORT PININT5_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 181 | EXPORT PININT6_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 182 | EXPORT PININT7_IRQHandler [WEAK] |
bogdanm | 20:4263a77256ae | 183 | |
bogdanm | 20:4263a77256ae | 184 | NMI_Handler |
bogdanm | 20:4263a77256ae | 185 | SPI0_IRQHandler |
bogdanm | 20:4263a77256ae | 186 | SPI1_IRQHandler |
bogdanm | 20:4263a77256ae | 187 | UART0_IRQHandler |
bogdanm | 20:4263a77256ae | 188 | UART1_IRQHandler |
bogdanm | 20:4263a77256ae | 189 | UART2_IRQHandler |
bogdanm | 20:4263a77256ae | 190 | I2C_IRQHandler |
bogdanm | 20:4263a77256ae | 191 | SCT_IRQHandler |
bogdanm | 20:4263a77256ae | 192 | MRT_IRQHandler |
bogdanm | 20:4263a77256ae | 193 | CMP_IRQHandler |
bogdanm | 20:4263a77256ae | 194 | WDT_IRQHandler |
bogdanm | 20:4263a77256ae | 195 | BOD_IRQHandler |
bogdanm | 20:4263a77256ae | 196 | WKT_IRQHandler |
bogdanm | 20:4263a77256ae | 197 | PININT0_IRQHandler |
bogdanm | 20:4263a77256ae | 198 | PININT1_IRQHandler |
bogdanm | 20:4263a77256ae | 199 | PININT2_IRQHandler |
bogdanm | 20:4263a77256ae | 200 | PININT3_IRQHandler |
bogdanm | 20:4263a77256ae | 201 | PININT4_IRQHandler |
bogdanm | 20:4263a77256ae | 202 | PININT5_IRQHandler |
bogdanm | 20:4263a77256ae | 203 | PININT6_IRQHandler |
bogdanm | 20:4263a77256ae | 204 | PININT7_IRQHandler |
bogdanm | 20:4263a77256ae | 205 | |
bogdanm | 20:4263a77256ae | 206 | B . |
bogdanm | 20:4263a77256ae | 207 | |
bogdanm | 20:4263a77256ae | 208 | ENDP |
bogdanm | 20:4263a77256ae | 209 | |
bogdanm | 20:4263a77256ae | 210 | ALIGN |
bogdanm | 20:4263a77256ae | 211 | END |