-
-
Couldn't load subscription status.
- Fork 341
Enable SPL for STM32F1 #667
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
|
LGTM lol |
|
I allowed myself to make a tiny addition to the SPL framwork with the option Further I've removed the Tested on real hardware and works fine. |
|
I'm getting the |
|
The SPL builder code is by-default not linking against newlibnano which would provide this function, so you have to do a little addititon yourself like I did here: In the extra_scripts = add_nanolib.pyin the root of the project (same level as Import("env")
env.Append(LINKFLAGS=["--specs=nosys.specs", "--specs=nano.specs"])Keep in mind for |
|
This PR is very useful. |
| "spl", | ||
| "stm32cube", | ||
| "zephyr" | ||
| "zephyr", | ||
| "spl" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spl is repeated.
| "optional": true, | ||
| "owner": "platformio", | ||
| "version": "~2.10201.0" | ||
| "version": "https://github.com/maxgerhardt/pio-framework-spl-stm32.git" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why here change version to an url?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because the platformio/framework-spl@~2.10201.0 is 6 years old and doesn't even contain an stm32f1 folder with the needed files.
|
yeah, we need SPL for stm32f1, badly |
Enables Simple Peripheral LIbrary (SPL) framework support for STM32F1.
Uses the most recent SPL F1 package version 3.6.0 from here.
The SPL framework needs the boards to have an identifying macro like
STM32F10X_MDfor "medium density" device. Instead of computing and adding this to ~50 board files, a on-the-fly identification is made based on chip name and flash size, like the reference manual wants it.Rewrites the spl-blink example to use the SysTick for delay and adds the F1 code to it.
The
package.jsonwas modified to repoint framework-spl to https://github.com/maxgerhardt/pio-framework-spl-stm32.git, which is the latest PlatformIO-provided framework-spl on top of the SPL F1 files. So CI should go through, but this change should be remade by uploading the updated package to the registry and using that in thepackage.json.Note:
build.core, which evaluated tostm32for all previous SPL supported boards, has been replaced withbuild.mcu[0:5], which evaluates to the same. However, STM32F1 maple boards likemaple.jsonhave "maple" as the value here, which breaks the build, hence it was changed.See example project at https://github.com/maxgerhardt/pio-stm32f1-spl-test.