@@ -162,10 +162,7 @@ int main(void)
EEPROM_24C02_ClearData(&I2C_Handle_EEPROM, EEPROM_24C02_ADDR_FLAG, EEPROM_24C02_ADDR_END, 0xFF);
EEPROM_Flash_Erase(EEPROM_FLASH_BEGIN_ADDRESS, EEPROM_FLASH_END_ADDRESS);
#endif
-
- //根据EEPROM里存储的开机次数确定是否首次开机
- IsFirstPowerOnFlag = CheckFactoryModeFromEEPROM(&I2C_Handle_EEPROM, EEPROM_24C02_ADDR_RUN_LOG1);
+
//EEPROM_Flash初始化
EEPROM_Flash_Check();//第一次运行 113ms,正常运行 1ms
@@ -565,7 +565,6 @@ extern uint16_t SpeedRatio;
extern uint16_t HardwareVersion_AD;
extern TrueOrFalse_Flag_Struct_t VersionIdentifyFinishedFlag;
extern TrueOrFalse_Flag_Struct_t PowerDown_SaveFlag;
-extern TrueOrFalse_Flag_Struct_t IsFirstPowerOnFlag;
extern Bike_RatioCal_Struct_t Bike_RatioCalParam;
/**************************È«¾Ö±äÁ¿ÉùÃ÷End***************************/
@@ -335,14 +335,10 @@ int8_t EEPROM_24C02_Check(I2C_Handle_Struct_t* I2C_Handle)
{
return(CopyDataFromEEpprom_24C02(I2C_Handle));
}
- else if(IsFirstPowerOnFlag == TRUE) // 数据无效且开机次数为0时,写入默认参数
+ else //数据无效,写入默认参数
return(CopyDefaultDataToEEpprom_24C02(I2C_Handle));
- else
- {
- return ACK_FAIL;
- }
//清除指定区间段有效数据
@@ -476,17 +472,3 @@ int8_t RunLogSave_Process(uint8_t* RunLogIndex)
return 0;
-//根据历史信息中开机次数判断是否进行第一次开机
-TrueOrFalse_Flag_Struct_t CheckFactoryModeFromEEPROM(I2C_Handle_Struct_t* I2C_Handle, uint8_t Addr)
-{
- uint8_t Temp_8[4] = {0};
- //读取存储标志并计算校验码
- EEPROM_24C02_ReadOneByte(I2C_Handle, Addr, Temp_8);
- EEPROM_24C02_ReadOneByte(I2C_Handle, Addr + 1, (Temp_8 + 1));
- EEPROM_24C02_ReadOneByte(I2C_Handle, Addr + 2, (Temp_8 + 2));
- EEPROM_24C02_ReadOneByte(I2C_Handle, Addr + 3, (Temp_8 + 3));
- return((Temp_8[0] & Temp_8[1] & Temp_8[2] & Temp_8[3] == 0xFF) ? TRUE : FALSE);
-}
@@ -233,7 +233,7 @@ void EEPROM_Flash_Check(void)
CopyDataFromEEPROM_Flash();
- else if(IsFirstPowerOnFlag == TRUE) //数据无效且开机次数为0时,写入默认参数
CopyDataToEEPROM_Flash();
@@ -46,7 +46,6 @@ uint16_t SpeedRatio;
uint16_t HardwareVersion_AD=0;
TrueOrFalse_Flag_Struct_t VersionIdentifyFinishedFlag = FALSE;
TrueOrFalse_Flag_Struct_t PowerDown_SaveFlag = FALSE;
-TrueOrFalse_Flag_Struct_t IsFirstPowerOnFlag = FALSE;
Bike_RatioCal_Struct_t Bike_RatioCalParam = {0,0,0,100,10,0,0};//传动比计算
//BMS默认设计信息