使用HAL在STM32f407发现中读/写数据存储到闪存中

时间:2016-04-13 12:47:58

标签: flash-memory eeprom stm32f4

我正在尝试将数据存储在Flash(非易失性存储器)中以便进一步检索。因此,当电源关闭再打开时,我可以从内存中读取数据。

uint32_t address = 0x0800C000;
uint64_t data = 0x01;
HAL_FLASH_Unlock();
HAL_FLASH_Program(TYPEPROGRAM_WORD, address, data);
HAL_FLASH_Lock();

但是我无法将数据存储在这个位置,我不知道为什么?是否有任何函数可以从HAL中的这个位置读取数据?

1 个答案:

答案 0 :(得分:0)

您必须首先擦除Flash,然后才能编写新数据

Storage.Clients.RemoveAll(x => {
    if (x == null || x.IsOutdated()) return true;

    //do something

    return false;
});