cancel
Showing results for 
Search instead for 
Did you mean: 

STM32L162 FLASH and EEPROM migrating from STM32L1xx_StdPeriph_Driver

Pajdoom
Associate II

I am restoring the programming of an old project on STM32L162ZDT which was using STM32L1xx_StdPeriph_Driver. Switching to STM32CubeL1 LL library (not HAL) gives me problems with FLASH and EEPROM support. Is there any tutorial on how to get through?

6 REPLIES 6
Imen.D
ST Employee

Hello @Pajdoom,

The SPL2LL-Converter tool allows you to convert your SPL application to a Cube one based on LL library.

The AN5044 shows the steps to migrate from your existing STM32 SPL application to STM32Cube LL drivers.

Hope this may bring you some help.

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen

In Help:

Available as standalone software running on Windows,Linux, and macOS operating systems

And for Windows missign *.exe running file ....

Microsoft Windows [Version 10.0.19045.3693]
(c) Microsoft Corporation. Všetky práva vyhradené.

d:\Temp\23-11-21\SPL2LL-Converter_V1.1.0>java -jar spl2ll_converter_gui.jar
Error: Could not find or load main class com.st.spltoll.MainApp
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

d:\Temp\23-11-21\SPL2LL-Converter_V1.1.0>

 

Hi @Pajdoom ,

It seems you have a problem on the setup side, as the tool requires a recommended version for JAVA and Perl.

But after deep check on the Cube firmware side, there is NO ll_flash drivers, so you should migrate manually to HAL drivers.

ImenD_0-1700726775230.png

The tool only provides a set of macros and functions that are related to FLASH and are already declared on the ll_system.h side.

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen

I noticed that LL_FLASH does not exist, so I relied on SPL2LL-Converter to "somehow" convert it...
Will there ever be LL_FLASH?
PS: I don't have anything in FLASH on HAL...

SPL is a relatively simple library, so you can simply take its functions and use them in your program as normal register-based access routines.

JW