w25q128移植FlashDB写入速度及存储问题
现象:W25Q128移植了FlashDB,FAL及SFUD,其中FAL的接口采用了SFUD,发现例程写操作里面直接调用了sfud_write,没有将数据读出来并修改,这样是不是有问题?实际测试也发现写入后读出来的数不一致。于是按照以前的套路,先读出一个扇区数据后擦除扇区,然后修改数据后写入扇区,这样读写数据一致了,但是引出另一个问题,就是FlashDB每次写入会有多步操作,如写标志和写数据等等,如此频繁擦除不但写入耗时,而且影响寿命。想问问各位有什么解决方案。还遇到另一个问题就是时不时的FlashDB分区标志数据丢失导致初始化花费大量时间格式化,不知道什么问题?已经增加了掉电检测,掉电时不操作SPI和FAL写操作。
还没有用过这个组件。
有一个问题就是如果做好了擦写均衡,那是没问题的。 1.Сд
2.д 到esp-idf代码里去抠nvs模块呀,这个模块太好用了。 SFUD V7我移植过下面地址有,FlashDB FAL项目用过没什么问题,另外强烈建议移植个LetterShell调试方便到嫑嫑的:lol。
https://github.com/cctv180/V7-028_SPI_Flash_SFUD glory 发表于 2023-5-3 10:36
到esp-idf代码里去抠nvs模块呀,这个模块太好用了。
好东西,给力
https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-reference/storage/nvs_flash.html cctv180 发表于 2023-5-3 14:16
SFUD V7我移植过下面地址有,FlashDB FAL项目用过没什么问题,另外强烈建议移植个LetterShell调试方便到嫑 ...
感谢分享。 FlashDB给了两种数据库的操作类型,键值对数据库和时序数据库,在实际使用过程中,第一次烧录完成FLashDB会在flash内部建表,这个过程会比较慢,有明显的卡顿情况,FlashDB开放的接口个人感觉不是很友好,使用时许数据库存在一个问题,如果时间发生错乱就会出现数据写入失败的情况,这个也是数据库本身的特性,针对时间要求没有那么高的情况下会有隐患,使用该数据库建议改造一下 glory 发表于 2023-5-3 10:36
到esp-idf代码里去抠nvs模块呀,这个模块太好用了。
这个咋是C++写的,能移植到其他MCU么,有没有例程分享下
页:
[1]