2019-12-14 12:52发布
li.wen 发表于 2015-8-11 21:08 目前这三个就覆盖了我所有的需求了。满足了
sunnydragon 发表于 2015-8-12 20:42 对指针类型有没有需求呢?
learner123 发表于 2015-6-14 17:00 关键看你怎么定义产品,或者说什么级别的产品。 一般,我所说的玩玩的产品,例如国内山寨级别的产品,没 ...
qq302011 发表于 2015-9-20 11:49 #define FLASH_ENV_USING_CRC_CHECK /* the user setting size of ENV, must be word alignment */ #define ...
最多设置5个标签!
对指针类型有没有需求呢?
常用的支持就可以了。不常用的,用户自己转换了再存呗。
对于LZ的问题,那在小型的数据存储器中,你的数据的存储你是怎么解决的,有什么更好的方案分享啊?O(∩_∩)O哈哈~
又向下看了你的回复,那你能不能把那个“较好”的代码分享一下啊,自己水平有限,也希望多学习一下别人的优秀代码,支持开源,共同进步~O(∩_∩)O哈哈~
或者不开源代码,可以开源思路,思路比代码更重要~O(∩_∩)O哈哈~
能否添加一些对相应的宏定义的详细说明,比方说FLASH_ENV_SECTION_SIZE等,在使用中还是有些不太确定,比方说由于F407的FLASH是1M字节,前面几个SECTOR的大小较小,为了节省空间我需要把EASYFLASH使用到的空间定义在这些前面这几个SECTOR,
地址如下
0X08000000-0x08003fff //程序空间
0X08004000-0X0800bfff //EASYFLASH使用
0x0800c000-0X0800ffff//自定义FLASH,我自己坐特殊使用
0X08010000-0x080fffff//程序空间
我不太确定使用环境变量之后,环境变量最大的使用地址会不会超过我的FLASH定义进入我的自定义地址空间,请楼主解答,谢谢
我现在的定义如下:
#define FLASH_ENV_USING_WEAR_LEVELING_MODE
//#define FLASH_ENV_USING_NORMAL_MODE
#define FLASH_ENV_START_ADDR (FLASH_BASE + 16 * 1024) /* on the chip position: 256KB */
/* the minimum size of flash erasure */
#define FLASH_ERASE_MIN_SIZE (16 * 1024) /* it is 128K for compatibility */
#ifdef FLASH_ENV_USING_WEAR_LEVELING_MODE
/* ENV section total bytes size in wear leveling mode. */
#define FLASH_ENV_SECTION_SIZE (2 * FLASH_ERASE_MIN_SIZE)/* 512K */
#else
/* ENV section total bytes size in normal mode. It's equal with FLASH_USER_SETTING_ENV_SIZE */
#define FLASH_ENV_SECTION_SIZE (FLASH_USER_SETTING_ENV_SIZE)
#endif
https://github.com/armink/EasyFl ... /demo/env/stm32f4xx 这个是stm32f4xx平台下的Demo你可以直接打开使用的。
另外我看你使用还是比较旧版本的EasyFlash,建议采用Github上的最新源码,同时Github上还可以在线看到详细的文档,你说的那些宏定义介绍,在文档里面都有描述。
项目Github地址:https://github.com/armink/EasyFlash
项目在线文档地址:https://github.com/armink/EasyFlash/tree/master/docs/zh
一周热门 更多>