大家好、我测试一下我们的评估板 MSP-EXP430FR5994。 我在将变量保存到 FRAM 存储器中时遇到问题。
我使用了 pragma "#pragma NOINIT (x)"和"#pragma persistent (x)"和值保存到存储器中、以及何时将器件复位或关闭变量保存到存储器中。 但当我调试或升级固件时、值会消失。 我需要将其用于保存器件配置。 持久性设置为 tu 默认值(在我的示例中为10)、NOINIT 设置为0xFFFF。 是否有任何解决方案会将任何值保存到 FRAM 存储器中并在升级 FW 或调试之前保持相同值?
#pragma NOINIT (rstCount)
#pragma 位置(rstCount、0x004400)
uint16_t rstCount;
#pragma PERSISTENT (rstCount2)
#pragma Retain (rstCount2)
uint16_t rstCount2 = 10;
uint16_t firstInit = 1;
int main (void){
WDT_A_HOLD ();
//此处是任意时钟初始化、WDG 初始化、时钟初始化等
firstInit = 1;
while (1){
if (firstInit){
firstInit = 0;
rstCount++;
rstCount2++;
//正数据 PO UART0
EUSCI_A_UART0_TRANSDATA (rstCount);
}
}
}