flash末尾填写版本号问题
目的:在flash末尾存放软件版本号过程:
1.flash地址:
flash start address:0x08000000 ,flash end address:0x08003fff
2.版本号结构体:
#define MAJOR_VERSION 1
#define MINOR_VERSION 0
#define PATCH_VERSION 0
typedef struct
{
uint32_t major_version;
uint32_t minor_version;
uint32_t patch_version;
uint32_t code_crc32;
}soft_version_info_t;
const soft_version_info_t soft_version __attribute__((at(0x08003ff0)))
={MAJOR_VERSION,MINOR_VERSION,PATCH_VERSION,0};
3.问题:
1.超出28字节,发现末尾有RW数据自动放置FLASH末尾,导致超出flash
map文件
4.请教如何修改,使RW数据,不自动放在flash末尾
版本号定义到末尾会出现生成的bin文件偏大的问题。
采用这个方法,简单易用。
C文件定义
https://img.anfulai.cn/dz/attachment/forum/202207/22/185031bp2f96f4eeffuuea.png
启动汇编文件声明
https://img.anfulai.cn/dz/attachment/forum/202207/22/185041zmcvj23kv4333eze.png
读取的时候获取的是变量的地址,你用指针变量读取这个地址的内容即可。
eric2013 发表于 2023-9-17 11:28
版本号定义到末尾会出现生成的bin文件偏大的问题。
采用这个方法,简单易用。
谢谢,硬汉哥 学习之~ 留个记号
页:
[1]