This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
#define WRITE_SIZE 128
#pragma PERSISTENT(FRAM_write)
unsigned char FRAM_write[WRITE_SIZE] = {0};
void FRAMWrite(unsigned char *buff,unsigned char len)
{
unsigned int i=0;
for ( i= 0; i < len; i++)
{
FRAM_write[i] = buff[i];
}
}
void FRAMRead(unsigned char *buff,unsigned char len)
{
unsigned int i=0;
for ( i= 0; i < len; i++)
{
buff[i]= FRAM_write[i] ;
}
}
对,ram肯定会擦除掉,我保存数据是保存在fram,ram肯定不行啊,仿真器不能设置fram某些区域不擦除?而且ti给的例程没有指定写fram的的地址,怎么才能读写指定地址的fram,或者用ti的例程可以把仿真器设置为不擦除那块fram
重新加载代码时会重新初始化 PERSISTENT 数据。 (复位时不会重新初始化。)为避免这种情况,可以使用 NOINIT [参考CC User Guide (SLAU132U) Sec 5.12.22]。 使用 NOINIT 需要注意:
1) 需要修改CCS download设置“Project->Properties->Debug->MSP430 Flash Settings”更改为“Replacewritten”或“..necessary segment”。(或者使用Information Memory。)
2) 代码必须指定何时初始化该区域,因为它的内容是不确定的。