NMSIS-Core  Version 1.2.0
NMSIS-Core support for Nuclei processor-based devices
Version Control

Version #define symbols for NMSIS release specific C/C++ source code. More...

Files

file  nmsis_version.h
 NMSIS Version definitions.
 

Macros

#define __NMSIS_VERSION_MAJOR   (1U)
 Represent the NMSIS major version. More...
 
#define __NMSIS_VERSION_MINOR   (2U)
 Represent the NMSIS minor version. More...
 
#define __NMSIS_VERSION_PATCH   (0U)
 Represent the NMSIS patch version. More...
 
#define __NMSIS_VERSION   ((__NMSIS_VERSION_MAJOR << 16U) | (__NMSIS_VERSION_MINOR << 8) | __NMSIS_VERSION_PATCH)
 Represent the NMSIS Version. More...
 
#define __NUCLEI_N_REV   (0x0309)
 Nuclei N class core revision number. More...
 
#define __NUCLEI_NX_REV   (0x0207)
 Nuclei NX class core revision number. More...
 
#define __NUCLEI_CPU_REV   (0x030A01)
 Nuclei CPU core revision number. More...
 
#define __NUCLEI_CPU_SERIES   (0x0200)
 Nuclei CPU core series. More...
 

Detailed Description

Version #define symbols for NMSIS release specific C/C++ source code.

We followed the semantic versioning 2.0.0 to control NMSIS version. The version format is MAJOR.MINOR.PATCH, increment the:

  1. MAJOR version when you make incompatible API changes,
  2. MINOR version when you add functionality in a backwards compatible manner, and
  3. PATCH version when you make backwards compatible bug fixes.

The header file nmsis_version.h is included by each core header so that these definitions are available.

Example Usage for NMSIS Version Check:

#if defined(__NMSIS_VERSION) && (__NMSIS_VERSION >= 0x00010105)
#warning "Yes, we have NMSIS 1.1.5 or later"
#else
#error "We need NMSIS 1.1.5 or later!"
#endif

Macro Definition Documentation

◆ __NMSIS_VERSION

#define __NMSIS_VERSION   ((__NMSIS_VERSION_MAJOR << 16U) | (__NMSIS_VERSION_MINOR << 8) | __NMSIS_VERSION_PATCH)

Represent the NMSIS Version.

NMSIS Version format: MAJOR.MINOR.PATCH

Definition at line 84 of file nmsis_version.h.

◆ __NMSIS_VERSION_MAJOR

#define __NMSIS_VERSION_MAJOR   (1U)

Represent the NMSIS major version.

The NMSIS major version can be used to differentiate between NMSIS major releases.

Definition at line 58 of file nmsis_version.h.

◆ __NMSIS_VERSION_MINOR

#define __NMSIS_VERSION_MINOR   (2U)

Represent the NMSIS minor version.

The NMSIS minor version can be used to query a NMSIS release update including new features.

Definition at line 67 of file nmsis_version.h.

◆ __NMSIS_VERSION_PATCH

#define __NMSIS_VERSION_PATCH   (0U)

Represent the NMSIS patch version.

The NMSIS patch version can be used to show bug fixes in this package.

Definition at line 75 of file nmsis_version.h.

◆ __NUCLEI_CPU_REV

#define __NUCLEI_CPU_REV   (0x030A01)

Nuclei CPU core revision number.

Nuclei RISC-V CPU Revision Number vX.Y.Z, eg. v3.10.1

Attention
This define is exclusive with __NUCLEI_CPU_SERIES

Definition at line 61 of file nmsis_core.h.

◆ __NUCLEI_CPU_SERIES

#define __NUCLEI_CPU_SERIES   (0x0200)

Nuclei CPU core series.

Nuclei RISC-V CPU Series Number, eg, 0x200, 0x300, 0x600, 0x900 for 200, 300, 600, 900 series.

Attention
This define is used together with __NUCLEI_CPU_REV

Definition at line 70 of file nmsis_core.h.

◆ __NUCLEI_N_REV

#define __NUCLEI_N_REV   (0x0309)

Nuclei N class core revision number.

Reversion number format: [15:8] revision number, [7:0] patch number

Attention
Deprecated, this define is exclusive with __NUCLEI_NX_REV

Definition at line 45 of file nmsis_core.h.

◆ __NUCLEI_NX_REV

#define __NUCLEI_NX_REV   (0x0207)

Nuclei NX class core revision number.

Reversion number format: [15:8] revision number, [7:0] patch number

Attention
Deprecated, this define is exclusive with __NUCLEI_N_REV

Definition at line 53 of file nmsis_core.h.