EasyFlash
EasyFlash copied to clipboard
EasyFlash的Env中1个Key可以存储多少字节数据
在我的EasyFlash的配置中,ENV_AREA_SIZE的值为270336。 测试中发现,1、EasyFlash初始化时间大概需要3s,是什么原因造成的?而且随着ENV_AREA_SIZE的值越大,时间越长。 2、最多只可写入218字节数据。写入数据的尺寸是固定的吗?还是在某个宏定义可以修改?
你的 flash 型号是什么?目前 key 对应的 value 理论上只是限制了不能超过一个扇区的大小
Flash是AT91SAM,一个Page的大小为264,我使用ef_set_env_blob()函数写入1个Page,会返回EF_ENV_FULL。
在对Env进行掉电保护测试中,不断地写入数据和掉电,程序会进入ef_env.c的539行:EF_DEBUG("Error: The ENV @0x%08X length has an error.\n", env->addr.start);
可以把 Page 配置大一些,比如 10 倍的 264 大小。底层擦除接口支持多扇区连续擦除,这样也可以用的。