]> begriffs open source - cmsis/blob - CMSIS/Core/Template/Device_M/Include/system_Device.h
Reworked CMSIS-Core(M) and Core(A) docs for CMSIS 6. (#47)
[cmsis] / CMSIS / Core / Template / Device_M / Include / system_Device.h
1 /*************************************************************************//**
2  * @file     system_<Device>.h
3  * @brief    CMSIS-Core(M) Device Peripheral Access Layer Header File for
4  *           Device <Device>
5  * @version  V1.0.1
6  * @date     11. July 2022
7  *****************************************************************************/
8 /*
9  * Copyright (c) 2009-2022 Arm Limited. All rights reserved.
10  *
11  * SPDX-License-Identifier: Apache-2.0
12  *
13  * Licensed under the Apache License, Version 2.0 (the License); you may
14  * not use this file except in compliance with the License.
15  * You may obtain a copy of the License at
16  *
17  * www.apache.org/licenses/LICENSE-2.0
18  *
19  * Unless required by applicable law or agreed to in writing, software
20  * distributed under the License is distributed on an AS IS BASIS, WITHOUT
21  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22  * See the License for the specific language governing permissions and
23  * limitations under the License.
24  */
25  
26 /* ToDo: rename this file from 'system_Device.h' to 'system_<Device>.h according to your device naming */
27
28 #ifndef SYSTEM_<Device>_H   /* ToDo: replace '<Device>' with your device name */
29 #define SYSTEM_<Device>_H
30
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34
35 #include <stdint.h>
36
37 /**
38   \brief Exception / Interrupt Handler Function Prototype
39 */
40 typedef void(*VECTOR_TABLE_Type)(void);
41
42 /**
43   \brief System Clock Frequency (Core Clock)
44 */
45 extern uint32_t SystemCoreClock;
46
47 /**
48   \brief Setup the microcontroller system.
49
50    Initialize the System and update the SystemCoreClock variable.
51  */
52 extern void SystemInit (void);
53
54
55 /**
56   \brief  Update SystemCoreClock variable.
57
58    Updates the SystemCoreClock with current core Clock retrieved from cpu registers.
59  */
60 extern void SystemCoreClockUpdate (void);
61
62 #ifdef __cplusplus
63 }
64 #endif
65
66 #endif /* SYSTEM_<Device>_H */