|
@@ -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);
|
|
|
}
|
|
|
|