Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


new to ST in general... actually new to ARM

Hi,

You can find this kind of examples on ST HAL library examples. Please find below more details.

ST groups their MCUs in families:
STM32F0 - Entry-level ARM Cortex-M0, 16-256 KB Flash, 4-32kB RAM, 48MHz
STM32F1 - Cortex-M3, 16KB-1MB Flash, 4-96kB RAM, 24-72MHz
STM32F2 - Cortex-M3, 128KB-1MB Flash, 64k-128kB RAM, 120MHz
STM32F3 - Cortex-M4 (DSP+FPU), 16KB-512KB Flash, 10k-80kB RAM, 72MHz
STM32F4 - Cortex-M4 (DSP+FPU), 128KB-2048KB Flash, 64k-384kB RAM, 84-180MHz
STM32F7 - Cortex-M7, 512KB-1024KB Flash, 320kB RAM, 216MHz
And Low Power families not listed here

For more details check this page: http://www.st.com/web/en/catalog/mmc/FM141/SC1169?sc=stm32Question

ST provides three kind of boards for starting using their microcontrollers: Discovery, Eval boards and Nucleo boards. From this, Discovery and Nucleo are very affordable. Eval boards are more complex, permits to full explore the microcontroller but are more expensive.

For reference I will use STM32F3 Discovery board: http://eu.mouser.com/ProductDetail/STMicroelectronics/STM32F3DISCOVERY/?qs=sGAEpiMZZMtw0nEwywcFgJyZJO1S2AOEurn3dv8g1%2fA%3dQuestion
This board costs around 10 EUR and has the debugger (STLINK-V2) on-board, so there is no need to buy a separate hardware debugger.

Download STM32CubeMX software from ST. This application is a graphical software configuration tool that allows generating C initialization code using graphical wizards.
Link is here (go to the end of the page in section Get Software): http://www.st.com/web/catalog/tools/FM147/CL1794/SC961/SS1533/PF259242?sc=stm32cubeQuestion
After installing STM32CubeMX, from this application you can download and install ST HAL libraries. For the above mentioned board/microcontroller you have to install “STM32CubeF3”.
(If you need more detailes let me know.)

If you prefer, it is possible to download only the HAL library without STM32CubeMX. On the page above check “Related Tools and Software” section.

Once you have download and installed the library check the Examples folder:
\ST_Cube_Library\Repository\STM32Cube_FW_F3_V1.2.0\Projects\STM32F3-Discovery\Examples\GPIO\GPIO_IOToggle
In the above path directory “ST_Cube_Library” is where I choose to download and install the library and the rest of the path is created by installer (and will be the same for all systems). Then you should go to SW4STM32 - this is the project for OpenSTM32 toolchain. Import this project in System Workbench, build and try to debug.

ST examples are organised as below:
>Projects
>>>>Board_Name
>>>>>>Examples - simple examples demonstrating each peripheral
>>>>>>Demonstrations - the example that runs on board from factory (the most complex example)
>>>>>>Applications - demonstrating FreeRTOS, USB, FAT and other middlewares


Another possibility is to generate the code from CubeMX software, then import this code on System Workbench. The only line that should be added here manually (after the code is imported in SW) is the HAL_GPIO_TogglePin() function.
You have to select you board when start the CubeMX and then Clock and GPIO are correct configured.
At this link is described how to import a CubeMX generated project into System Workbench: http://www.openstm32.org/Importing+a+STCubeMX+generated+projectQuestion