ODeV framework is available for STM32F0
11/08/19 02:26
This framework has been designed for complex low power embedded application. So it seem natural to me to port the framework to STM32F0 family. In this way we have more design choice by taking advantage from the STM32 portfolio.
The framework has been tested on a NUCLEO-F070RB board.
This demo has been created has a branch from the master_l0. This is because STM32L0 and STM32F0 are based on ARM Cortex-M0 and ARM Cortex-M0+ core, so they have a common architecture and we can use the same portable layer of FreeRTOS.
In fact, it is interesting to give a look at the difference between the F0 and L0 source code of the simple demo.
The first things we observe are the modification in the Kernel layer:
⁃ The STM32L0-HAL library is changed from L0 to F0
⁃ The CMSIS files are changed from L0 to F0
⁃ As we noted the FreeRTOS portable layer is the same
All these changes are a simple copy paste of the new files after deleting the old ones. Of course we need to change some project settings.
We also need to change the linker script. Except this, there are very few files, at application level, and a couple of files at the service layer (these are the files xxx_mx.c) that we need to modify or change.
That is all. Now we can reuse all the Managed Task we developed for STM32L4 and STM32L0 also with STM32F0.
The source code is available in the master_f0 branch of the GIT repository.
The framework has been tested on a NUCLEO-F070RB board.
This demo has been created has a branch from the master_l0. This is because STM32L0 and STM32F0 are based on ARM Cortex-M0 and ARM Cortex-M0+ core, so they have a common architecture and we can use the same portable layer of FreeRTOS.
In fact, it is interesting to give a look at the difference between the F0 and L0 source code of the simple demo.
The first things we observe are the modification in the Kernel layer:
⁃ The STM32L0-HAL library is changed from L0 to F0
⁃ The CMSIS files are changed from L0 to F0
⁃ As we noted the FreeRTOS portable layer is the same
All these changes are a simple copy paste of the new files after deleting the old ones. Of course we need to change some project settings.
We also need to change the linker script. Except this, there are very few files, at application level, and a couple of files at the service layer (these are the files xxx_mx.c) that we need to modify or change.
That is all. Now we can reuse all the Managed Task we developed for STM32L4 and STM32L0 also with STM32F0.
The source code is available in the master_f0 branch of the GIT repository.
blog comments powered by Disqus