尊敬的:
我想在控制器存储器中存储一些仪器设置、这些设置可以在运行应用中进行修改、就像使用 EEPROM 存储器一样。
目前,我正在使用 INFO A 段(0x1000到0x1400)来存储数据,但在擦除整个段之前无法重新写入数据。
您能指导我们如何在该存储器中正确写入数据、或者您是否有任何其他解决方案。
我遵循以下流程。
FCTL2 = FWKEY | FSSEL_1 | FN1 | FN3 | FN5;//针对闪存时序发生器的 MCLK/42
if (FCTL3 & LOCKSEG)// If Info Seg is stil locked
{
FCTL3 = FWKEY | LOCKSEG;//清除 LOCKSEG 位
}
FCTL1 = FWKEY | WRT;
/addr 介于0x1000到0x1400之间、用于存储器
void write_EEPROM_memory (uint16 addr、uint16 value )
{
fram1_read =(volatile uint8 *) addr;
*fram1_read =值;
}
uint8 read_EEPROM_MEMORY (uint16 addr )
{
uint8 temp8;
fram1_read =(volatile uint8 *) addr;
返回 *fram1_read;
}