123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- /*
- ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- */
- /**
- * @file STM32F1xx/cmparams.h
- * @brief ARM Cortex-M3 parameters for the STM32F1xx.
- *
- * @defgroup ARMCMx_STM32F1xx STM32F1xx Specific Parameters
- * @ingroup ARMCMx_SPECIFIC
- * @details This file contains the Cortex-M4 specific parameters for the
- * STM32F1xx platform.
- * @{
- */
- #ifndef CMPARAMS_H
- #define CMPARAMS_H
- /**
- * @brief Cortex core model.
- */
- #define CORTEX_MODEL 3
- /**
- * @brief Floating Point unit presence.
- */
- #define CORTEX_HAS_FPU 0
- /**
- * @brief Number of bits in priority masks.
- */
- #define CORTEX_PRIORITY_BITS 4
- /* If the device type is not externally defined, for example from the Makefile,
- then a file named board.h is included. This file must contain a device
- definition compatible with the vendor include file.*/
- #if !defined(STM32F100xB) && !defined(STM32F100xE) && \
- !defined(STM32F101x6) && !defined(STM32F101xB) && \
- !defined(STM32F101xE) && !defined(STM32F101xG) && \
- !defined(STM32F102x6) && !defined(STM32F102xB) && \
- !defined(STM32F103x6) && !defined(STM32F103xB) && \
- !defined(STM32F103xE) && !defined(STM32F103xG) && \
- !defined(STM32F105xC) && !defined(STM32F107xC)
- #include "board.h"
- #endif
- /**
- * @brief Number of interrupt vectors.
- * @note This number does not include the 16 system vectors and must be
- * rounded to a multiple of 8.
- */
- #define CORTEX_NUM_VECTORS 72
- /* The following code is not processed when the file is included from an
- asm module.*/
- #if !defined(_FROM_ASM_)
- /* Including the device CMSIS header. Note, we are not using the definitions
- from this header because we need this file to be usable also from
- assembler source files. We verify that the info matches instead.*/
- #include "stm32f1xx.h"
- /*lint -save -e9029 [10.4] Signedness comes from external files, it is
- unpredictable but gives no problems.*/
- #if CORTEX_MODEL != __CORTEX_M
- #error "CMSIS __CORTEX_M mismatch"
- #endif
- #if CORTEX_PRIORITY_BITS != __NVIC_PRIO_BITS
- #error "CMSIS __NVIC_PRIO_BITS mismatch"
- #endif
- /*lint -restore*/
- #endif /* !defined(_FROM_ASM_) */
- #endif /* CMPARAMS_H */
- /** @} */
|