| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- /**************************************************************************************************/
- /**
- \defgroup version_control_gr Version Control
- \brief Version \#define symbols for CMSIS release specific C/C++ source code
- \details
- The header file <b>cmsis_version.h</b> is included by each core header so that these definitions are available.
- <b>Code Example:</b>
- \code
- #if defined(__CM_CMSIS_VERSION) && \
- (__CM_CMSIS_VERSION >= 0x00050001)
- #error Yes, we have CMSIS 5.1 or later
- #else
- #error We need CMSIS 5.1 or later!
- #endif
- \endcode
- @{
- */
- /**
- \brief Contains the CMSIS major version
- \details The CMSIS major version can be used to differentiate between CMSIS major releases.
- */
- #define __CM_CMSIS_VERSION_MAIN
- /**
- \brief Contains the CMSIS minor version
- \details The CMSIS minor version can be used to query a CMSIS release update level.
- */
- #define __CM_CMSIS_VERSION_SUB
- /**
- \brief Contains the CMSIS version
- \details The CMSIS version is a combination of the \ref __CM_CMSIS_VERSION_MAIN (bits 31..15) and \ref __CM_CMSIS_VERSION_SUB (bits 14..0).
- */
- #define __CM_CMSIS_VERSION
- /**
- \brief Contains the core version for a Cortex-M class controller.
- \details This define can be used to differentiate between the various available Cortex-M controllers.
- Possible values are:
- - 0 for a Cortex-M0 or Cortex-M0+
- - 3 for a Cortex-M3
- - 4 for a Cortex-M4
- - 7 for a Cortex-M7
- - 23 for a Cortex-M23
- - 33 for a Cortex-M33
-
- This define is only available for Cortex-M class controllers.
- <b>Code Example:</b>
- \code
- #if defined(__CORTEX_M) && (__CORTEX_M == 4)
- #error Yes, we have an Cortex-M4 controller.
- #else
- #error We need a Cortex-M4 controller!
- #endif
- \endcode
- */
- #define __CORTEX_M
- /**
- \brief Contains the core version for a Cortex Secure Core controller.
- \details This define can be used to differentiate between the various available Cortex Secure Core controllers.
- Possible values are:
- - 000 for a Cortex-SC000
- - 300 for a Cortex-SC300
-
- This define is only available for Cortex Secure Core controllers.
- <b>Code Example:</b>
- \code
- #if defined(__CORTEX_SC) && (__CORTEX_SC == 300U)
- #error Yes, we have an Cortex SC300 controller.
- #else
- #error We need a Cortex SC300 controller!
- #endif
- \endcode
- */
- #define __CORTEX_SC
- /**
- \defgroup version_control_depricated_gr Version Control per Core (Depricated)
- \brief Version \#define symbols for CMSIS release specific C/C++ source code
- \details
- Prior CMSIS release 5.1.0 the version information was core specific.
- <b>Code Example:</b>
- \code
- #if !defined(__CM_CMSIS_VERSION) && defined(__CORTEX_M)
- #if ((__CORTEX_M == 0) && (__CM0_CMSIS_VERSION >= 0x00050000)) || \
- ((__CORTEX_M == 3) && (__CM3_CMSIS_VERSION >= 0x00050000)) || \
- ((__CORTEX_M == 4) && (__CM4_CMSIS_VERSION >= 0x00050000)) || \
- ((__CORTEX_M == 7) && (__CM7_CMSIS_VERSION >= 0x00050000))
- #error Yes, we have CMSIS 5!
- #else
- #error We need CMSIS 5!
- #endif
- #else
- #error We need a Cortex-M controller!
- #endif
- \endcode
- @{
- */
- /**
- \brief Contains the CMSIS major version for core of type XXX, i.e. CM0 or SC300.
- \details The CMSIS major version can be used to differentiate between CMSIS major releases.
- \deprecated Only rely on this define for CMSIS 5.0 and before.
- */
- #define __XXX_CMSIS_VERSION_MAIN
- /**
- \brief Contains the CMSIS minor version for core of type XXX, i.e. CM0 or SC300.
- \details The CMSIS minor version can be used to query a CMSIS release update level.
- \deprecated Only rely on this define for CMSIS 5.0 and before.
- */
- #define __XXX_CMSIS_VERSION_SUB
- /**
- \brief Contains the CMSIS version for core of type XXX, i.e. CM0 or SC300.
- \details The CMSIS version is a combination of the \ref __CM_CMSIS_VERSION_MAIN (bits 31..15) and \ref __CM_CMSIS_VERSION_SUB (bits 14..0).
- \deprecated Only rely on this define for CMSIS 5.0 and before.
- */
- #define __XXX_CMSIS_VERSION
- /**
- @}
- */
- /**
- @}
- */
|