MPS430,写入flash的数据发生了变化,什么原因啊?
MPS430,写入flash的数据运行一段时间后就发生了变化,大神帮忙看看什么原因啊?串口写如数据段如下://串口只设置一次
Flash_ptr = (char *)0x1040; // Initialize Flash pointer
FCTL3 = FWKEY; // Clear Lock bit
FCTL1 = FWKEY + ERASE; // Set Erase bit
*Flash_ptr = 0; // Dummy write to erase Flash seg
FCTL1 = FWKEY + WRT; // Set WRT bit for write operation
*Flash_ptr++ = RX_BUF; // Write value to flash
*Flash_ptr++ = RX_BUF; // Write value to flash
FCTL1 = FWKEY; // Clear WRT bit
FCTL3 = FWKEY + LOCK; // Set LOCK bit
TX_BUF=0xBB; TX_BUF=0X0A;//command
TX_BUF=Zi_ID;TX_BUF=Zi_ID;//???
TX_BUF=RX_BUF; TX_BUF=RX_BUF;//????
TX_BUF=1; //len
TX_BUF=0xff;
Flash_ptr = (char *)0x1040; // Initialize Flash pointer
ZADDRS1 = *Flash_ptr++;
ZADDRS2 = *Flash_ptr++;
//回复
片子上电时读flash:
char *Flash_ptr; // Flash pointer
//////////////////////////////////////////////
Flash_ptr = (char *)0x1040; // Initialize Flash pointer
Zi_ID = *Flash_ptr++;
Zi_ID = *Flash_ptr++;
其他再没有什么地方操作flash了。
运行一段时间之后有的设备的地址就变了,大神帮忙看看是这两点程序的问题吗? 有大神么?能看出什么问题来吗 查查程序中有没有其它写flash的地方
sunyaqi 发表于 2018-9-27 09:45
查查程序中有没有其它写flash的地方
再没有别的地方使用了 flash操作的时候关闭中断
页:
[1]