论坛元老
- 积分
- 10652
- 金钱
- 10652
- 注册时间
- 2017-4-14
- 在线时间
- 2780 小时
|
本帖最后由 275891381 于 2018-6-27 22:14 编辑
0:stm32f103c8t6
1:no_system_set.h 里面的宏 STM32_FLASH_EEPROM 定义用最后几k做eeprom,代码自动识别FLASH容量大小 (c8t6说是64k,实际一般能用128k,自己百度)
2:在原子代码的基础上封装了下面两个函数,方便使用
FLASH_EEPROM_Read(u8 *pBuffer,u32 ReadAddr,u16 NumToRead)//从指定地址开始读出指定长度的数据,自定义0-STM32_FLASH_EEPROM 地址
FLASH_EEPROM_Write(u8 *pBuffer,u32 WriteAddr,u16 NumToWrite)//从指定地址开始写入指定长度的数据,自定义0-STM32_FLASH_EEPROM 地址
3:下载的时候,魔术棒里面别选择erase full chip (一般选erase sectors)的话一般代码不超过总的flash减去STM32_FLASH_EEPROM 的大小,下载代码也不会擦除模拟的eeprom
4:假如自己需要的eeprom位数小于16位,可以直接用选项字节,封装了下面两个函数,选项字节是啥发过专门的帖子,可以去看看
u16 OptionByte_Read(void) //两个8字节合成1个16字节使用
void OptionByte_Write(u16 data)//两个8字节合成1个16字节使用
5:下载好代码,不停地按复位,可以看到数据都是+1的变化
flash模拟eeprom 选项字节.rar
(287.95 KB, 下载次数: 246)
|
|