1 /**************************************************************************//** 2 * @file cmsis_xcc.h 3 * @brief CMSIS DSP Core Peripheral Access Layer Header File 4 * @version V1.0 5 * @date 20. January 2019 6 ******************************************************************************/ 7 /* 8 * Copyright (c) 2009-2019 ARM Limited. All rights reserved. 9 * 10 * SPDX-License-Identifier: Apache-2.0 11 * 12 * Licensed under the Apache License, Version 2.0 (the License); you may 13 * not use this file except in compliance with the License. 14 * You may obtain a copy of the License at 15 * 16 * www.apache.org/licenses/LICENSE-2.0 17 * 18 * Unless required by applicable law or agreed to in writing, software 19 * distributed under the License is distributed on an AS IS BASIS, WITHOUT 20 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 21 * See the License for the specific language governing permissions and 22 * limitations under the License. 23 */ 24 25 #ifndef __CORE_DSP_H_GENERIC 26 #define __CORE_DSP_H_GENERIC 27 28 #include <stdint.h> 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 /* IO definitions (access restrictions to peripheral registers) */ 35 /** 36 \defgroup CMSIS_glob_defs CMSIS Global Defines 37 38 <strong>IO Type Qualifiers</strong> are used 39 \li to specify the access to peripheral variables. 40 \li for automatic generation of peripheral register debug information. 41 */ 42 #ifdef __cplusplus 43 #define __I volatile /*!< Defines 'read only' permissions */ 44 #else 45 #define __I volatile const /*!< Defines 'read only' permissions */ 46 #endif 47 #define __O volatile /*!< Defines 'write only' permissions */ 48 #define __IO volatile /*!< Defines 'read / write' permissions */ 49 50 /* following defines should be used for structure members */ 51 #define __IM volatile const /*! Defines 'read only' structure member permissions */ 52 #define __OM volatile /*! Defines 'write only' structure member permissions */ 53 #define __IOM volatile /*! Defines 'read / write' structure member permissions */ 54 55 #define __STATIC_INLINE static inline 56 57 #define __BKPT(value) do {} while(0) 58 #define __NOP() do {} while(0) 59 60 #define NVIC_SetPriorityGrouping(value) do {} while(0) 61 #define NVIC_GetPriorityGrouping() do {} while(0) 62 #define NVIC_EnableIRQ(value) do {} while(0) 63 #define NVIC_GetEnableIRQ(value) do {} while(0) 64 #define NVIC_DisableIRQ(value) do {} while(0) 65 #define NVIC_GetPendingIRQ(value) do {} while(0) 66 #define NVIC_SetPendingIRQ(value) do {} while(0) 67 #define NVIC_ClearPendingIRQ(value) do {} while(0) 68 #define NVIC_GetActive(value) do {} while(0) 69 70 #ifdef __cplusplus 71 } 72 #endif 73 74 #endif /* __CORE_DSP_H_GENERIC */ 75