I am trying to emulate an EEPROM on stm32f0. There is a note app provided by STM.
In the sample main.c,
int main(void)
{
FLASH_Unlock();
EE_Init();
for (VarValue = 1; VarValue <= 0x64; VarValue++)
{
EE_WriteVariable(VirtAddVarTab[0], VarValue);
}
EE_ReadVariable(VirtAddVarTab[0], &VarDataTab[0]);
for (VarValue = 1; VarValue <= 0xC8; VarValue++)
{
EE_WriteVariable(VirtAddVarTab[1], VarValue);
}
EE_ReadVariable(VirtAddVarTab[0], &VarDataTab[0]);
EE_ReadVariable(VirtAddVarTab[1], &VarDataTab[1]);
for (VarValue = 1; VarValue <= 0x1C2; VarValue++)
{
EE_WriteVariable(VirtAddVarTab[2], VarValue);
}
EE_ReadVariable(VirtAddVarTab[0], &VarDataTab[0]);
EE_ReadVariable(VirtAddVarTab[1], &VarDataTab[1]);
EE_ReadVariable(VirtAddVarTab[2], &VarDataTab[2]);
while (1);
}
Flash_Unlock()is a feature used in the standard STM peripheral library. However, I use CubeMX, which automatically generates code that uses HAL drivers. Do I need to Flash_Unlock()call before using the EEPROM_emulation API? If so, what is the HAL equivalent for the call Flash_Unlock()? Any special configuration settings to use EEPROM emulation on CubeMX?
user6064424
source
share