本帖最后由 bolizhicheng204 于 2018-3-30 10:20 编辑
经常用flash、EEROM保存参数。最笨的办法就是自己计算每一个变量的位置,一个个写入,这个办法效率极其低下,每次修改都要改 一大堆 东西。后来采用结构体和共用体配合的方式,效率高很多。其实论坛里很多人都用这个办法,我做了一些修改,特此分享。欢迎指正!
大概思路:结构体里面放置各种参数变量,在写一个共用体,把刚才的结构体和一个数组放一起,这样数组和结构体公用内存,其数据就可以相互访问了。
此处以芯片内部flash读写为例,见图
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1)联合体的末尾有多少个填充单元
2)联合体的各个成员如何对齐
3)多字节的数据类型高低字节如何排放顺序
4)如果包含位字段 (bit-field),各位如何排放
因为这四个原因在不同系统、不同编译器下有太多可能,所以MISRA直接就不准使用了。
一周热门 更多>