Awesome
CMSIS-Toolbox Examples in csolution project format
This is a collection of CMSIS-Toolbox project examples in csolution project format. The project examples are provided for experimentation, exploration and education purposes.
Tool Requirements
The examples use CMSIS-Toolbox 2.6.0 or higher and require additional tools such as CMake, Ninja, Arm Compiler 6, GCC Compiler, and Arm Fixed Virtual Platforms (AVH-FVP).
Refer to Installation of the CMSIS-Toolbox for information on the setup of a development environment with these tools.
When using VS Code with the Arm Environment Manager the required tools are installed based on the settings in the file vcpkg-configuration.json
using the Arm Tools Artifactory.
Project Examples
Examples in this repository:
csolution project | Description |
---|---|
Hello | A simple project to get started. Requires no hardware as it runs on AVH-FVP simulation models. |
DualCore | Application with multiple processors that runs on the NXP FRDM-K32L3A6 board. |
SimpleTrustZone | Simple TrustZone example that shows the concept of secure and non-secure projects. Runs on AVH-FVP simulation models. |
CubeMX | Project that uses STM32Cube for device configuration and contains a RAM and ROM target. |
Each csolution project example shows different aspects of the CMSIS-Toolbox. For example, the CubeMX csolution project contains two targets that show RAM and ROM execution.
Build Projects
Before you build projects, ensure that the pack index on your local computer is up-to-date with the command.
> cpackget update-index
The project files contain a list of software packs that are used. When using the cbuild
tool option --packs
these packs are downloaded during the build process as shown in the following example command line:
> cbuild Hello.csolution.yml --packs --context-set --toolchain AC6 --rebuild
Template Projects
The directory Templates may be used as starting point for different types of embedded applications: simple single core, multi-core, TrustZone, and unit test.
GitHub Action Workflows
The directory .ci contains the required setup for the Continuous Integration (CI) test of these examples with GitHub action workflows. The tools are downloaded from the Arm Tools Artifactory. The test results are available in the Actions view.
Examples in Other Repositories
Source | Description |
---|---|
github.com/Arm-Examples | A collection of several example projects |
AWS_MQTT_MutualAuth_Demo | MQTT demo that uses layers for re-targeting to different physical boards |
AVH_CI_Template | CI Template for unit test automation that uses GitHub Actions |