new to ST in general... actually new to ARM
Nice explanation Ciprian,
Note that creating the proper layout and getting the latest supported firmware from ST can be done simply through System Workbench for STM32:
- Create an empty directory for your workspace to be sure you start from a clean environment
- Create a new C or C++ Ac6 STM32 MCU Project targeting your MCU
- Choose the firmware you want (HAL for example)
- Select the “Extract all firmware in separate folder” check box
- This will creta a generic project, with the wole content of the ST firmware
- This project is by default created closed
- You must open it (right click >> Open project) to look at its content
- This is not a compilable C or C++ project, just a set of files
- Use it to browse through the ST provided files and copy the ones you may need in your own project
- This will creta a generic project, with the wole content of the ST firmware
- Select the “As sources” radio button
- Then the needed firmware elements will be added to your project, not to an external library project
- This may simplify adapting the code and configuration to your needs
- Otherwise the ST firmwares will be loaded in a separate library project, automatically linked to your project
- This will allow to reuse the same library project for several projects
- However some firmwares (notably FreeRTOS) may be copied in your project anyway, as project-specific configuration may be needed
- Currently, as not all additional firmwares are fully configured by System Workbench, the first solution may be simpler to use
- Select the additional components you want to have in your project
- You may also, later on, add more just by draging and dropping from the firmware reference project to your project
Then you project structure will look like the one you manually created and most (if not yet all) include and library paths will be set up automatically.
Bernard