Skip to content
This repository was archived by the owner on Jul 21, 2025. It is now read-only.

Commit b94b8ff

Browse files
committed
Initial Commit of CMSIS Pack Version 4.3.0 to GitHub repository
1 parent 0c6ea70 commit b94b8ff

File tree

3,491 files changed

+836358
-0
lines changed

Some content is hidden

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

3,491 files changed

+836358
-0
lines changed

ARM.CMSIS.pdsc

Lines changed: 1347 additions & 0 deletions
Large diffs are not rendered by default.
169 KB
Binary file not shown.

CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.rtf

Lines changed: 793 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
CMSIS DSP_Lib example arm_class_marks_example for
2+
Cortex-M0, Cortex-M3 and Cortex-M4 with FPU
3+
4+
The example is configured for uVision Simulator
Lines changed: 253 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,253 @@
1+
;/**************************************************************************//**
2+
; * @file startup_ARMCM0.s
3+
; * @brief CMSIS Core Device Startup File for
4+
; * ARMCM0 Device Series
5+
; * @version V1.08
6+
; * @date 23. November 2012
7+
; *
8+
; * @note
9+
; *
10+
; ******************************************************************************/
11+
;/* Copyright (c) 2011 - 2012 ARM LIMITED
12+
;
13+
; All rights reserved.
14+
; Redistribution and use in source and binary forms, with or without
15+
; modification, are permitted provided that the following conditions are met:
16+
; - Redistributions of source code must retain the above copyright
17+
; notice, this list of conditions and the following disclaimer.
18+
; - Redistributions in binary form must reproduce the above copyright
19+
; notice, this list of conditions and the following disclaimer in the
20+
; documentation and/or other materials provided with the distribution.
21+
; - Neither the name of ARM nor the names of its contributors may be used
22+
; to endorse or promote products derived from this software without
23+
; specific prior written permission.
24+
; *
25+
; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26+
; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27+
; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28+
; ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
29+
; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30+
; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31+
; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32+
; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33+
; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34+
; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35+
; POSSIBILITY OF SUCH DAMAGE.
36+
; ---------------------------------------------------------------------------*/
37+
;/*
38+
;//-------- <<< Use Configuration Wizard in Context Menu >>> ------------------
39+
;*/
40+
41+
42+
; <h> Stack Configuration
43+
; <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
44+
; </h>
45+
46+
Stack_Size EQU 0x00000400
47+
48+
AREA STACK, NOINIT, READWRITE, ALIGN=3
49+
Stack_Mem SPACE Stack_Size
50+
__initial_sp
51+
52+
53+
; <h> Heap Configuration
54+
; <o> Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
55+
; </h>
56+
57+
Heap_Size EQU 0x00000C00
58+
59+
AREA HEAP, NOINIT, READWRITE, ALIGN=3
60+
__heap_base
61+
Heap_Mem SPACE Heap_Size
62+
__heap_limit
63+
64+
65+
PRESERVE8
66+
THUMB
67+
68+
69+
; Vector Table Mapped to Address 0 at Reset
70+
71+
AREA RESET, DATA, READONLY
72+
EXPORT __Vectors
73+
EXPORT __Vectors_End
74+
EXPORT __Vectors_Size
75+
76+
__Vectors DCD __initial_sp ; Top of Stack
77+
DCD Reset_Handler ; Reset Handler
78+
DCD NMI_Handler ; NMI Handler
79+
DCD HardFault_Handler ; Hard Fault Handler
80+
DCD 0 ; Reserved
81+
DCD 0 ; Reserved
82+
DCD 0 ; Reserved
83+
DCD 0 ; Reserved
84+
DCD 0 ; Reserved
85+
DCD 0 ; Reserved
86+
DCD 0 ; Reserved
87+
DCD SVC_Handler ; SVCall Handler
88+
DCD 0 ; Reserved
89+
DCD 0 ; Reserved
90+
DCD PendSV_Handler ; PendSV Handler
91+
DCD SysTick_Handler ; SysTick Handler
92+
93+
; External Interrupts
94+
DCD WDT_IRQHandler ; 0: Watchdog Timer
95+
DCD RTC_IRQHandler ; 1: Real Time Clock
96+
DCD TIM0_IRQHandler ; 2: Timer0 / Timer1
97+
DCD TIM2_IRQHandler ; 3: Timer2 / Timer3
98+
DCD MCIA_IRQHandler ; 4: MCIa
99+
DCD MCIB_IRQHandler ; 5: MCIb
100+
DCD UART0_IRQHandler ; 6: UART0 - DUT FPGA
101+
DCD UART1_IRQHandler ; 7: UART1 - DUT FPGA
102+
DCD UART2_IRQHandler ; 8: UART2 - DUT FPGA
103+
DCD UART4_IRQHandler ; 9: UART4 - not connected
104+
DCD AACI_IRQHandler ; 10: AACI / AC97
105+
DCD CLCD_IRQHandler ; 11: CLCD Combined Interrupt
106+
DCD ENET_IRQHandler ; 12: Ethernet
107+
DCD USBDC_IRQHandler ; 13: USB Device
108+
DCD USBHC_IRQHandler ; 14: USB Host Controller
109+
DCD CHLCD_IRQHandler ; 15: Character LCD
110+
DCD FLEXRAY_IRQHandler ; 16: Flexray
111+
DCD CAN_IRQHandler ; 17: CAN
112+
DCD LIN_IRQHandler ; 18: LIN
113+
DCD I2C_IRQHandler ; 19: I2C ADC/DAC
114+
DCD 0 ; 20: Reserved
115+
DCD 0 ; 21: Reserved
116+
DCD 0 ; 22: Reserved
117+
DCD 0 ; 23: Reserved
118+
DCD 0 ; 24: Reserved
119+
DCD 0 ; 25: Reserved
120+
DCD 0 ; 26: Reserved
121+
DCD 0 ; 27: Reserved
122+
DCD CPU_CLCD_IRQHandler ; 28: Reserved - CPU FPGA CLCD
123+
DCD 0 ; 29: Reserved - CPU FPGA
124+
DCD UART3_IRQHandler ; 30: UART3 - CPU FPGA
125+
DCD SPI_IRQHandler ; 31: SPI Touchscreen - CPU FPGA
126+
__Vectors_End
127+
128+
__Vectors_Size EQU __Vectors_End - __Vectors
129+
130+
AREA |.text|, CODE, READONLY
131+
132+
133+
; Reset Handler
134+
135+
Reset_Handler PROC
136+
EXPORT Reset_Handler [WEAK]
137+
IMPORT SystemInit
138+
IMPORT __main
139+
LDR R0, =SystemInit
140+
BLX R0
141+
LDR R0, =__main
142+
BX R0
143+
ENDP
144+
145+
146+
; Dummy Exception Handlers (infinite loops which can be modified)
147+
148+
NMI_Handler PROC
149+
EXPORT NMI_Handler [WEAK]
150+
B .
151+
ENDP
152+
HardFault_Handler\
153+
PROC
154+
EXPORT HardFault_Handler [WEAK]
155+
B .
156+
ENDP
157+
SVC_Handler PROC
158+
EXPORT SVC_Handler [WEAK]
159+
B .
160+
ENDP
161+
PendSV_Handler PROC
162+
EXPORT PendSV_Handler [WEAK]
163+
B .
164+
ENDP
165+
SysTick_Handler PROC
166+
EXPORT SysTick_Handler [WEAK]
167+
B .
168+
ENDP
169+
170+
Default_Handler PROC
171+
172+
EXPORT WDT_IRQHandler [WEAK]
173+
EXPORT RTC_IRQHandler [WEAK]
174+
EXPORT TIM0_IRQHandler [WEAK]
175+
EXPORT TIM2_IRQHandler [WEAK]
176+
EXPORT MCIA_IRQHandler [WEAK]
177+
EXPORT MCIB_IRQHandler [WEAK]
178+
EXPORT UART0_IRQHandler [WEAK]
179+
EXPORT UART1_IRQHandler [WEAK]
180+
EXPORT UART2_IRQHandler [WEAK]
181+
EXPORT UART3_IRQHandler [WEAK]
182+
EXPORT UART4_IRQHandler [WEAK]
183+
EXPORT AACI_IRQHandler [WEAK]
184+
EXPORT CLCD_IRQHandler [WEAK]
185+
EXPORT ENET_IRQHandler [WEAK]
186+
EXPORT USBDC_IRQHandler [WEAK]
187+
EXPORT USBHC_IRQHandler [WEAK]
188+
EXPORT CHLCD_IRQHandler [WEAK]
189+
EXPORT FLEXRAY_IRQHandler [WEAK]
190+
EXPORT CAN_IRQHandler [WEAK]
191+
EXPORT LIN_IRQHandler [WEAK]
192+
EXPORT I2C_IRQHandler [WEAK]
193+
EXPORT CPU_CLCD_IRQHandler [WEAK]
194+
EXPORT SPI_IRQHandler [WEAK]
195+
196+
WDT_IRQHandler
197+
RTC_IRQHandler
198+
TIM0_IRQHandler
199+
TIM2_IRQHandler
200+
MCIA_IRQHandler
201+
MCIB_IRQHandler
202+
UART0_IRQHandler
203+
UART1_IRQHandler
204+
UART2_IRQHandler
205+
UART3_IRQHandler
206+
UART4_IRQHandler
207+
AACI_IRQHandler
208+
CLCD_IRQHandler
209+
ENET_IRQHandler
210+
USBDC_IRQHandler
211+
USBHC_IRQHandler
212+
CHLCD_IRQHandler
213+
FLEXRAY_IRQHandler
214+
CAN_IRQHandler
215+
LIN_IRQHandler
216+
I2C_IRQHandler
217+
CPU_CLCD_IRQHandler
218+
SPI_IRQHandler
219+
B .
220+
221+
ENDP
222+
223+
224+
ALIGN
225+
226+
227+
; User Initial Stack & Heap
228+
229+
IF :DEF:__MICROLIB
230+
231+
EXPORT __initial_sp
232+
EXPORT __heap_base
233+
EXPORT __heap_limit
234+
235+
ELSE
236+
237+
IMPORT __use_two_region_memory
238+
EXPORT __user_initial_stackheap
239+
240+
__user_initial_stackheap PROC
241+
LDR R0, = Heap_Mem
242+
LDR R1, =(Stack_Mem + Stack_Size)
243+
LDR R2, = (Heap_Mem + Heap_Size)
244+
LDR R3, = Stack_Mem
245+
BX LR
246+
ENDP
247+
248+
ALIGN
249+
250+
ENDIF
251+
252+
253+
END
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
/**************************************************************************//**
2+
* @file system_ARMCM0.c
3+
* @brief CMSIS Device System Source File for
4+
* ARMCM0 Device Series
5+
* @version V1.08
6+
* @date 23. November 2012
7+
*
8+
* @note
9+
*
10+
******************************************************************************/
11+
/* Copyright (c) 2011 - 2012 ARM LIMITED
12+
13+
All rights reserved.
14+
Redistribution and use in source and binary forms, with or without
15+
modification, are permitted provided that the following conditions are met:
16+
- Redistributions of source code must retain the above copyright
17+
notice, this list of conditions and the following disclaimer.
18+
- Redistributions in binary form must reproduce the above copyright
19+
notice, this list of conditions and the following disclaimer in the
20+
documentation and/or other materials provided with the distribution.
21+
- Neither the name of ARM nor the names of its contributors may be used
22+
to endorse or promote products derived from this software without
23+
specific prior written permission.
24+
*
25+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28+
ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
29+
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31+
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34+
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35+
POSSIBILITY OF SUCH DAMAGE.
36+
---------------------------------------------------------------------------*/
37+
38+
39+
#include "ARMCM0.h"
40+
41+
/*----------------------------------------------------------------------------
42+
Define clocks
43+
*----------------------------------------------------------------------------*/
44+
#define __HSI ( 8000000UL)
45+
#define __XTAL ( 5000000UL) /* Oscillator frequency */
46+
47+
#define __SYSTEM_CLOCK (5*__XTAL)
48+
49+
50+
/*----------------------------------------------------------------------------
51+
Clock Variable definitions
52+
*----------------------------------------------------------------------------*/
53+
uint32_t SystemCoreClock = __SYSTEM_CLOCK;/*!< System Clock Frequency (Core Clock)*/
54+
55+
56+
/*----------------------------------------------------------------------------
57+
Clock functions
58+
*----------------------------------------------------------------------------*/
59+
void SystemCoreClockUpdate (void) /* Get Core Clock Frequency */
60+
{
61+
62+
SystemCoreClock = __SYSTEM_CLOCK;
63+
64+
}
65+
66+
/**
67+
* Initialize the system
68+
*
69+
* @param none
70+
* @return none
71+
*
72+
* @brief Setup the microcontroller system.
73+
* Initialize the System.
74+
*/
75+
void SystemInit (void)
76+
{
77+
78+
SystemCoreClock = __SYSTEM_CLOCK;
79+
80+
}

0 commit comments

Comments
 (0)