cancel
Showing results for 
Search instead for 
Did you mean: 

STM32Cube Bug: L1, HAL Flash, Data EEPROM, Cat.1 Devices

tad
Associate
Posted on October 01, 2015 at 15:54

Installed file: STM32Cube_FW_L1_V1.3.0

STM32L1 Cat.1 devices can't successfully write a zero byte, or half-word, to data EEPROM using the HAL function HAL_FLASHEx_DATAEEPROM_Program().

The problem is that HAL_FLASHEx_DATAEEPROM_Program() indirectly calls itself, causing __HAL_LOCK(&pFlash) to be called twiced without an intervening call to __HAL_UNLOCK(&pFlash).

An example path:

HAL_FLASHEx_DATAEEPROM_Program(FLASH_TYPEPROGRAMDATA_BYTE, EEPROM_START_ADDR, 0);

FLASH_DATAEEPROM_ProgramByte(Address, (uint8_t) Data); [in stm32l1xx_hal_flash_ex.c]

HAL_FLASHEx_DATAEEPROM_Program(FLASH_TYPEPROGRAMDATA_FASTWORD, (Address & 0xFFFFFFFC), tmp); [in stm32l1xx_hal_flash_ex.c]

#eeprom #bug #stm32cube
2 REPLIES 2
Posted on October 02, 2015 at 16:57

Hi ashlock.tad,

Your reported issue is under investigation by the development team.

Thank you for your feedback.

-Shahrzad-

Posted on January 25, 2016 at 19:26

Hi ashlock.tad,

The issue is confirmed and the fix will be delivered in next releases.

-Shahrzad-