大家好、
我修改了 MSP430闪存示例以覆盖 MSP430闪存而不擦除。 如果我理解正确写入闪存、那么这应该会失败(因为您不能在不擦除的情况下将0转换为1)。
但奇怪的是、这似乎起作用了。 我想了解这样做是否会损坏闪存。 这是示例中的修改代码。
void write_Sega (char value) { char * Flash_ptr; //闪存指针 unsigned int i; Flash_ptr =(char *) 0xBE00; //初始化闪存指针 FCTL3 = FWKEY; //清除锁定位 FCTL1 = FWKEY + WRT; //将 WRT 位设置为 (i=0;i<128;i++) { * Flash_ptr = i; //覆盖工作 } FCTL1 = FWKEY; //清除 WRT 位 FCTL3 = FWKEY + LOCK; //设置锁定位 }