0

在目标上的代码闪存期间,我将数据存储到特定地址的闪存中,并在代码运行时更新(有时)这些数据。

我选择的内存地址是默认的,只是因为它是免费的(代码的任何部分都没有存储在那里)。

问题
我已经对代码进行了一些更新,编译器/链接器现在将部分代码存储在同一个闪存页面上,就在我故意存储的数据旁边,这不能让我重写数据,因为我需要为此拳头擦除页面..

我刚刚将我的数据放在另一个空闲的地方和页面上,现在可以了,但我想知道如何“预订”页面(或闪存区域),然后告诉编译器/链接器不要使用它来存储代码(但仍可用于数据)。

注意:它适用于 STM32F030K6T6,我正在使用 IAR。

4

1 回答 1

0

使用分散文件。将数据存储在向量表之后的部分中。将 cod 放在您的数据之后。数据将始终位于相同的地址。代码将位于它之后。

于 2021-07-17T17:42:42.363 回答