Commit 29eca063 authored by hu's avatar hu

Merge branch 'menutest' into withBoot_ENCN

parents f2f34f65 85acada6
......@@ -287,6 +287,8 @@ void Power_IG_ON_Init(void)
/*气压1 气压2 WET气压数据初始化*/
AirPressure_KL15_ON_Init();
App_TYWUDS_SetStatus_Init();
}
Power_Status_t Power_Stay_ON(void)
......
......@@ -2226,3 +2226,57 @@ uint8_t Common_Get_L12_Air_Sta(void)
{
return L12_Air_Sta ;
}
uint8_t LineHighbeamStatusOld;
uint8_t LineHighbeamStatusNum;
uint8_t LineHighbeamStatusTime;
uint8_t TYWUDS_Status;
void App_TYWUDS_SetStatus(uint8_t LineHighbeamStatus, uint8_t HighbeamTime)
{
if (LineHighbeamStatusOld != LineHighbeamStatus)
{
LineHighbeamStatusOld = LineHighbeamStatus;
if (LineHighbeamStatusOld == 1)
{
LineHighbeamStatusNum++;
}
else
{
;/**/
}
}
else
{
;/**/
}
if (LineHighbeamStatusNum != 0)
{
if (LineHighbeamStatusTime <= (HighbeamTime + 1))
{
LineHighbeamStatusTime ++ ;
}
if ((LineHighbeamStatusTime < HighbeamTime) && (LineHighbeamStatusNum >= 5))
{
TYWUDS_Status = 1;
}
else
{
;/**/
}
}
//return TYWUDS_Status;
}
void App_TYWUDS_SetStatus_Init(void)
{
TYWUDS_Status = 0;
LineHighbeamStatusOld = 0;
LineHighbeamStatusNum = 0;
LineHighbeamStatusTime = 0;
}
uint8_t App_TYWUDS_GetStatus(void)
{
return TYWUDS_Status;
}
\ No newline at end of file
......@@ -10,4 +10,8 @@ uint8_t GET_LED_RIGHT_G_Judgement(void);
uint8_t GET_LED_LEFT_G_Judgement(void);
uint8_t Common_Get_L12_Air_Sta(void);
void App_TYWUDS_SetStatus(uint8_t LineHighbeamStatus, uint8_t HighbeamTime);
void App_TYWUDS_SetStatus_Init(void);
uint8_t App_TYWUDS_GetStatus(void);
#endif
......@@ -480,7 +480,7 @@ const st_CANMsgAttribute CAN_MSG_CONST_ARRAY[ID_TOTAL_MAX] =
{0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u},
5000ul,
0x18FEE64Aul,
(( void * )0),
(Common_Set_18FEE64A_Msg_Sta),
(( void * )0),
(( void * )0),
},
......
......@@ -614,6 +614,7 @@ void GUI_Time_Dispaly(uint8_t Mode)
uint8_t Time_Hours = 0u;
uint8_t Time_Minutes = 0u;
uint8_t CanStatus = 0u;
uint8_t CanStatus1 = 0u;
if (Mode == GUI_DISP_MODE_NORMAL)
{
//if (K_Line_Set.K_Line_LID54 == 0x01u)
......@@ -621,8 +622,8 @@ void GUI_Time_Dispaly(uint8_t Mode)
{
/*T_BOX 时间显示*/
CanStatus = CAN_MSG_Status(ID_CanMsg18FEE64A_Msg_Count);
if (CanStatus == CAN_SIG_NORMAL)
CanStatus1 = Common_Get_18FEE64A_Msg_Sta();
if ((CanStatus == CAN_SIG_NORMAL) && (CanStatus1 == 1))
{
Time_Minutes = (uint8_t)Get_ID_18FEE64A_Sig_TBOX_Minutes();
if (Time_Minutes > 59)
......@@ -718,6 +719,7 @@ void GUI_Data_Dispaly(uint8_t Mode)
uint8_t Date = 0u; /*日*/
uint8_t Week = 0u; /*星期*/
uint8_t CanStatus = 0u;
uint8_t CanStatus1 = 0u;
if (Mode == GUI_DISP_MODE_NORMAL)
{
......@@ -725,7 +727,7 @@ void GUI_Data_Dispaly(uint8_t Mode)
if (K_Line_Set.K_Line_LID2E == 0x01u)
{
CanStatus = CAN_MSG_Status(ID_CanMsg18FEE64A_Msg_Count);
CanStatus1 = Common_Get_18FEE64A_Msg_Sta();
Year = (uint16_t)Get_ID_18FEE64A_Sig_TBOX_Year();
Year = (Year & 0xFF) + 1985u;
Month = (uint8_t)Get_ID_18FEE64A_Sig_TBOX_Month();
......@@ -783,7 +785,7 @@ void GUI_Data_Dispaly(uint8_t Mode)
Week = Cal_RTC_Week(Year, Month, Date);
if (CanStatus == CAN_SIG_NORMAL)
if ((CanStatus == CAN_SIG_NORMAL) && (CanStatus1 == 1))
{
GUI_Translate_Display(Calendar_Sprite, Nb_14_dian, 591u, 62u, GUI_BLENDMODE_SRC_OVER); /*显示年份后面的 “ . ” */
GUI_Translate_Display(Calendar_Sprite, Nb_14_dian, 640u, 62u, GUI_BLENDMODE_SRC_OVER); /*显示月份后面的 “ . ” */
......@@ -2420,7 +2422,7 @@ void GUI_Year_Month_Data_Display(uint8_t Mode)
uint8_t Week = 0u; /*星期*/
uint16_t Year = 0u; /*年*/
uint8_t CanStatus = 0u;
uint8_t CanStatus1 = 0u;
if (Mode == GUI_DISP_MODE_NORMAL)
{
//if (K_Line_Set.K_Line_LID54 == 0x01u)
......@@ -2496,8 +2498,8 @@ void GUI_Year_Month_Data_Display(uint8_t Mode)
}
CanStatus = CAN_MSG_Status(ID_CanMsg18FEE64A_Msg_Count);
if (CanStatus == CAN_SIG_NORMAL)
CanStatus1 = Common_Get_18FEE64A_Msg_Sta();
if ((CanStatus == CAN_SIG_NORMAL) && (CanStatus1 == 1))
{
if (User_App.User_Language == Language_Cn)
{
......
......@@ -1487,7 +1487,7 @@ void K_LINE_EOL_InitVal(void)
K_Line_Set.K_Line_LID2B = 0x00u; /* 00 ISS //0:无、1: eco stop、 2:Idle Stop */
K_Line_Set.K_Line_LID2C = 0x01u; /* 00 装货台工作警报蜂鸣 //0:无、1:有 */
K_Line_Set.K_Line_LID2D = 0x01u; /* 00 ROWS //0:无、1:ROWS有、2LOCAL警报有 */
K_Line_Set.K_Line_LID2E = 0x01u; /* 00 行车记录仪 //0:模拟记录仪、1:数字记录仪或行车记录仪 */
K_Line_Set.K_Line_LID2E = 0x00u; /* 00 行车记录仪 //0:模拟记录仪、1:数字记录仪或行车记录仪 */
K_Line_Set.K_Line_LID2F = 0x00u; /* 00 车型 //0:单车、1:拖车、2:全拖车 */
K_Line_Set.K_Line_LID30 = 0x01u; /* 00 缓速器 //0:无、1:有(C&E)、2:有(F) */
K_Line_Set.K_Line_LID31 = 0x01u; /* -- 定速巡航 //0:无、1:有 */
......@@ -1508,13 +1508,13 @@ void K_LINE_EOL_InitVal(void)
K_Line_Set.K_Line_LID40 = 0x00u; /* 00 发动机种类 */
K_Line_Set.K_Line_LID41 = 0x01u; /* 50 变速器种类&控制 /*初值50*/
K_Line_Set.K_Line_LID42 = 0x00u; /* 00 驻车管道 /*初值 0*/
K_Line_Set.K_Line_LID43 = 0x82u; /* 82 车型 /*初值44*/
K_Line_Set.K_Line_LID43 = 0x00u; /* 82 车型 /*初值44*/
K_Line_Set.K_Line_LID44 = 0xFFu; /* FF 速度警报 /*初值FF*/
K_Line_Set.K_Line_LID45 = 0x01u; /* FF 发动机转速 /*初值FF*/
K_Line_Set.K_Line_LID46 = 0x01u; /* FF 急加速 /*初FF*/
K_Line_Set.K_Line_LID47 = 0x01u; /* FF 急减速 /*初值FF*/
K_Line_Set.K_Line_LID48 = 0x01u; /* FF 长时间怠速 /*初值FF*/
K_Line_Set.K_Line_LID49 = 0x01u; /* FF 辅助驻车 /*初值FF*/
K_Line_Set.K_Line_LID45 = 0xFFu; /* FF 发动机转速 /*初值FF*/
K_Line_Set.K_Line_LID46 = 0xFFu; /* FF 急加速 /*初FF*/
K_Line_Set.K_Line_LID47 = 0xFFu; /* FF 急减速 /*初值FF*/
K_Line_Set.K_Line_LID48 = 0xFFu; /* FF 长时间怠速 /*初值FF*/
K_Line_Set.K_Line_LID49 = 0xFFu; /* FF 辅助驻车 /*初值FF*/
K_Line_Set.K_Line_LID4A = 0x32u; /* 37 变速箱油 55000 */
K_Line_Set.K_Line_LID4B = 0x32u; /* 37 差速器油 55000 */
K_Line_Set.K_Line_LID4C = 0x32u; /* 37 离合器油 55000 */
......
......@@ -44,6 +44,7 @@ static DataValid_t Disp_V_Speed_Valid;
static DataValid_t Disp_E_Speed_Valid;
static DataValid_t Set_18EF1718_Msg_Sta;
static DataValid_t Set_18FEE64A_Msg_Sta;
static void Common_Set_Act_V_Speed(uint16_t Val);
static void Common_Set_Act_E_Speed(uint16_t Val);
......@@ -143,6 +144,7 @@ void Common_DataInit(void)
Menu_FacDea_Time = 0x00u;
OIL_PRESSURE_Time = 0x00u;
Set_18EF1718_Msg_Sta = COMMON_InValid;
Set_18FEE64A_Msg_Sta = COMMON_InValid;
//Menu_Off_Time = 0x00u;
UdsCanIDSta = 0x00u;
Can_Engine_Oil_Num = 0u;
......@@ -951,6 +953,16 @@ DataValid_t Common_Get_18EF1718_Msg_Sta(void)
return Set_18EF1718_Msg_Sta;
}
void Common_Set_18FEE64A_Msg_Sta(void)
{
Set_18FEE64A_Msg_Sta = COMMON_Valid;
}
DataValid_t Common_Get_18FEE64A_Msg_Sta(void)
{
return Set_18FEE64A_Msg_Sta;
}
/*EOL诊断配置数据转换为仪表配置数据*/
void ReadDTCEOLValue_Meter_K_LINE(void)
{
......
......@@ -61,6 +61,8 @@ uint32_t Coom_Get_Menu_Off_MenuTime(void);
void Common_Set_18EF1718_Msg_Sta(void);
DataValid_t Common_Get_18EF1718_Msg_Sta(void);
void Common_Set_18FEE64A_Msg_Sta(void);
DataValid_t Common_Get_18FEE64A_Msg_Sta(void);
void ReadDTCEOLValue_Meter_K_LINE(void);
void Common_Set_K_Line_Value(void);
......
......@@ -23,7 +23,7 @@ uint16_t enableMaxTimer = KL15DTCEnableTimer;
const uint8_t Ser22_DID_F187[13] = {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20}; /*IC 零件号*/
const uint8_t Ser22_DID_F18A[8] = {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20}; /*系统供应商编号*/
const uint8_t Ser22_DID_F18B[4] = {0x20, 0x21, 0x08, 0x03}; /*IC 生产日期*/
const uint8_t Ser22_DID_F18B[4] = {0x20, 0x24, 0x03, 0x26}; /*IC 生产日期*/
const uint8_t Ser22_DID_F18C[20] = {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20};
/*IC 系列号*/
const uint8_t Ser22_DID_F190[17] = {0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20};
......
#include "UDS_22Service_Filter.h"
uint8_t S22DLC[] = {2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2U, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u};
uint16_t S22DID[] = {0xF180u, 0xF181u, 0xF182u, 0xF183u, 0xF184u, 0xF185u, 0xF187u, 0xF18Au, 0xF18Bu, 0xF18Cu, 0xF190u, 0xF193u, 0xF195u, 0xF1F0u, 0xF1F1u, 0x6000u, 0x6001u, 0x6078u, 0x6079u, 0x607Au, 0x607Bu, 0x607Cu, 0x607Du, 0x60C8u, 0x6005u, 0x600Bu, 0x607Eu, 0x607Fu, 0x6080u, 0x6002u, 0x600Fu, 0x6011u, 0x600Eu, 0x6081u, 0x6009u, 0x6010u, 0x6082u, 0x6083u, 0x6084u, 0x600Au, 0x6085u, 0x6086u, 0x6087u, 0x6088u, 0x6089u, 0x608Au, 0x608Bu, 0x608Cu, 0x608Du, 0x608Eu, 0x6029u, 0x6090u, 0x6013u, 0x602Au, 0x6023u, 0x602Cu, 0x60A2u, 0x60ABu, 0x60ACu, 0x605Cu, 0x605Du, 0x605Eu, 0x605Fu, 0x6060u, 0x6062u, 0x6063u, 0x6064u, 0x6065u, 0x6066u, 0x6068u, 0x6069u, 0x606Du, 0x606Eu, 0x606Fu, 0x6070u, 0x6071u, 0x6072u, 0x6073u, 0x6074u, 0x6075u, 0x6076u, 0x6077u, 0x60C9u, 0x60CAu, 0x60CBu, 0x60CCu, 0x60CDu, 0x60CEu, 0x60CFu, 0x60D0u, 0x60D1u, 0x60D2u};
uint8_t S22DLC[] =
{
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2U, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u, 2u,
2u, 2u
};
uint16_t S22DID[] =
{
0xF180u, 0xF181u, 0xF182u, 0xF183u, 0xF184u, 0xF185u, 0xF187u, 0xF18Au, 0xF18Bu, 0xF18Cu,
0xF190u, 0xF193u, 0xF195u, 0xF1F0u, 0xF1F1u, 0x6000u, 0x6001u, 0x6078u, 0x6079u, 0x607Au,
0x607Bu, 0x607Cu, 0x607Du, 0x60C8u, 0x6005u, 0x600Bu, 0x607Eu, 0x607Fu, 0x6080u, 0x6002u,
0x600Fu, 0x6011u, 0x600Eu, 0x6081u, 0x6009u, 0x6010u, 0x6082u, 0x6083u, 0x6084u, 0x600Au,
0x6085u, 0x6086u, 0x6087u, 0x6088u, 0x6089u, 0x608Au, 0x608Bu, 0x608Cu, 0x608Du, 0x608Eu,
0x6029u, 0x6090u, 0x6013u, 0x602Au, 0x6023u, 0x602Cu, 0x60A2u, 0x60ABu, 0x60ACu, 0x605Cu,
0x605Du, 0x605Eu, 0x605Fu, 0x6060u, 0x6062u, 0x6063u, 0x6064u, 0x6065u, 0x6066u, 0x6068u,
0x6069u, 0x606Du, 0x606Eu, 0x606Fu, 0x6070u, 0x6071u, 0x6072u, 0x6073u, 0x6074u, 0x6075u,
0x6076u, 0x6077u, 0x60C9u, 0x60CAu, 0x60CBu, 0x60CCu, 0x60CDu, 0x60CEu, 0x60CFu, 0x60D0u,
0x60D1u, 0x60D2u
};
/**
*22服务是否支持功能寻址
......@@ -42,7 +66,7 @@ uint8_t UDS_22Service_NRC33(void)
uint8_t UDS_22Service_NRC13_MinLengthCheck(void)
{
uint8_t NRC = positiveResponse;
if(DiagMSG.msgDLC < 2u)
if (DiagMSG.msgDLC < 2u)
{
NRC = incorrectMessageLength;
UDS_Service_Response(0x22u, NEGATIVE_RSP, DIAG_ID_Tx, 1u, (uint8_t*)&NRC);
......@@ -64,18 +88,25 @@ uint8_t UDS_22Service_NRC31(void)
uint8_t i;
uint8_t NRC = requestOutOfRange;
uint8_t count = 0u;
count = sizeof(S22DID);
count = DIM(S22DID);
for(i = 0u; i < count; ++i)
if (App_TYWUDS_GetStatus() == 1)
{
if(getDID(DiagMSG.msgData.DidDetail.DID_H, DiagMSG.msgData.DidDetail.DID_L) == S22DID[i])
NRC = positiveResponse;
}
else
{
for (i = 0u; i < count; ++i)
{
NRC = positiveResponse;
break;
if (getDID(DiagMSG.msgData.DidDetail.DID_H, DiagMSG.msgData.DidDetail.DID_L) == S22DID[i])
{
NRC = positiveResponse;
break;
}
}
}
//NRC = requestOutOfRange;
if((NRC == requestOutOfRange) && (DiagMSG.msgID == DIAG_ID_Rx_PHY))
if ((NRC == requestOutOfRange) && (DiagMSG.msgID == DIAG_ID_Rx_PHY))
{
UDS_Service_Response(0x22u, NEGATIVE_RSP, DIAG_ID_Tx, 1u, (uint8_t*)&NRC);
}
......@@ -90,7 +121,7 @@ uint8_t UDS_22Service_NRC13_TotalLengthCheck(void)
{
uint8_t i;
uint8_t NRC = positiveResponse;
if(DiagMSG.msgDLC != 2u)
if (DiagMSG.msgDLC != 2u)
{
NRC = incorrectMessageLength;
UDS_Service_Response(0x22u, NEGATIVE_RSP, DIAG_ID_Tx, 1u, (uint8_t*)&NRC);
......@@ -99,22 +130,22 @@ uint8_t UDS_22Service_NRC13_TotalLengthCheck(void)
{
NRC = positiveResponse;
}
/* for(i = 0u; i < DIM(S22DID); ++i)
{
if(getDID(DiagMSG.msgData.DidDetail.DID_H, DiagMSG.msgData.DidDetail.DID_L) == S22DID[i])
{
if(DiagMSG.msgDLC != S22DLC[i])
{
NRC = incorrectMessageLength;
UDS_Service_Response(0x22u, NEGATIVE_RSP, DIAG_ID_Tx, 1u, (uint8_t*)&NRC);
}
else
{
NRC = positiveResponse;
}
break;
}
}*/
/* for(i = 0u; i < DIM(S22DID); ++i)
{
if(getDID(DiagMSG.msgData.DidDetail.DID_H, DiagMSG.msgData.DidDetail.DID_L) == S22DID[i])
{
if(DiagMSG.msgDLC != S22DLC[i])
{
NRC = incorrectMessageLength;
UDS_Service_Response(0x22u, NEGATIVE_RSP, DIAG_ID_Tx, 1u, (uint8_t*)&NRC);
}
else
{
NRC = positiveResponse;
}
break;
}
}*/
return NRC;
}
......
......@@ -106,4 +106,11 @@ void UDS_22Service_DID_60CF(void);
void UDS_22Service_DID_60D0(void); /*������ʽ */
void UDS_22Service_DID_60D1(void); /*�������� */
void UDS_22Service_DID_60D2(void); /*��ع���ϵͳ */
void UDS_22Service_DID_01(void);
void UDS_22Service_DID_02(void);
void UDS_22Service_DID_03(void);
void UDS_22Service_DID_04(void);
void UDS_22Service_DID_05(void);
void UDS_22Service_DID_06(void);
void UDS_22Service_DID_07(void);
#endif
......@@ -289,6 +289,7 @@ void Sys_Run_Mode_100ms_Tasks(void)
Gui_Display_Test();
Gui_9810_Test();
App_TYWUDS_SetStatus(Line_In_Get_Status(LINE_IN_HI_BEAM), 50);
//YZHD_Count++;
//if (YZHD_Count == 20)
//{
......
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