2017-11-08 12:37 AM
Hello,
Are the Standard Peripheral Libraries available for L4 series?
If not, maybe it is possible to use StdPeriph from e.g. F4? Register addresses are the same or not?
Maybe there is some way to extract it from HAL lbr?
Best regards,
Kaza
#std-peripheral-lib #stm32-l42017-11-08 01:00 AM
ST has deprecated the old Standard Peripheral Libraries for some years now.
Googling 'STM32L4 Standard Peripheral Libraries' gives:
The later libraries tended to be called, 'DSP & ...' - so
Googling '
STM32L4 DSP and Standard Peripheral Library' gives:
So it looks like you're out of luck.
But why not use the HAL LL (Low-Layer) functions:
See:
2017-11-08 02:13 AM
Hi Andy,
But why not use the HAL LL (Low-Layer) functions:
Because it's superfluous.
You asked... ;)
But seriously, we don't know Kaza's motive. He might want to port older non-L4-SPL code; he might want to see a set of examples; or he might follow best practice whatever that means. LL won't help with the first two; using it for the last one is just question of personal preferences.
JW
2017-11-08 02:22 AM
Thank you for your answers.
I want to use std lbr for few reasons:
- had a lot of problems with HAL lbr (especially with malfunctioning SPI; someone also noticed it and posted here scr from oscilloscope where clk stops ticking to fast) - finally did it with std lbr and worked well
- definitely I've got better control over my HW
- finally, I need to convert project from F1 to L4 which is written using std lbr - I wanted to do it in the easiest way...
Ps. I've extracted from HAL lbr the startup and stm32l4xx.h, so although I've got startup and registers with addresses. Better this than nothing....
Kaza
2017-11-08 04:04 AM
So have you looked at the LL functions?
They are a fairly recent addition to the HAL, and work at a similar level of abstraction to the old StdPeriph.
2017-11-08 04:22 AM
You may want to give a try to
which helps in migrating from SPL based projects to LL.2017-11-08 05:23 AM
Yes, I've looked at them. Very important information is that:
'The low-ayer APIs are designed to be used in standalone mode or combined with the HAL.''The low-layer APIs can be used without calling the HAL driver services.'However, a bit of code will have to be rewritten ;)
I will check that lbr /in the field/ when I solder all components.
If I encounter some problems with that LL functions I will let here know.
Best regards,
KK
2017-11-08 05:28 AM
It looks very interesting and if it work, it will save me a lot of time. I will definitely check it. Thank you!
2017-11-08 05:46 AM
Well, whatever you do - a bit of code is going to have to be re-written!
I wasn't previously aware of the SPL-to-LL converter (suggested by
siorpaes.david
below) - looks like that is the way to go!