工具/软件:Code Composer Studio
大家好,
我想将参数保存到主存储器和/或信息存储器中。
我尝试了两种记忆
在主内存中:在调试模式下,我成功地写入和读取了内存。
但是,在运行时,数据不会更改或不正确(无法写入和无法读取)
在信息内存中,调试和运行时都无法写入和读取。
可能是配置问题?
现在,我要保存一个字符,但我需要保存更多字符和短路参数。
以下是此问题的代码(使用信息存储器):
void LoadParameters()
{
短M1,m2;
ReadFromFlash((char*)0x1040,(char*)&cnt_By_idx);// Count_by
IF (cnt_By_idx < 0 || cnt_By_idx > count_By_ARR_LEN - 1)
cnt_by_idx =3;
}
void SaveParameters()
{
WriteToFlash((char*)0x1040,(char)cnt_by_idx);// Count_by
}
void WriteToFlash(char*地址,char val)
{
CHAR* FLASH_PTR;
FCTL3 = FWKEY;
FLASH_PTR =地址; //初始化闪存指针
while (FCTL3和BUSY);
FCTL1 = FWKEY + WRT;
*FLASH_PTR = val;
while (FCTL3和BUSY);
FCTL1 = FWKEY; //清除WRT位
FCTL3 = FWKEY + LOCK; //设置锁定位
}
void ReadFromFlash(char* address,char* val)
{
CHAR* FLASH_PTR;
FLASH_PTR =地址;
while (FCTL3和BUSY);
*val =*FLASH_PTR;
}