Browse Source

美顺保护板升级测试,未升级成功

CHENJIE-PC\QiXiang_CHENJIE 3 years ago
parent
commit
18b3bd4b19
2 changed files with 6 additions and 6 deletions
  1. 1 1
      inc/app.h
  2. 5 5
      src/UartTask.c

+ 1 - 1
inc/app.h

@@ -51,7 +51,7 @@ extern "C" {
 #define	BLSWVERSION		0x01020000    //BootLoader版本号V1.2.0.0
 #define	DRVSWVERSION		0x01050000     //驱动层版本号V1.4.0.0  驱动层1.5.0.0,增加了三轴
 //#define	APPSWVERSION		0x01020209     
-#define	APPSWVERSION		0x02030022
+#define	APPSWVERSION		0x02030023
 //#define	APPSWVERSION		0x0201000E
 //--------------------------------------------------------------------------------
 

+ 5 - 5
src/UartTask.c

@@ -2288,17 +2288,17 @@ updateBMSStatus MS_BMS_Update_Service() //美顺BMS升级服务
 	updateDataTotalByteLen = ((ReadNVMTemp[0]<<24)&0xFF000000) | ((ReadNVMTemp[1]<<16)&0xFF0000) | ((ReadNVMTemp[2]<<8)&0xFF00) | (ReadNVMTemp[3]&0xFF) ;
 	updateDataPackageCount = (updateDataTotalByteLen+(64-1))/64;  //进一法 e = (a+(b-1))/b	
 
-	for(i=0; i<((updateDataTotalByteLen+4)+(64-1))/64;i++)
+	for(i=0; i<((updateDataTotalByteLen+headerLen-1)+(64-1))/64;i++)//
 	{
 		memset(ReadNVMTemp, 0, 64);
-		if((i+1)*64 < (updateDataTotalByteLen+4))
+		if((i+1)*64 <= (updateDataTotalByteLen+headerLen-1))
 		{	
 			tempLen = 64;
 			BSP_QSPI_Read_Safe(ReadNVMTemp,FLASH_BMS_FOTA_START_ADDR+1+i*64,64);
 		}
 		else
 		{
-			tempLen = (updateDataTotalByteLen+4) - i*64;
+			tempLen = (updateDataTotalByteLen+headerLen-1) - i*64;
 			BSP_QSPI_Read_Safe(ReadNVMTemp,FLASH_BMS_FOTA_START_ADDR+1+i*64,tempLen);
 		}
 		
@@ -2597,14 +2597,14 @@ updateBMSStatus MS_BMS_Update_Service() //美顺BMS升级服务
 
 					memset(ReadNVMTemp, 0, 64);
 					
-					if((i+1)*64 < (updateDataTotalByteLen))
+					if((i+1)*64 <= (updateDataTotalByteLen))
 					{	
 						tempLen = 64;
 						BSP_QSPI_Read_Safe(ReadNVMTemp,FLASH_BMS_FOTA_START_ADDR+headerLen+i*64,64);
 					}
 					else
 					{
-						tempLen = (updateDataTotalByteLen+4) - i*64;
+						tempLen = (updateDataTotalByteLen) - i*64;//
 						BSP_QSPI_Read_Safe(ReadNVMTemp,FLASH_BMS_FOTA_START_ADDR+headerLen+i*64,tempLen);
 					}