本帖最后由 jackielau 于 2018-10-17 16:18 编辑
最近在用stm32做一个项目,但是mcu内部没有EEPROM,一些程序用的参数不好保存,但是板子上有一个25X16,可以用来存参数(当然mcu的Flash也可以保存,但是不好用,为什么???下面说),于是我查着了一些日志型文件系统的资料,写了一个小型变量用的文件系统,空间利用效率比较低(最高50%),但是操作还是很方便的。
文件使用有注释就可以了,移植只需要完善三个函数FlashReadByte()、FlashWriteByte()、FlashEraseArea()分别提供字节读、字节写和区域擦除
鉴于有人觉得我在扯淡,算了,不公开了,有需要的留言或者私信
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
另外:为什么不用stm32的内部flash呢?它只能写入一次。例如:擦写后某处写入0x0F,25X16还可以改为0x00,但是stm32的内部flash不可以。所以这个文件系统不能用于stm32的内部flash(我走了弯路,才发现的啊!!)
扯淡吧,你把这块erase掉,不就可以继续写了
牛逼,凡是flash,非0xff前,都要擦除,又不是eeprom,直接写
当然,可能25X16很牛逼,不需要擦,没用过X16,不作更多评论
对25X16,如果某处数据是0x7F,还可以再次写入0x3F或者1F,而不需要擦除
你说的对,道不同,不相与为谋
一周热门 更多>