free - 如何分配空闲闪存区域(IAR下的STM32)
问题描述
在目标上的代码闪存期间,我将数据存储到特定地址的闪存中,并在代码运行时更新(有时)这些数据。
我选择的内存地址是默认的,只是因为它是免费的(代码的任何部分都没有存储在那里)。
问题:
我已经对代码进行了一些更新,编译器/链接器现在将部分代码存储在同一个闪存页面上,就在我故意存储的数据旁边,这不能让我重写数据,因为我需要为此拳头擦除页面..
我刚刚将我的数据放在另一个空闲的地方和页面上,现在可以了,但我想知道如何“预订”页面(或闪存区域),然后告诉编译器/链接器不要使用它来存储代码(但仍可用于数据)。
注意:它适用于 STM32F030K6T6,我正在使用 IAR。
解决方案
使用分散文件。将数据存储在向量表之后的部分中。将 cod 放在您的数据之后。数据将始终位于相同的地址。代码将位于它之后。
推荐阅读
- java - 无法使用 facebook4j java 发布到 facebook 墙上
- dc.js - 如何同时显示总和和计数
- javascript - How to get addEventListener arguments on
- java - 要求审查和帮助实施逻辑回归模型
- git - 为什么可视代码内部人员中的集成 GIT 不显示更改?
- javascript - 通过字符串路径设置嵌套对象属性
- scala - 如何用源头创造物化价值?
- ios - Is it a good way to pass data to custom view then execute the function?
- javascript - Why isn't my slideshow not working within my HTML?
- javascript - Create a single VCard file with multiple entries using javascript