Commit ee2b9e9e authored by 李向行's avatar 李向行

feat:易行T06_检测台初版

parent aa623c40
...@@ -102,9 +102,9 @@ void SendCan0Message(void) ...@@ -102,9 +102,9 @@ void SendCan0Message(void)
//20ms //20ms
SendCanMessage20msTimer = Timer10msCnts; SendCanMessage20msTimer = Timer10msCnts;
InitBuf(); InitBuf();
CanSendCan0Msg(0x610, MOT_610 , 8,1); // CanSendCan0Msg(0x610, MOT_610 , 8,1);
CanSendCan0Msg(0x067, MOT_67 , 8,1); // CanSendCan0Msg(0x067, MOT_67 , 8,1);
CanSendCan0Msg(0x101, MOT_101 , 8,1); // CanSendCan0Msg(0x101, MOT_101 , 8,1);
// CanSendCan0Msg(0x391, BCM_1_Door_Light, 8,1); // CanSendCan0Msg(0x391, BCM_1_Door_Light, 8,1);
// CanSendCan0Msg(0x176, OBC_CC_ConnectSts, 8,1); // CanSendCan0Msg(0x176, OBC_CC_ConnectSts, 8,1);
// CanSendCan0Msg(0x177, BMS_ChargeStatus, 8,1); // CanSendCan0Msg(0x177, BMS_ChargeStatus, 8,1);
...@@ -118,13 +118,15 @@ void SendCan0Message(void) ...@@ -118,13 +118,15 @@ void SendCan0Message(void)
//TimeoutMessagePro(); //TimeoutMessagePro();
// CanSendCan0Msg(0x480, PEPS_1, 8,1); // CanSendCan0Msg(0x480, PEPS_1, 8,1);
CanSendCan0Msg(0x0A10FFE0, YX_0x0A10FFE0, 8,1);
CanSendCan0Msg(0x0A10FFE1, YX_0x0A10FFE1, 8,1);
} }
if ((Timer10msCnts > SendCanMessage100msTimer) && ((Timer10msCnts - SendCanMessage100msTimer) >= 98)) { if ((Timer10msCnts > SendCanMessage100msTimer) && ((Timer10msCnts - SendCanMessage100msTimer) >= 98)) {
//100 ms //100 ms
SendCanMessage100msTimer = Timer10msCnts; SendCanMessage100msTimer = Timer10msCnts;
InitBuf(); InitBuf();
CanSendCan0Msg(0x600, MOT_600 , 8,1); // CanSendCan0Msg(0x600, MOT_600 , 8,1);
// CanSendCan0Msg(0x315, VCU_4_ICMDisp, 8,1); // CanSendCan0Msg(0x315, VCU_4_ICMDisp, 8,1);
// CanSendCan0Msg(0x449, AVAS_SwitchFb, 8,1 ); // CanSendCan0Msg(0x449, AVAS_SwitchFb, 8,1 );
// CanSendCan0Msg(0x3A5, VCU_RegenerationLevelSts ,8,1); // CanSendCan0Msg(0x3A5, VCU_RegenerationLevelSts ,8,1);
...@@ -136,6 +138,12 @@ void SendCan0Message(void) ...@@ -136,6 +138,12 @@ void SendCan0Message(void)
// if((g_Stage == STAGE_Other) && ((HJ_OtherKeyCurrent.count == 2) || (HJ_OtherKeyCurrent.count >= 3))) { // if((g_Stage == STAGE_Other) && ((HJ_OtherKeyCurrent.count == 2) || (HJ_OtherKeyCurrent.count >= 3))) {
// CanSendCan0Msg(0x401, ECU_401 ,8,1); // CanSendCan0Msg(0x401, ECU_401 ,8,1);
// } // }
CanSendCan0Msg(0x0A33FFE3, YX_0x0A33FFE3 ,8,1);
CanSendCan0Msg(0x0A20FFE2, YX_0x0A20FFE2 ,8,1);
CanSendCan0Msg(0x0A30FFE8, YX_0x0A30FFE8 ,8,1);
CanSendCan0Msg(0x0A30FFE3, YX_0x0A30FFE3 ,8,1);
CanSendCan0Msg(0x0A22FFE2, YX_0x0A22FFE2 ,8,1);
YX_0x0A20FFE2.msg.bits.P_File_Status = 2;
...@@ -145,12 +153,17 @@ void SendCan0Message(void) ...@@ -145,12 +153,17 @@ void SendCan0Message(void)
SendCanMessage200msTimer = Timer10msCnts; SendCanMessage200msTimer = Timer10msCnts;
InitBuf(); InitBuf();
// CanSendCan0Msg(0x50E, CGW6, 8,1); // CanSendCan0Msg(0x50E, CGW6, 8,1);
CanSendCan0Msg(0x0A32FFE4, YX_0x0A32FFE4 ,8,1);
CanSendCan0Msg(0x0A30DDE8, YX_0x0A30DDE8 ,8,1);
CanSendCan0Msg(0x0A37FFE3, YX_0x0A37FFE3 ,8,1);
CanSendCan0Msg(0x0A18FFE0, YX_0x0A18FFE0 ,8,1);
YX_0x0A37FFE3.msg.bits.Telephone_Reminder = 1; //鏉ョ數鏄剧ず
} }
if ((Timer10msCnts > SendCanMessage500msTimer) && ((Timer10msCnts - SendCanMessage500msTimer) >= 500)) { if ((Timer10msCnts > SendCanMessage500msTimer) && ((Timer10msCnts - SendCanMessage500msTimer) >= 500)) {
// 500ms // 500ms
SendCanMessage500msTimer = Timer10msCnts; SendCanMessage500msTimer = Timer10msCnts;
InitBuf(); InitBuf();
CanSendCan0Msg(0x611, MOT_611 , 8,1); // CanSendCan0Msg(0x611, MOT_611 , 8,1);
// CanSendCan0Msg(0x5D1, MCU_MotorTempWarning, 8,1); // CanSendCan0Msg(0x5D1, MCU_MotorTempWarning, 8,1);
// CanSendCan0Msg(0x51B, TPMS_TirePressureSystemFailSts, 8,1); // CanSendCan0Msg(0x51B, TPMS_TirePressureSystemFailSts, 8,1);
// CanSendCan0Msg(0x31C, ABM_AirBagFailSts, 8,1); // CanSendCan0Msg(0x31C, ABM_AirBagFailSts, 8,1);
......
This diff is collapsed.
...@@ -430,7 +430,7 @@ void CheckRecvCan0Frame(stc_canfd_msg_t *stc_msg)//C CAN ��Ϣ���ջص ...@@ -430,7 +430,7 @@ void CheckRecvCan0Frame(stc_canfd_msg_t *stc_msg)//C CAN ��Ϣ���ջص
#if (CAN_3RD) #if (CAN_3RD)
#endif #endif
/* UDS */ /* UDS */
if (stc_msg->stcIdentifier.u32Identifier == 0x789) if (stc_msg->stcIdentifier.u32Identifier == 0x725)
{ {
data.DataLen = CanDlcInCanFDDlc[stc_msg->stcData.u8DataLengthCode]; data.DataLen = CanDlcInCanFDDlc[stc_msg->stcData.u8DataLengthCode];
Can_Clear((uint8_t*)&Receive_7CE_Data.data,sizeof(Receive_7CE_Data)); Can_Clear((uint8_t*)&Receive_7CE_Data.data,sizeof(Receive_7CE_Data));
...@@ -456,7 +456,7 @@ void CheckRecvCan0Frame(stc_canfd_msg_t *stc_msg)//C CAN ��Ϣ���ջص ...@@ -456,7 +456,7 @@ void CheckRecvCan0Frame(stc_canfd_msg_t *stc_msg)//C CAN ��Ϣ���ջص
{ {
RxFinish = UNFINISH; RxFinish = UNFINISH;
bufSend[0]= 0x30; bufSend[0]= 0x30;
CanFD_Send_StandMsg(CANFD0_Type, 0x781, BUF_40, TX_ISR_EN, (uint8_t*)&bufSend, 8); CanFD_Send_StandMsg(CANFD0_Type, 0x705, BUF_40, TX_ISR_EN, (uint8_t*)&bufSend, 8);
} }
else else
{ {
......
...@@ -141,9 +141,9 @@ void Api_GPIO_Init(void) ...@@ -141,9 +141,9 @@ void Api_GPIO_Init(void)
Port_SetPinConfig(1, 19, &stc_OUT_pin_config); // S Port_SetPinConfig(1, 19, &stc_OUT_pin_config); // S
Port_SetPinConfig(1, 20, &stc_OUT_pin_config); // D Port_SetPinConfig(1, 20, &stc_OUT_pin_config); // D
Port_SetPinConfig(2, 0, &stc_OUT_pin_config); //CSB0LCD_OUT Port_SetPinConfig(2, 0, &stc_OUT_pin_config); //左转
Port_SetPinConfig(1, 13, &stc_OUT_pin_config); //����ʻ��ȫ����Ϣ Port_SetPinConfig(1, 13, &stc_OUT_pin_config); //右转
Port_SetPinConfig(2, 1, &stc_OUT_pin_config); //WaterSeparator Port_SetPinConfig(2, 1, &stc_OUT_pin_config); //远光
Port_SetPinConfig(1, 21, &stc_OUT_pin_config); Port_SetPinConfig(1, 21, &stc_OUT_pin_config);
Port_SetPinConfig(1, 22, &stc_OUT_pin_config); Port_SetPinConfig(1, 22, &stc_OUT_pin_config);
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -3,13 +3,13 @@ ...@@ -3,13 +3,13 @@
#define LED_MAX_NUM 120 #define LED_MAX_NUM 120
extern ST_FUNC_OUT g_stLedOut[LED_MAX_NUM]; extern ST_FUNC_OUT g_stLedOut[LED_MAX_NUM];
extern void HJ_VSpeed(uint8_t VSpeedNum);//车? extern void HJ_VSpeed(uint8_t VSpeedNum);//车?
extern void HJ_ESpeed(uint16_t ESpeedNum);//?? extern void HJ_ESpeed(uint16_t ESpeedNum);//�?�?
extern void HJ_SetLeftLed(en_port_gpio_level_t LedState);//左转 extern void HJ_SetLeftLed(en_port_gpio_level_t LedState);//左转
extern void HJ_SetRightLed(en_port_gpio_level_t LedState);//右转 extern void HJ_SetRightLed(en_port_gpio_level_t LedState);//右转
extern void HJ_SetHightLed(en_port_gpio_level_t LedState);//远光 extern void HJ_SetHightLed(en_port_gpio_level_t LedState);//远光
extern void HJ_ECU_Warning_Lamp(void);//电喷故障指示? extern void HJ_ECU_Warning_Lamp(void);//电喷故障指示?
extern void HJ_VoltageNumLamp(void);//电压指示? extern void HJ_VoltageNumLamp(void);//电压指示?
extern void HJ_FuelFun(HJ_FuelScale OilNum); extern void HJ_FuelFun(HJ_FuelScale OilNum);
extern void HJ_SWPush(HJ_SwitchOutPut SWitchSate, uint8_t SwPushCount, uint8_t SwSep);//按键 extern void HJ_SWPush(HJ_SwitchOutPut SWitchSate, uint8_t SwPushCount, uint8_t SwSep);//按键
extern void ClearOtherSWFlagFun(); extern void ClearOtherSWFlagFun();
...@@ -19,30 +19,30 @@ void Gear_R(); ...@@ -19,30 +19,30 @@ void Gear_R();
void Gear_N(); void Gear_N();
void Gear_D(); void Gear_D();
void Gear_OUT(); void Gear_OUT();
// void SafetyBelt();//安全? // void SafetyBelt();//安全?
void PowerLimitDisp();//驱动功率限制指示 void PowerLimitDisp();//驱动功率限制指示
void SwitchFb();//低速报警关?指示 void SwitchFb();//低速报警关?指示
void SmartSystemWarning();//智能钥匙检测提? void SmartSystemWarning();//智能钥匙检测提?
void LHTurnlightSts();//左转向指示,危险? void LHTurnlightSts();//左转向指示,危险?
void HighBeamSts();//远光指示 void HighBeamSts();//远光指示
void DRLSts();//日?灯指示 void DRLSts();//日�?�灯指示
void ParkLightSts();//小灯指示 void ParkLightSts();//小灯指示
void RearFogLightSts();//后雾?指示 void RearFogLightSts();//后雾?指示
void RegenerationLevelSts1();//能量回收等级显示1? void RegenerationLevelSts1();//能量回收等级显示1?
void RegenerationLevelSts2();//能量回收等级显示2? void RegenerationLevelSts2();//能量回收等级显示2?
void RegenerationLevelSts3();//能量回收等级显示3? void RegenerationLevelSts3();//能量回收等级显示3?
void RHTurnlightSt();//右转向指? void RHTurnlightSt();//右转向指?
void BatTmpHiInd();//动力电池温度过高 void BatTmpHiInd();//动力电池温度过高
void LowSOCWarnLampSts();//低荷电状态报警指? void LowSOCWarnLampSts();//低荷电报警指�?
void ThermalCtrlWarning();//动力电池?失控报?提? void ThermalCtrlWarning();//动力电池�?失控报�?�提�?
void MotorTempWarning();//电机及控制器过热 void MotorTempWarning();//电机及控制器过热
void DCDCLVSysFltInd();//DCDC故障指示 void DCDCLVSysFltInd();//DCDC故障指示
void ElectricDriveSysFaultDisp();//电驱动系统故障指? void ElectricDriveSysFaultDisp();//电驱动系统故障指?
void TirePressureSystemFailSts();//胎压故障指示 void TirePressureSystemFailSts();//胎压故障指示
void SteeringAngleCalibrationSts();//EPS故障指示 void SteeringAngleCalibrationSts();//EPS故障指示
void AuthFailWarn();//防盗指示 void AuthFailWarn();//防盗指示
void SystemFaultDisp();//整车系统故障报?指? void SystemFaultDisp();//整车系统故障报�?�指�?
void IsoResisLw();//绝缘故障? void IsoResisLw();//绝缘故障?
void ReadySts();//Ready void ReadySts();//Ready
void ECOPlus();//ECOPlus void ECOPlus();//ECOPlus
void ECO();//ECO void ECO();//ECO
...@@ -51,10 +51,10 @@ void SPT();//SPT ...@@ -51,10 +51,10 @@ void SPT();//SPT
void AirBagFailSts();//安全气囊指示 void AirBagFailSts();//安全气囊指示
void ABS_FailSts();//ABS void ABS_FailSts();//ABS
void DriverDoorSts();//门开指示 void DriverDoorSts();//门开指示
void HVBatDiscWarn();//动力电池?开指示 void HVBatDiscWarn();//动力电池?开指示
void PowerBattFaultDisp();//动力电池故障指示 void PowerBattFaultDisp();//动力电池故障指示
void VacuumPresWarn();//真空助力系统故障 void VacuumPresWarn();//真空助力系统故障
void ConnectSts();//充电线连接指? void ConnectSts();//充电线连接指?
void SmartSystemWarning_3_1();//PEPS void SmartSystemWarning_3_1();//PEPS
......
...@@ -2550,6 +2550,8 @@ void ExecSemiAutomaticCheck(uint8_t uiCallType) ...@@ -2550,6 +2550,8 @@ void ExecSemiAutomaticCheck(uint8_t uiCallType)
} }
#endif #endif
uint8_t HJ_CurvSpeedNum = 0; uint8_t HJ_CurvSpeedNum = 0;
uint8_t PowerLevel1 = 0; //电池电量1
uint8_t PowerLevel2 = 0; //电池电量2
uint8_t HJ_FrontOtherKeyCurrent = 0; uint8_t HJ_FrontOtherKeyCurrent = 0;
uint16_t HJ_CureSpeedNum = 0; uint16_t HJ_CureSpeedNum = 0;
uint8_t HJ_CurFuelNum = 0; uint8_t HJ_CurFuelNum = 0;
...@@ -2563,6 +2565,8 @@ uint8_t HJ_SetTimeFinish = 0; ...@@ -2563,6 +2565,8 @@ uint8_t HJ_SetTimeFinish = 0;
void ClearOtherFlagFun() void ClearOtherFlagFun()
{ {
HJ_CurvSpeedNum = 0; HJ_CurvSpeedNum = 0;
PowerLevel1 = 0; //电池电量1
PowerLevel2 = 0; //电池电量2
HJ_FrontOtherKeyCurrent = 0; HJ_FrontOtherKeyCurrent = 0;
//HJ_CureSpeedNum = 0; //HJ_CureSpeedNum = 0;
//HJ_CurFuelNum = 0; //HJ_CurFuelNum = 0;
...@@ -2624,45 +2628,33 @@ void HJ_SwitchSecondPage() ...@@ -2624,45 +2628,33 @@ void HJ_SwitchSecondPage()
{ {
g_Stage = STAGE_Other; g_Stage = STAGE_Other;
//VSPEED // VSPEED
// if(HJ_OtherKeyCurrent.count <= 10) { if(HJ_OtherKeyCurrent.count < 10) {
// HJ_CurvSpeedNum = ((((HJ_OtherKeyCurrent.count - 1) * 20 )*100)/105) + 1; HJ_CurvSpeedNum = (HJ_OtherKeyCurrent.count ) * 20 ;
// if(HJ_CurvSpeedNum < 25) } else {
// HJ_CurvSpeedNum-=1; HJ_CurvSpeedNum = 199;
}
// } else { if(HJ_OtherKeyCurrent.count == 0)
// HJ_CurvSpeedNum = 199; {
// } PowerLevel1 = 0; //电池电量1
PowerLevel2 = 0; //电池电量2
// //Gear }
// if(HJ_OtherKeyCurrent.count <= 7) { else if(HJ_OtherKeyCurrent.count == 1)
// HJ_SettingNum = (HJ_OtherKeyCurrent.count-1);} {
// else if(HJ_OtherKeyCurrent.count == 8 ) { PowerLevel1 = 0; //电池电量1
// HJ_SettingNum = 0; PowerLevel2 = 100; //电池电量2
// } else{ }
// HJ_SettingNum = 15 - HJ_OtherKeyCurrent.count; else if((HJ_OtherKeyCurrent.count > 1) && (HJ_OtherKeyCurrent.count < 10))
// } {
PowerLevel1 = (HJ_OtherKeyCurrent.count - 1) * 10;
// //ESPEED PowerLevel2 = (11 - HJ_OtherKeyCurrent.count) * 10;
// if(HJ_OtherKeyCurrent.count <= 9) { }
// HJ_CureSpeedNum = ((HJ_OtherKeyCurrent.count - 1) * 1000) ; else if(HJ_OtherKeyCurrent.count == 10)
// } else if(HJ_OtherKeyCurrent.count == 10 ) { {
// HJ_CureSpeedNum = 10000; PowerLevel1 = 100; //电池电量1
// } else if((HJ_OtherKeyCurrent.count == 11) ) { PowerLevel2 = 0; //电池电量2
// HJ_CureSpeedNum = 12000; }
// }else {
// HJ_CureSpeedNum = 0;
// }
// HJ_VSpeed(HJ_CurvSpeedNum);
// HJ_ESpeed(HJ_CureSpeedNum * 4);
// if(HJ_OtherKeyCurrent.count <= 7) {
// HJ_SetGear(PortGpioHigh, HJ_OtherKeyCurrent.count - 1);
// } else {
//HJ_SetGear();
// }
// if(HJ_OtherKeyCurrent.count == 1) {
// Speed_Output_Update(PWMCH_SPEED_OUT, 1500, 50);
// }
HJ_LED(PortGpioHigh); HJ_LED(PortGpioHigh);
// if(FortOthercount != Othercount) // if(FortOthercount != Othercount)
...@@ -2856,8 +2848,8 @@ void Stage_Manage() ...@@ -2856,8 +2848,8 @@ void Stage_Manage()
// UserPressEOL();//�������� // UserPressEOL();//��������
g_Stage = STAGE_Other; g_Stage = STAGE_Other;
if (HJ_OtherKeyCurrent.count == 0) { if (HJ_OtherKeyCurrent.count <= 1) {
HJ_OtherKeyCurrent.count = 12; HJ_OtherKeyCurrent.count = 10;
} else { } else {
HJ_OtherKeyCurrent.count --; HJ_OtherKeyCurrent.count --;
} }
...@@ -3006,14 +2998,26 @@ void Stage_Manage() ...@@ -3006,14 +2998,26 @@ void Stage_Manage()
//UserPressKeyElse();//�������� //UserPressKeyElse();//��������
// DOWNKeyCurrent.count ++; // DOWNKeyCurrent.count ++;
g_Stage = STAGE_Other; g_Stage = STAGE_Other;
// HJ_OtherKeyCurrent.count ++;
// ClearOtherSWFlagFun();
// ClearOtherFlagFun();
// Othercount = 0;
// if(HJ_OtherKeyCurrent.count > 10) {
// HJ_OtherKeyCurrent.count = 1;
// }
if(HJ_OtherKeyCurrent.count < 10) {
HJ_OtherKeyCurrent.count ++; HJ_OtherKeyCurrent.count ++;
}
else
{
HJ_OtherKeyCurrent.count = 1;
}
ClearOtherSWFlagFun(); ClearOtherSWFlagFun();
ClearOtherFlagFun(); ClearOtherFlagFun();
Othercount = 0; Othercount = 0;
if(HJ_OtherKeyCurrent.count > 12) {
HJ_OtherKeyCurrent.count = 1;
}
#endif #endif
} }
......
...@@ -20,7 +20,7 @@ extern uint8_t HJYB_Data[10]; ...@@ -20,7 +20,7 @@ extern uint8_t HJYB_Data[10];
extern uint8_t DAY_Data[10]; extern uint8_t DAY_Data[10];
extern uint8_t NUM1_Data[10]; extern uint8_t NUM1_Data[10];
extern uint8_t NUM2_Data[10]; extern uint8_t NUM2_Data[10];
extern uint8_t NUM3_Data[10]; extern uint8_t NUM3_Data[20];
extern uint8_t NUM4_Data[21]; extern uint8_t NUM4_Data[21];
extern uint8_t NUM5_Data[10]; extern uint8_t NUM5_Data[10];
extern uint8_t NUM6_Data[10]; extern uint8_t NUM6_Data[10];
...@@ -133,6 +133,8 @@ extern uint8_t Write2EStep; ...@@ -133,6 +133,8 @@ extern uint8_t Write2EStep;
extern uint8_t ReceiveData[8]; extern uint8_t ReceiveData[8];
extern uint8_t UdsKeyData[8]; extern uint8_t UdsKeyData[8];
extern uint8_t HJ_CurvSpeedNum; extern uint8_t HJ_CurvSpeedNum;
extern uint8_t PowerLevel1;
extern uint8_t PowerLevel2;
extern uint16_t HJ_CureSpeedNum; extern uint16_t HJ_CureSpeedNum;
extern uint8_t HJ_CurFuelNum; extern uint8_t HJ_CurFuelNum;
extern uint8_t HJ_SettingNum; extern uint8_t HJ_SettingNum;
......
...@@ -50,13 +50,13 @@ static stc_canfd_instance_data_t m_astcCanFDInstanceDataLut[] = ...@@ -50,13 +50,13 @@ static stc_canfd_instance_data_t m_astcCanFDInstanceDataLut[] =
/** /**
***************************************************************************** *****************************************************************************
** 主要是用于CAN初始化滤波器 ** ��Ҫ������CAN��ʼ���˲���
** **
** **
*****************************************************************************/ *****************************************************************************/
typedef struct stc_canfd_standardFilter typedef struct stc_canfd_standardFilter
{ {
uint16_t standardFilter[127]; //标准滤波器数组 uint16_t standardFilter[127]; //��׼�˲�������
} stc_canfd_standardFilter_t; } stc_canfd_standardFilter_t;
#define BUF_0 0 #define BUF_0 0
...@@ -111,7 +111,7 @@ typedef struct stc_canfd_standardFilter ...@@ -111,7 +111,7 @@ typedef struct stc_canfd_standardFilter
/** /**
***************************************************************************** *****************************************************************************
** CanFD数据长度转换普通数据长度 ** CanFD���ݳ���ת����ͨ���ݳ���
** **
** **
*****************************************************************************/ *****************************************************************************/
...@@ -137,25 +137,25 @@ static const int CanTxBufferDataFieldSize[] = { ...@@ -137,25 +137,25 @@ static const int CanTxBufferDataFieldSize[] = {
}; };
extern volatile uint8_t Can0_busoffTime; extern volatile uint8_t Can0_busoffTime;
extern void CanFD_Drive_Init(pstc_canfd_type_t pstcCanFD,stc_canfd_standardFilter_t* filterConfig); //CAN0-CAN5 初始化 extern void CanFD_Drive_Init(pstc_canfd_type_t pstcCanFD,stc_canfd_standardFilter_t* filterConfig); //CAN0-CAN5 ��ʼ��
extern void BSP_CAN0_Init(void); extern void BSP_CAN0_Init(void);
extern void CAN0_Wakup_Init(void); extern void CAN0_Wakup_Init(void);
extern void CAN0_Rx_CallBack(stc_canfd_msg_t* stc_msg); //接收中断回调函数 extern void CAN0_Rx_CallBack(stc_canfd_msg_t* stc_msg); //�����жϻص�����
extern void CAN0_Tx_CallBack(void); //发送中断回调函数 extern void CAN0_Tx_CallBack(void); //�����жϻص�����
extern void CAN0_Error_CallBack(en_canfd_error_t en_canfd_err); //错误中断回调函数 extern void CAN0_Error_CallBack(en_canfd_error_t en_canfd_err); //�����жϻص�����
static void CAN0_Wakup_CallBack(uint8_t channel); static void CAN0_Wakup_CallBack(uint8_t channel);
extern void CAN0_FIFO_0_CallBack(stc_canfd_msg_t* stc_msg); extern void CAN0_FIFO_0_CallBack(stc_canfd_msg_t* stc_msg);
extern void CanFD_Busoff_Recover(uint8_t ch); //CAN BUSOFF 恢复函数 extern void CanFD_Busoff_Recover(uint8_t ch); //CAN BUSOFF �ָ�����
extern void CAN1_Wakup_Init(void); extern void CAN1_Wakup_Init(void);
extern void CAN1_Rx_CallBack(stc_canfd_msg_t* stc_msg); //接收中断回调函数 extern void CAN1_Rx_CallBack(stc_canfd_msg_t* stc_msg); //�����жϻص�����
extern void CAN1_Tx_CallBack(void); //发送中断回调函数//发送中断回调函数 extern void CAN1_Tx_CallBack(void); //�����жϻص�����//�����жϻص�����
extern void CAN1_Error_CallBack(en_canfd_error_t en_canfd_err); //错误中断回调函数//错误中断回调函数 extern void CAN1_Error_CallBack(en_canfd_error_t en_canfd_err); //�����жϻص�����//�����жϻص�����
static void CAN1_Wakup_CallBack(uint8_t channel); static void CAN1_Wakup_CallBack(uint8_t channel);
extern void CAN1_FIFO_0_CallBack(stc_canfd_msg_t* stc_msg); extern void CAN1_FIFO_0_CallBack(stc_canfd_msg_t* stc_msg);
extern void CanFD_Send_StandMsg(pstc_canfd_type_t pstcCanFD,uint16_t id,uint8_t bufIndex,uint8_t tx_isr_en,uint8_t* msg,uint8_t dlc); //发送标准帧消息函数 extern void CanFD_Send_StandMsg(pstc_canfd_type_t pstcCanFD,uint32_t id,uint8_t bufIndex,uint8_t tx_isr_en,uint8_t* msg,uint8_t dlc); //���ͱ�׼֡��Ϣ����
//extern void Can2FD_Send_StandMsg(pstc_canfd_type_t pstcCanFD,uint16_t id,uint8_t bufIndex,uint8_t tx_isr_en,uint8_t* msg,uint8_t dlc); //发送标准帧消息函数 //extern void Can2FD_Send_StandMsg(pstc_canfd_type_t pstcCanFD,uint16_t id,uint8_t bufIndex,uint8_t tx_isr_en,uint8_t* msg,uint8_t dlc); //���ͱ�׼֡��Ϣ����
extern void Copy_RxBufToRam(uint8_t* msg,stc_canfd_msg_t* stc_msg); extern void Copy_RxBufToRam(uint8_t* msg,stc_canfd_msg_t* stc_msg);
extern void Copy_RxFIFOToRam(uint8_t* msg,stc_canfd_msg_t* stc_msg); extern void Copy_RxFIFOToRam(uint8_t* msg,stc_canfd_msg_t* stc_msg);
......
...@@ -310,11 +310,11 @@ enum { ...@@ -310,11 +310,11 @@ enum {
#define CAN_2P5 0 #define CAN_2P5 0
#define CAN_3RD 0 #define CAN_3RD 0
#define RELEASE_VERS "V1.02" #define RELEASE_VERS "V1.03"
//#if (SEMI_AUTOMATIC_STAGE) //#if (SEMI_AUTOMATIC_STAGE)
//#define RELEASE_DATE_TIME "2023/04/15 16:00:00" //#define RELEASE_DATE_TIME "2023/04/15 16:00:00"
//#else //#else
#define RELEASE_DATE_TIME "2024/06/18 17:10:00" #define RELEASE_DATE_TIME "2025/01/10 00:00:00"
//#endif //#endif
#define PRO_CONFIG_CHECK_APPLY_TYPE1 1 //��׼���̨ #define PRO_CONFIG_CHECK_APPLY_TYPE1 1 //��׼���̨
......
...@@ -18,7 +18,7 @@ void UDS_Backdoor() ...@@ -18,7 +18,7 @@ void UDS_Backdoor()
} }
} }
void UDS_Unlock(void)//写 void UDS_Unlock(void)//д��
{ {
switch (Key27Step) switch (Key27Step)
{ {
...@@ -37,7 +37,7 @@ void UDS_Unlock(void)//写 ...@@ -37,7 +37,7 @@ void UDS_Unlock(void)//写
case 1: case 1:
if (RxFinish == FINISH) if (RxFinish == FINISH)
{ {
//解锁算 //�����㷨
#if (PRO_SQFL) #if (PRO_SQFL)
Delay(50);//50ms Delay(50);//50ms
EOL_UDS_Key27Step_1_2(0x02); EOL_UDS_Key27Step_1_2(0x02);
...@@ -110,7 +110,7 @@ void UDS_2E_F18C_F187(void) ...@@ -110,7 +110,7 @@ void UDS_2E_F18C_F187(void)
UDS_Backdoor(); UDS_Backdoor();
if(Flag_SaveDate == 1) if(Flag_SaveDate == 1)
{ {
CANSendEnable = OFF; //关闭其他报文发送 CANSendEnable = OFF; //�ر��������ķ���
//APP_EOL(); //APP_EOL();
UDS_Unlock(); UDS_Unlock();
#if ((PRO_SQFL) || (PRO_CN7C)) #if ((PRO_SQFL) || (PRO_CN7C))
...@@ -185,13 +185,13 @@ void UDS_2E_F18C_F187(void) ...@@ -185,13 +185,13 @@ void UDS_2E_F18C_F187(void)
} }
else if(Flag_SaveDate == 3) else if(Flag_SaveDate == 3)
{ {
if((Receive_7CE_Data.data[1] == 0x6E) && (Receive_7CE_Data.data[2] == 0xF1) && (Receive_7CE_Data.data[3] == 0x8C))//判断反馈 if((Receive_7CE_Data.data[1] == 0x6E) && (Receive_7CE_Data.data[2] == 0xF1) && (Receive_7CE_Data.data[3] == 0x8C))//�жϷ���
{ {
Flag_SaveDate = 4; Flag_SaveDate = 4;
Key27Step = 0; Key27Step = 0;
Can_Clear((uint8_t*)&Receive_7CE_Data.data,sizeof(Receive_7CE_Data)); Can_Clear((uint8_t*)&Receive_7CE_Data.data,sizeof(Receive_7CE_Data));
} }
else if((Receive_7CE_Data.data[1] == 0x7F) && (Receive_7CE_Data.data[2] == 0x2E))//判断反馈 else if((Receive_7CE_Data.data[1] == 0x7F) && (Receive_7CE_Data.data[2] == 0x2E))//�жϷ���
{ {
Flag_SaveDate = 0; Flag_SaveDate = 0;
Key27Step = 0; Key27Step = 0;
...@@ -244,7 +244,7 @@ void UDS_2E_F18C_F187(void) ...@@ -244,7 +244,7 @@ void UDS_2E_F18C_F187(void)
} }
else if(Flag_SaveDate == 6) else if(Flag_SaveDate == 6)
{ {
CANSendEnable = OFF; //关闭其他报文发送 CANSendEnable = OFF; //�ر��������ķ���
//APP_EOL(); //APP_EOL();
UDS_Unlock(); UDS_Unlock();
#if ((PRO_SQFL) || (PRO_CN7C)) #if ((PRO_SQFL) || (PRO_CN7C))
...@@ -311,13 +311,13 @@ void UDS_2E_F18C_F187(void) ...@@ -311,13 +311,13 @@ void UDS_2E_F18C_F187(void)
} }
else if(Flag_SaveDate == 8) else if(Flag_SaveDate == 8)
{ {
if((Receive_7CE_Data.data[1] == 0x6E) && (Receive_7CE_Data.data[2] == 0xF1) && (Receive_7CE_Data.data[3] == 0x87))//判断反馈 if((Receive_7CE_Data.data[1] == 0x6E) && (Receive_7CE_Data.data[2] == 0xF1) && (Receive_7CE_Data.data[3] == 0x87))//�жϷ���
{ {
Flag_SaveDate = 9; Flag_SaveDate = 9;
Key27Step = 0; Key27Step = 0;
Can_Clear((uint8_t*)&Receive_7CE_Data.data,sizeof(Receive_7CE_Data)); Can_Clear((uint8_t*)&Receive_7CE_Data.data,sizeof(Receive_7CE_Data));
} }
else if((Receive_7CE_Data.data[1] == 0x7F) && (Receive_7CE_Data.data[2] == 0x2E))//判断反馈 else if((Receive_7CE_Data.data[1] == 0x7F) && (Receive_7CE_Data.data[2] == 0x2E))//�жϷ���
{ {
Flag_SaveDate = 0; Flag_SaveDate = 0;
SetClusterState = 4; SetClusterState = 4;
......
...@@ -49,10 +49,10 @@ void InitDiagnostic(void) ...@@ -49,10 +49,10 @@ void InitDiagnostic(void)
uint8_t CheckVoltage(void) uint8_t CheckVoltage(void)
{ {
if (CurIgnVoltage >= 1600) { if (CurIgnVoltage >= 1600) {
/*ѹ쳣*/ /*��ѹ�쳣������*/
return 1; return 1;
} else if (CurIgnVoltage <= 900) { } else if (CurIgnVoltage <= 900) {
/*ѹ쳣*/ /*��ѹ�쳣������*/
return 2; return 2;
} }
return 0; return 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment