ARM Cortex-M
Contents
Introduction
This manual describes the porting details of the ERIKA Enterprise v3 kernel(s) for families of microcontrollers which integrate ARM Cortex-M CPUs.
Cortex-M features supported
The following are the main features of the currently implemented support:
- Development tools
- CPUs
- Microcontrollers
- ST STM32F4 Family
- STM32F407VGT6 specific MCU
- NXP i.MX8M Family
- i.MX8MQ6 specific MCU
- NXP S32K1xx Family
- S32K144 specific MCU
- S32K148 specific MCU
- ST STM32F4 Family
- Evaluation boards
- External Libraries
Additionally, we are porting ERIKA3 also on a ARM Cortex-M7 CPU on ST 32F746GDISCOVERY board with STM32F746NG MCU.
In the next months, the public code will be delivered through the GitHub repository. In case of urgent need, please contact us.
Configuration and Programming
ERIKA Enterprise is configured through RT-Druid and an OIL file and some other properties.
The following sections describe the properties and OIL fields customized for ARM Cortex-M architecture.
GCC Compiler Path
It is possible to choose the path in three different ways:
- Specific environment variables: ARM_TOOLS
- E.g.: ARM_TOOLS=C:\Program Files (x86)\GNU Tools ARM Embedded\4.9 2015q3
- RT-Druid Eclipse IDE Property.
- RT-Druid Configuration File Entry: preference_cortex_m__path_for_gcc_compiler
- E.g.: preference_cortex_m__path_for_gcc_compiler=C:\Program Files (x86)\GNU Tools ARM Embedded\4.9 2015q3
Here is an example of RT-Druid configuration file.
S32 SDK Path
It is possible to choose the path in three different ways:
- Specific environment variables: S32_SDK_FILES
- E.g.: S32_SDK_FILES=C:\NXP\S32DS_ARM_v2.0\S32DS\S32SDK_S32K14x_EAR_0.8.4
- RT-Druid Eclipse IDE Property.
- RT-Druid Configuration File Entry: preference_cortex_m__path_for_s32_sdk
- E.g.: preference_cortex_m__path_for_s32_sdk=C:\NXP\S32DS_ARM_v2.0\S32DS\S32SDK_S32K14x_EAR_0.8.4
Here is an example of RT-Druid configuration file.
Lauterbach TRACE32 Path
It is possible to choose the path in two different ways:
- RT-Druid Eclipse IDE Property.
- RT-Druid Configuration File Entry: preference_lauterbach__path_for_trace32
- E.g.: preference_lauterbach__path_for_trace32=C:\T32
Here is an example of RT-Druid configuration file.
Lauterbach Emulator Interface
It is possible to choose the path in two different ways:
- RT-Druid Eclipse IDE Property.
- RT-Druid Configuration File Entry: preference_lauterbach__emulator_usb_interface
- E.g.: preference_lauterbach__emulator_usb_interface=true
Here is an example of RT-Druid configuration file.
CPU
CPU_DATA object must be set to CORTEX_M.
MODEL attribute of MCU_DATA supports for now the M4 value only.
Example of a CPU_DATA section:
CPU_DATA = CORTEX_M{ MODEL = M4; ... };
Tutorials
The following tutorials are available for this architecture: