====== How to use CMSIS librairies with Embitz IDE ======
===== Prerequisites =====
You need to have your favorite (if you don't have any clearly defined opinion in the matter, the latest version will do) version of the CMSIS librairie.
You can download it [[https://github.com/ARM-software/CMSIS_5/releases|there]] for the CMSIS v5.
Download the .zip source file.
You also need to have Embitz installed and a project setup for your microcontroller.
Please note you don't need to do any of the following process if you have an Embitz membership (always great to support the project) or if you are using a version earlier to 1.10, in both cases, you should be able to use the plugin manager to add CMSIS to your project.
===== Step by Step process =====
This is the procedure to use DSP librairies on a Cortex M4 core, it should be more detailed and explain to allow others to understand the procedure and adapt it to their needs
1 - First, unzip the library somewhere on you system, let's say it's in C:\CMSIS\PATH\CMSIS_X-X.X.X \\
2 - Open the project build options window in you Embitz project \\
3 - In the "compiler settings" tab, in "C-Flags" sub-tab, add "-lm" in others (not sure it is really needed) \\
4 - In the "Linker settings" tab, in "Linker flags" sub-tab, add "-lm" in others (not sure it is really needed) \\
5 - In the "Linker settings" tab, in "Librairies" sub-tab, click on add and add "arm_cortexM4lf_math", click a second time on add to add "m" \\
6 - In the search directories tab, in the includes sub-tab, add C:\CMSIS\PATH\CMSIS_X-X.X.X\Device\ARM\ARMCM4\Include and add C:\CMSIS\PATH\CMSIS_X-X.X.X\CMSIS\DSP\Include \\
7 - In the search directories tab, in the Linker sub-tab, add C:\CMSIS\PATH\CMSIS_X-X.X.X\CMSIS\Lib\GCC \\
8 - In your project, you can now add the following includes : \\
#include "ARMCM4_FP.h"
#include "arm_math.h"
#include "arm_const_structs.h"
#include "arm_common_tables.h"
You should be able to use CMSIS DSP functions in your project now, happy FFT !