1、定义的结构体大小大于等于4K,保存整个结构到flash中的env分区的时候会报错,
使用的是小华的MCU,一个扇区的大小是8K,给env分区分配了24K的大小,也就是3个扇区,
flashdb的开销占用了一个扇区,只有2个扇区的空间来保存配置数据。
2个扇区有16K的大小,用了10796字节,空闲的空间大小应该有5588字节,保存5120字节的配置数据出现失败。个人怀疑有可能是一个扇区8K
没有哪个扇区还有5168字节的空闲导致的,应该是2个扇区的空闲加起来才大于5168字节,但是flashdb保存配置会检查一个扇区中是否有足够的空间来存储,没有的话就报full,
所以这里就有限制,不能一次性保存大于扇区一半大小的数据。
最后一个图是自己验证的结果
感觉flashdb保存数据,必须要预留足够的空间,太浪费了,关键是flash还不是很够用,flashdb这边有什么优化措施吗