2020-07-27 01:58 PM
I want to use the CMSIS DSP library for doing some FFTs. I am planning to use a STM32H745 micro and am prototyping on a NUCLEO-144 (H745ZI-Q) board. It seems that CubeMX does not support adding the DSP library for the 745 micro, I am guessing because it has both an M7 and M4 core in it, which is confusing CubeMX. Adding the DSP library is an option for the similar, M7-only 743 micro (though, I tried making a project for a 743 for reference, and the resulting code did not work). I was able to copy files manually and use a function from the DSP library that way, but this did not survive regenerating the code.
Is there an easy way I can get the tools to cooperate and let me use the CMSIS DSP library? Does anyone know the correct #defines to use? I think I added ARM_MATH_CM7 and __FPU_PRESENT=1 to get it to compile.
2020-07-27 02:57 PM
I use cubemx to generate a base project that i import into eclipse. You need to copy the dsp and lib subdirectories from the h7 repository into the drivers/cmsis folder in your project and then in the project properties of the m7 add an include to the dsp/include dir and add the libraries you want to use. Set the m4 to software fp. When you compile the project, both m4 and m7 makes will compile whatever source code is in the dsp/source directory.
2020-07-31 04:43 PM
I don't know if it is the same. But I added manually the arm_cortexM7lfsp_math.a files to my project. Cost me a day to find out that you should not type the lib in front of the library. So only arm_cortexM7lfsp_math.a (not libarm_ ..) and copied the include files to the inc directory.