Преглед на файлове

CPU工程中优化sysinfo数据保存异常问题:
移植spi nand falsh驱动时统一封装了读写接口,保存sysinfo数据前未先执行擦除操作,导致数据保存失败。

helen преди 2 месеца
родител
ревизия
4746e3e181
променени са 1 файла, в които са добавени 3 реда и са изтрити 3 реда
  1. 3 3
      amt630hv160-freertos-beta/ArkmicroFiles/libboard-amt630hv160/source/sysinfo.c

+ 3 - 3
amt630hv160-freertos-beta/ArkmicroFiles/libboard-amt630hv160/source/sysinfo.c

@@ -24,7 +24,7 @@ int ReadSysInfo(void)
 	checksum = xcrc32((unsigned char*)&sysinfo, sizeof(SysInfo) - 4, 0xffffffff, HARD_CALC_CRC);
 	if (checksum == sysinfo.checksum) {
 		/* copy sysinfo to flash offset SYSINFO_OFFSET */
-		flash_write(SYSINFO_OFFSET, sizeof(SysInfo), (void*)&sysinfo);
+		flash_erase_write(SYSINFO_OFFSET, sizeof(SysInfo), (void*)&sysinfo);
 		return 0;
 	}
 
@@ -40,6 +40,6 @@ SysInfo *GetSysInfo(void)
 void SaveSysInfo(void)
 {
 	sysinfo.checksum = xcrc32((unsigned char*)&sysinfo, sizeof(SysInfo) - 4, 0xffffffff, HARD_CALC_CRC);
-	flash_write(SYSINFO_OFFSET, sizeof(SysInfo), (void*)&sysinfo);
-	flash_write(SYSINFO_B_OFFSET, sizeof(SysInfo), (void*)&sysinfo);
+	flash_erase_write(SYSINFO_OFFSET, sizeof(SysInfo), (void*)&sysinfo);
+	flash_erase_write(SYSINFO_B_OFFSET, sizeof(SysInfo), (void*)&sysinfo);
 }