Other Parts Discussed in Thread: MSP430F6720
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
部件号: MSP430F6720
尊敬的专家:
我们将在工业控制系统中使用的器件中使用 MSP430F6720 处理器。 我们在存储设备参数的信息存储器中遇到数据丢失的情况、原因是我们无法精确定位。 我们使用以下代码作为闪存的写入例程。 对于解决此问题、您有什么建议吗?
void Write()
{
WDTCTL=WDTPW+WDTHOLD+WDTTMSEL;
int *Flash_ptr=(int *) 0x1800; // Flash pointer
unsigned int i;
FCTL3 = FWKEY; // Clear Lock bit
FCTL1 = FWKEY + ERASE; // Set Erase bit
*Flash_ptr = 0; // Dummy write to erase Flash segment
FCTL1 = FWKEY + WRT; // Set WRT bit for write operation
for (i=1; i<MenuSon; i++)
{
*Flash_ptr++ = *(Menu[i].Address); // Write value to flash
}
FCTL1 = FWKEY; // Clear WRT bit
FCTL3 = FWKEY + LOCK; // Set LOCK bit
WDTCTL=WDT_ADLY_1000;
}
此致、
Marvin
