|
发表于 2023-10-17 09:21:30
|
显示全部楼层
本帖最后由 tomzbj 于 2023-10-17 09:25 编辑
上传个我的
我一般把eeprom所在页放在bootloader的后面, app的前面, 比如bootloader占了8k, 那么eeprom所在页首地址是0x08002000, app启动时执行FLASH_EEPROM_Config(0x08002000, 1024)这样就可以.
不用bootloader的话, 放flash最后也是可以的.
一般读写用这两个函数
void FLASH_EEPROM_WriteData(unsigned short addr, void* data, int num);
void FLASH_EEPROM_ReadData(unsigned short addr, void* data, int num)
把所有要放在eeprom里的数据打包放在一个结构体里, 比如叫struct { ... } eep;
读的时候就FLASH_EEPROM_ReadData(0, &eep, sizeof(eep)), 写的时候FLASH_EEPROM_WriteData(0, &eep, sizeof(eep)), 完事了.
已经在几个产品上用了.
还没有用上二分查找, 目前还是顺序查找, 谁有兴趣可以优化一下. |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|