写了一个这样的结构:
typedef struct {
const char name[20];
const char textExtension[4];
const uint32_t size;
const uint32_t date;
const uint32_t time;
const uint32_t adrr;
const uint32_t crc;
const uint32_t reserve[5];
} headerFileList[256];
所有 const 变量。据我了解,它们应该只放在闪存中,但是您如何确保它们保证在那里?我只需要读取结构字段数据,不需要在那里写任何东西。
gcc 编译器具有标准属性
section ("section-name")
在链接文件*.ld中,需要指定section所在的地址空间
FLASH
您可以制作一个常量结构数组,该数组将位于只读部分。然后,很可能不会分配额外的内存。并且数据将仅存储在系统缓存中。
我们查看汇编程序,例如 RO :
考试 :
仅通过
gcc
编译器检查。它的行为如何eclipse
,我不知道。你需要检查自己。