Commit 61479894 authored by hu's avatar hu

增加界面

parent f30f67ff
No preview for this file type
This source diff could not be displayed because it is too large. You can view the blob instead.
project .intvect 1536
project .text 303532
project .rodata 410071
project .text 304844
project .rodata 410871
project .secinfo 120
project .syscall 6
project .romdata 9045
......
......@@ -71,24 +71,9 @@ void Telltales_Left_Right_KL30_Init(void)
TelltaleLRCtrl.LastLeft = 0u;
TelltaleLRCtrl.Delay = 0u;
}
/*
uint8_t LED_LEFT_F = 0x00u;
uint8_t LED_RIGHT_F = 0x00u;
uint8_t LED_HI_BEAM_F = 0x00u;
uint8_t LED_PowerLimit_F = 0x00u;
uint8_t LED_MotorInvertorOverTempFault_F = 0x00u;
uint8_t LED_BrakeLightFault_F = 0x00u;
uint8_t LED_BATTERY_CHARGE_F = 0x00u;
uint8_t LED_RearFogLight_F = 0x00u;
uint8_t LED_BattMAINTENANCE_F = 0x00u;
uint8_t LED_AUTOHOLD_F = 0x00u;
uint8_t LED_HDC_F = 0x00u;
uint8_t LED_HAC_F = 0x00u;
uint8_t LED_MAINTENANCE_F = 0x00u;
uint8_t LED_SEATBELT_F = 0x00u;
*/
/******************************************************************************
T3 L1 L2 L3 R1 R2 R3 U1 U4 U5无灯 左右转向单独 气压1 气压2 指示灯是背光
T3 L16 U1 U4 U5无灯 左右转向单独 气压1 气压2 指示灯是背光
******************************************************************************/
/******************************************************************************
......@@ -264,7 +249,7 @@ void LED_INTER_DIFF_LOCK_T_Execution(uint8_t led_status)
}
/******************************************************************************
T2 指示灯不受控
T2
信号接口:
信号定义:
输出信号:
......@@ -727,7 +712,7 @@ void LED_AUTO_LEVELING_T_Execution(uint8_t led_status)
}
/******************************************************************************
L4 ROWS
L1 ROWS
信号接口:
信号定义:
输出信号:
......@@ -771,7 +756,7 @@ void LED_ROWS_L_Execution(uint8_t led_status)
}
/******************************************************************************
L5 BSM OFF
L2 BSM OFF
信号接口:
信号定义:
输出信号:
......@@ -815,7 +800,7 @@ void LED_BSM_OFF_L_Execution(uint8_t led_status)
}
/******************************************************************************
L6 AEBS OFF
L3 AEBS OFF
信号接口:
信号定义:
输出信号:
......@@ -871,7 +856,7 @@ void LED_AEBS_OFF_L_Execution(uint8_t led_status)
}
/******************************************************************************
L7 LDWS
L4 LDWS
信号接口:
信号定义:
输出信号:
......@@ -935,7 +920,7 @@ void LED_LDWS_L_Execution(uint8_t led_status)
}
/******************************************************************************
L8 SRS
L5 SRS
信号接口:
信号定义:
输出信号:
......@@ -979,7 +964,7 @@ void LED_SRS_L_Execution(uint8_t led_status)
}
/******************************************************************************
L9 ENG OIL
L6 ENG OIL
信号接口:
信号定义:
输出信号:
......@@ -1022,7 +1007,7 @@ void LED_ENG_OIL_L_Execution(uint8_t led_status)
}
}
/******************************************************************************
L10 CHARG
L7 CHARG
信号接口:
信号定义:
输出信号:
......@@ -1066,7 +1051,7 @@ void LED_CHARG_L_Execution(uint8_t led_status)
}
/******************************************************************************
L11 SEAT BELT
L8 SEAT BELT
信号接口:
信号定义:
输出信号:
......@@ -1109,7 +1094,7 @@ void LED_SEAT_BELT_L_Execution(uint8_t led_status)
}
}
/******************************************************************************
L12 RR DIFF LOCK
L9 RR DIFF LOCK
信号接口:
信号定义:
输出信号:
......@@ -1153,7 +1138,7 @@ void LED_RR_DIFF_LOCK_L_Execution(uint8_t led_status)
}
/******************************************************************************
L13 TPMS
L10 TPMS
信号接口:
信号定义:
输出信号:
......@@ -1209,7 +1194,7 @@ void LED_TPMS_L_Execution(uint8_t led_status)
}
}
/******************************************************************************
L14 ASR/EVSC OFF
L11 ASR/EVSC OFF
信号接口:
信号定义:
输出信号:
......@@ -1253,7 +1238,7 @@ void LED_ASR_or_EVSC_OFF_L_Execution(uint8_t led_status)
}
/******************************************************************************
L15 EVSC
L12 EVSC
信号接口:
信号定义:
输出信号:
......@@ -1322,7 +1307,7 @@ void LED_EVSC_L_Execution(uint8_t led_status)
}
/******************************************************************************
L16 ECO STOP OFF
L13 ECO STOP OFF
信号接口:
信号定义:
输出信号:
......@@ -1374,7 +1359,7 @@ void LED_eco_stop_OFF_L_Execution(uint8_t led_status)
}
/******************************************************************************
L17 AMT
L14 AMT
信号接口:
信号定义:
输出信号:
......@@ -1430,7 +1415,7 @@ void LED_AMT_L_Execution(uint8_t led_status)
}
/******************************************************************************
L18 WEAR IND
L15 WEAR IND
信号接口:
信号定义:
输出信号:
......@@ -1474,16 +1459,16 @@ void LED_WEAR_IND_L_Execution(uint8_t led_status)
}
/******************************************************************************
R4 TRAILER BRAKE
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_TRAILER_BRAKE_R_Judgement(void)
R1 PARK BRAKE
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_PARK_BRAKE_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_TRAILER_BRAKE);
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_PARK_BRAKE);
if (m_Condition1 == 1u)
{
......@@ -1496,42 +1481,47 @@ uint8_t LED_TRAILER_BRAKE_R_Judgement(void)
return u8Result;
}
void LED_TRAILER_BRAKE_R_Execution(uint8_t led_status)
void LED_PARK_BRAKE_R_Execution(uint8_t led_status)
{
if (led_status == 1)
{
IS31_CHIP0_CHANNEL10 = LED_BRIGHTNESS;
IS31_CHIP0_CHANNEL08 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL10 = 0x00;
IS31_CHIP0_CHANNEL08 = 0x00;
}
if (led_status == 1)
{
SEG_LED_TRAILER_BRAKE_R(7);
SEG_LED_PARK_BRAKE_R(7);
}
else
{
SEG_LED_TRAILER_BRAKE_R(0);
SEG_LED_PARK_BRAKE_R(0);
}
}
/******************************************************************************
R5 BRAKE AIR/EBS
R2 BRAKE AIR/EBS
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_BRAKE_AIR_or_EBS_YELLOW_R_Judgement(void)
uint8_t LED_BRAKE_AIR_or_EBS_RED_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
m_Condition1 = (uint8_t)Get_ID_18F0010B_Sig_ABSorEBS_AmberWarnSt_power_veh();
uint8_t m_Condition2 = 0u;
uint8_t m_Condition3 = 0u;
if (m_Condition1 == 1u)
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_BRAKE_AIR_EBS);
m_Condition2 = (uint8_t)Get_ID_18F0010B_Sig_ABS_Fully_Operational();
m_Condition3 = (uint8_t)Get_ID_18F0010B_Sig_EBS_Red_Warning_Lamp_State();
if ((m_Condition1 == 1u) || (m_Condition2 == 0u) || (m_Condition3 == 1u))
{
u8Result = 0u;
u8Result = 1u;
}
else
{
......@@ -1540,38 +1530,31 @@ uint8_t LED_BRAKE_AIR_or_EBS_YELLOW_R_Judgement(void)
return u8Result;
}
void LED_BRAKE_AIR_or_EBS_YELLOW_R_Execution(uint8_t led_status)
void LED_BRAKE_AIR_or_EBS_RED_R_Execution(uint8_t led_status)
{
if (led_status == 1)
{
IS31_CHIP0_CHANNEL09 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL09 = 0x00;
}
BRAKE_AIR_EBS_LED_MCU = led_status;
if (led_status == 1)
{
SEG_LED_BRAKE_AIR_or_EBS_YELLOW_R(7);
SEG_LED_BRAKE_AIR_or_EBS_RED_R(7);
}
else
{
SEG_LED_BRAKE_AIR_or_EBS_YELLOW_R(0);
SEG_LED_BRAKE_AIR_or_EBS_RED_R(0);
}
}
/******************************************************************************
R6 ACC AIR
R3 BRAKE LOCK
信号接口:
信号定义:
输出信号: R6_LED_OUT
输出信号:
******************************************************************************/
uint8_t LED_ACC_AIR_R_Judgement(void)
uint8_t LED_BRAKE_LOCK_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_ACC_AIR);
m_Condition1 = (uint8_t)XXXX;
if (m_Condition1 == 1u)
{
......@@ -1584,36 +1567,40 @@ uint8_t LED_ACC_AIR_R_Judgement(void)
return u8Result;
}
void LED_ACC_AIR_R_Execution(uint8_t led_status)
void LED_BRAKE_LOCK_R_Execution(uint8_t led_status)
{
R6_LED_OUT = led_status;
if (led_status == 1)
{
IS31_CHIP0_CHANNEL07 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL07 = 0x00;
}
if (led_status == 1)
{
SEG_LED_ACC_AIR_R(7);
SEG_LED_BRAKE_LOCK_R(7);
}
else
{
SEG_LED_ACC_AIR_R(0);
SEG_LED_BRAKE_LOCK_R(0);
}
}
/******************************************************************************
R7 ABS
R4 AIR SUS
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_ABS_R_Judgement(void)
uint8_t LED_AIR_SUS_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
uint8_t m_Condition2 = 0u;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_ABS);
m_Condition2 = (uint8_t)Get_ID_18F0010B_Sig_ABSorEBS_AmberWarnSt_power_veh();
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_AIR_SUS);
if ((m_Condition1 == 1u) || (m_Condition2 == 1u))
if (m_Condition1 == 1u)
{
u8Result = 1u;
}
......@@ -1624,31 +1611,38 @@ uint8_t LED_ABS_R_Judgement(void)
return u8Result;
}
void LED_ABS_R_Execution(uint8_t led_status)
void LED_AIR_SUS_R_Execution(uint8_t led_status)
{
ABS_LED_MCU_OUT = led_status;
if (led_status == 1)
{
IS31_CHIP0_CHANNEL06 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL06 = 0x00;
}
if (led_status == 1)
{
SEG_LED_ABS_R(7);
SEG_LED_AIR_SUS_R(7);
}
else
{
SEG_LED_ABS_R(0);
SEG_LED_AIR_SUS_R(0);
}
}
/******************************************************************************
R8 PARK BRAKE
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_PARK_BRAKE_R_Judgement(void)
R5 TRAILER BRAKE
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_TRAILER_BRAKE_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_PARK_BRAKE);
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_TRAILER_BRAKE);
if (m_Condition1 == 1u)
{
......@@ -1661,47 +1655,42 @@ uint8_t LED_PARK_BRAKE_R_Judgement(void)
return u8Result;
}
void LED_PARK_BRAKE_R_Execution(uint8_t led_status)
void LED_TRAILER_BRAKE_R_Execution(uint8_t led_status)
{
if (led_status == 1)
{
IS31_CHIP0_CHANNEL08 = LED_BRIGHTNESS;
IS31_CHIP0_CHANNEL10 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL08 = 0x00;
IS31_CHIP0_CHANNEL10 = 0x00;
}
if (led_status == 1)
{
SEG_LED_PARK_BRAKE_R(7);
SEG_LED_TRAILER_BRAKE_R(7);
}
else
{
SEG_LED_PARK_BRAKE_R(0);
SEG_LED_TRAILER_BRAKE_R(0);
}
}
/******************************************************************************
R9 BRAKE AIR/EBS
R6 BRAKE AIR/EBS
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_BRAKE_AIR_or_EBS_RED_R_Judgement(void)
uint8_t LED_BRAKE_AIR_or_EBS_YELLOW_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
uint8_t m_Condition2 = 0u;
uint8_t m_Condition3 = 0u;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_BRAKE_AIR_EBS);
m_Condition2 = (uint8_t)Get_ID_18F0010B_Sig_ABS_Fully_Operational();
m_Condition3 = (uint8_t)Get_ID_18F0010B_Sig_EBS_Red_Warning_Lamp_State();
m_Condition1 = (uint8_t)Get_ID_18F0010B_Sig_ABSorEBS_AmberWarnSt_power_veh();
if ((m_Condition1 == 1u) || (m_Condition2 == 0u) || (m_Condition3 == 1u))
if (m_Condition1 == 1u)
{
u8Result = 1u;
u8Result = 0u;
}
else
{
......@@ -1710,31 +1699,38 @@ uint8_t LED_BRAKE_AIR_or_EBS_RED_R_Judgement(void)
return u8Result;
}
void LED_BRAKE_AIR_or_EBS_RED_R_Execution(uint8_t led_status)
void LED_BRAKE_AIR_or_EBS_YELLOW_R_Execution(uint8_t led_status)
{
BRAKE_AIR_EBS_LED_MCU = led_status;
if (led_status == 1)
{
IS31_CHIP0_CHANNEL09 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL09 = 0x00;
}
if (led_status == 1)
{
SEG_LED_BRAKE_AIR_or_EBS_RED_R(7);
SEG_LED_BRAKE_AIR_or_EBS_YELLOW_R(7);
}
else
{
SEG_LED_BRAKE_AIR_or_EBS_RED_R(0);
SEG_LED_BRAKE_AIR_or_EBS_YELLOW_R(0);
}
}
/******************************************************************************
R10 BRAKE LOCK
R7 ACC AIR
信号接口:
信号定义:
输出信号:
输出信号: R6_LED_OUT
******************************************************************************/
uint8_t LED_BRAKE_LOCK_R_Judgement(void)
uint8_t LED_ACC_AIR_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
m_Condition1 = (uint8_t)XXXX;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_ACC_AIR);
if (m_Condition1 == 1u)
{
......@@ -1747,40 +1743,36 @@ uint8_t LED_BRAKE_LOCK_R_Judgement(void)
return u8Result;
}
void LED_BRAKE_LOCK_R_Execution(uint8_t led_status)
void LED_ACC_AIR_R_Execution(uint8_t led_status)
{
if (led_status == 1)
{
IS31_CHIP0_CHANNEL07 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL07 = 0x00;
}
R6_LED_OUT = led_status;
if (led_status == 1)
{
SEG_LED_BRAKE_LOCK_R(7);
SEG_LED_ACC_AIR_R(7);
}
else
{
SEG_LED_BRAKE_LOCK_R(0);
SEG_LED_ACC_AIR_R(0);
}
}
/******************************************************************************
R11 AIR SUS
R8 ABS
信号接口:
信号定义:
输出信号:
******************************************************************************/
uint8_t LED_AIR_SUS_R_Judgement(void)
uint8_t LED_ABS_R_Judgement(void)
{
uint8_t u8Result = 0u;
uint8_t m_Condition1 = 0u;
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_AIR_SUS);
uint8_t m_Condition2 = 0u;
if (m_Condition1 == 1u)
m_Condition1 = (uint8_t)Line_In_Get_Status(LINE_IN_ABS);
m_Condition2 = (uint8_t)Get_ID_18F0010B_Sig_ABSorEBS_AmberWarnSt_power_veh();
if ((m_Condition1 == 1u) || (m_Condition2 == 1u))
{
u8Result = 1u;
}
......@@ -1791,24 +1783,17 @@ uint8_t LED_AIR_SUS_R_Judgement(void)
return u8Result;
}
void LED_AIR_SUS_R_Execution(uint8_t led_status)
void LED_ABS_R_Execution(uint8_t led_status)
{
if (led_status == 1)
{
IS31_CHIP0_CHANNEL06 = LED_BRIGHTNESS;
}
else
{
IS31_CHIP0_CHANNEL06 = 0x00;
}
ABS_LED_MCU_OUT = led_status;
if (led_status == 1)
{
SEG_LED_AIR_SUS_R(7);
SEG_LED_ABS_R(7);
}
else
{
SEG_LED_AIR_SUS_R(0);
SEG_LED_ABS_R(0);
}
}
......
#include "CAN_FUNC.h"
#include "CAN_Communication_Matrix.h"
/*增加外发计算部分引用文件*/
#include "Common_Interface.h"
#include "Gauges.h"
......@@ -18,24 +18,24 @@
#include "Data_Fuel_User.h"
#include "Line_in.h"
/*---------------------------------------------------------------------------
使用しない Byte、bit に関しては全て 1(B)をセットして出力すること
对于不使用的Byte、bit,全部设置1(B)并输出
----------------------------------------------------------------------------*/
USER_ECU User_ECU;
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FEAE17
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
//0~FA:0~2000 [kPa] FB~FF:Not used // Factor:8
uint8_t Main_Air_Pressure : 8 ;//WET 预留
......@@ -58,21 +58,21 @@ typedef union
uint8_t Rader_Stain_Information : 2 ;
uint8_t Not_used5 : 2 ;
uint8_t Parking_Brake_Switch : 2 ;
}bit;
}_Msg18FEAE17Map;
} bit;
} _Msg18FEAE17Map;
void Can_Set_Buff_18FEAE17(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FEAE17Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
MsgMap.bit.Service_Brake_Circuit1_AirPressure = (uint8_t)(AirPressure_Get_kPa(0) >> 3) ;
MsgMap.bit.Service_Brake_Circuit2_AirPressure = (uint8_t)(AirPressure_Get_kPa(1) >> 3) ;
if(RTE_Read_KL30_Valid())
if (RTE_Read_KL30_Valid())
{
MsgMap.bit.Power_Supply_Voltage_L = (uint8_t)(RTE_Read_KL30_Voltage() / 50);
......@@ -84,8 +84,8 @@ void Can_Set_Buff_18FEAE17(uint8_t CopyData [])
MsgMap.bit.Power_Supply_Voltage_L = 0;
MsgMap.bit.Power_Supply_Voltage_H = 0;
}
if(Line_In_Get_Status(LINE_IN_PARK_BRAKE))
if (Line_In_Get_Status(LINE_IN_PARK_BRAKE))
{
MsgMap.bit.Parking_Brake_Switch = 1 ;
}
......@@ -94,7 +94,7 @@ void Can_Set_Buff_18FEAE17(uint8_t CopyData [])
MsgMap.bit.Parking_Brake_Switch = 0 ;
}
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
......@@ -102,16 +102,16 @@ void Can_Set_Buff_18FEAE17(uint8_t CopyData [])
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FF3E17
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint16_t Pulse_Correction_Facor : 16 ;
......@@ -139,36 +139,36 @@ void Can_Set_Buff_18FEAE17(uint8_t CopyData [])
uint8_t TURN_L_Lamp_Status : 1 ;
uint8_t Not_used9 : 1 ;
uint8_t Not_used10 : 1 ;
}bit;
}_Msg18FF3E17Map;
} bit;
} _Msg18FF3E17Map;
void Can_Set_Buff_18FF3E17(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FF3E17Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FED917
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t Not_used0 : 4 ;
uint8_t BlendingSwitchPosition : 2 ;
......@@ -186,20 +186,20 @@ typedef union
uint8_t Not_used7 : 8 ;
uint8_t Not_used8 : 8 ;
}bit;
}_Msg18FED917Map;
} bit;
} _Msg18FED917Map;
void Can_Set_Buff_18FED917(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FED917Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
......@@ -207,16 +207,16 @@ void Can_Set_Buff_18FED917(uint8_t CopyData [])
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FEE617
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t Seconds : 8 ;//Factor 0.25
uint8_t Minutes : 8 ;
......@@ -226,13 +226,13 @@ typedef union
uint8_t Year : 8 ;//Offset 1985
uint8_t Not_used : 8 ;
uint8_t Not_used1 : 8 ;
}bit;
}_Msg18FEE617Map;
} bit;
} _Msg18FEE617Map;
void Can_Set_Buff_18FEE617(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FEE617Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
......@@ -242,39 +242,40 @@ void Can_Set_Buff_18FEE617(uint8_t CopyData [])
MsgMap.bit.Hours = Get_RTC_HOUR();
MsgMap.bit.Day = Get_RTC_DATE() << 2 ;
MsgMap.bit.Month = Get_RTC_MONTH();
MsgMap.bit.Year = Get_RTC_YEAR() + 15;
MsgMap.bit.Year = Get_RTC_YEAR() + 15;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18EF1817
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
const uint8_t IDAE17_TYTE_DATA[ID18FEAE17_TYPE_MAX] = {0x50,0x51,0x52,0x53,0x54,0x60,0x61,0x62,0x63,0x64,0x20,0x22,0x30};
static const uint8_t IDAE17_SendOrder[ID18FEAE17_TYPE_MAX][2U] =
{ // A B
{ID_AlarmThreshold ,ID_TripA_AvrFuelCost },
{ID_TripA_AvrFuelCost ,ID_TripA_AvrSpeed },
{ID_TripA_AvrSpeed ,ID_TripA_ConsDyeingFee },
{ID_TripA_ConsDyeingFee ,ID_TripA_IdleSpeedTime },
{ID_TripA_IdleSpeedTime ,ID_TripA_RunTime },
{ID_TripA_RunTime ,ID_TripB_AvrFuelCost },
{ID_TripB_AvrFuelCost ,ID_TripB_AvrSpeed },
{ID_TripB_AvrSpeed ,ID_TripB_ConsDyeingFee },
{ID_TripB_ConsDyeingFee ,ID_TripB_IdleSpeedTime },
{ID_TripB_IdleSpeedTime ,ID_TripB_RunTime },
{ID_TripB_RunTime ,ID_ResidualDistance },
{ID_ResidualDistance ,ID_HowMany },
{ID_HowMany ,ID_AlarmThreshold },
const uint8_t IDAE17_TYTE_DATA[ID18FEAE17_TYPE_MAX] = {0x50, 0x51, 0x52, 0x53, 0x54, 0x60, 0x61, 0x62, 0x63, 0x64, 0x20, 0x22, 0x30};
static const uint8_t IDAE17_SendOrder[ID18FEAE17_TYPE_MAX][2U] =
{
// A B
{ID_AlarmThreshold , ID_TripA_AvrFuelCost },
{ID_TripA_AvrFuelCost , ID_TripA_AvrSpeed },
{ID_TripA_AvrSpeed , ID_TripA_ConsDyeingFee },
{ID_TripA_ConsDyeingFee , ID_TripA_IdleSpeedTime },
{ID_TripA_IdleSpeedTime , ID_TripA_RunTime },
{ID_TripA_RunTime , ID_TripB_AvrFuelCost },
{ID_TripB_AvrFuelCost , ID_TripB_AvrSpeed },
{ID_TripB_AvrSpeed , ID_TripB_ConsDyeingFee },
{ID_TripB_ConsDyeingFee , ID_TripB_IdleSpeedTime },
{ID_TripB_IdleSpeedTime , ID_TripB_RunTime },
{ID_TripB_RunTime , ID_ResidualDistance },
{ID_ResidualDistance , ID_HowMany },
{ID_HowMany , ID_AlarmThreshold },
};
//Byte:6为最高级别Byte,Byte:3为最低级别Byte
void Can_Set_Buff_18EF1817(uint8_t CopyData [])
......@@ -282,14 +283,14 @@ void Can_Set_Buff_18EF1817(uint8_t CopyData [])
static uint8_t Count = 0 ;
uint8_t Type ;
uint8_t i = 0 ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = 0xff ;
}
Meter_RequestCode_Update();
CopyData[ 0 ] = Get_Meter_RequestCode();
if(Get_Meter_RequestID() == METER_CODE_DATA_T_REQ)
if (Get_Meter_RequestID() == METER_CODE_DATA_T_REQ)
{
//A
Type = IDAE17_SendOrder[Count][0];
......@@ -298,7 +299,7 @@ void Can_Set_Buff_18EF1817(uint8_t CopyData [])
CopyData[ 1 ] = IDAE17_TYTE_DATA[Type] ;
if(Get_ECU_RespSure())
if (Get_ECU_RespSure())
{
CopyData[ 2 ] = (uint8_t)Get_ECU_Data(Type);
CopyData[ 3 ] = (uint8_t)(Get_ECU_Data(Type) >> 8);
......@@ -312,10 +313,10 @@ void Can_Set_Buff_18EF1817(uint8_t CopyData [])
CopyData[ 4 ] = 0xff ;
CopyData[ 5 ] = 0xff ;
}
}
Count ++ ;
if(Count >= ID18FEAE17_TYPE_MAX)
if (Count >= ID18FEAE17_TYPE_MAX)
{
Count = 0 ;
}
......@@ -323,13 +324,13 @@ void Can_Set_Buff_18EF1817(uint8_t CopyData [])
else
{
CopyData[ 1 ] = IDAE17_TYTE_DATA[Get_Meter_RequestType()] ;
if(Get_ECU_RespSure())
if (Get_ECU_RespSure())
{
Set_Meter_RequestCode(METER_CODE_DATA_T_REQ,ID_TripA_AvrFuelCost,0);
Set_Meter_RequestCode(METER_CODE_DATA_T_REQ, ID_TripA_AvrFuelCost, 0);
}
else
{
CopyData[ 2 ] = (uint8_t)Get_Meter_RequestData(Type);
CopyData[ 3 ] = (uint8_t)(Get_Meter_RequestData(Type) >> 8);
CopyData[ 4 ] = (uint8_t)(Get_Meter_RequestData(Type) >> 16);
......@@ -339,21 +340,21 @@ void Can_Set_Buff_18EF1817(uint8_t CopyData [])
//0xFF固定送信
CopyData[ 6 ] = 0xff ;
CopyData[ 7 ] = 0xff ;
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FEE017
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
//uint32_t Not_used : 32 ;
//uint32_t Total_Vehicle_Distance : 32 ; //Factor 0.125
......@@ -365,20 +366,20 @@ typedef union
uint8_t : 8 ;
uint8_t : 8 ;
uint8_t : 8 ;
}bit;
}_Msg18FEE017Map;
} bit;
} _Msg18FEE017Map;
void Can_Set_Buff_18FEE017(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FEE017Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
//MsgMap.bit.Total_Vehicle_Distance = (Data_ODO_Read()/10) << 3 ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
......@@ -386,16 +387,16 @@ void Can_Set_Buff_18FEE017(uint8_t CopyData [])
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FEFC17
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t WasherFluidLevel : 8 ;//Factor 0.4
uint8_t FuelLevel_1 : 8 ;//Factor 0.4
......@@ -404,20 +405,20 @@ typedef union
uint16_t CargoAmbientTemperature : 16;//Factor 0.03125 Offset -273
uint8_t FuelLevel_2 : 8 ;//Factor 0.4
uint8_t EngOilFilterDiffPressure_ExtRange : 8 ;//Factor 5
}bit;
}_Msg18FEFC17Map;
} bit;
} _Msg18FEFC17Map;
void Can_Set_Buff_18FEFC17(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FEFC17Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
......@@ -425,16 +426,16 @@ void Can_Set_Buff_18FEFC17(uint8_t CopyData [])
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FF2517
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t Year : 8 ;//0~63: 0~99 [Year]
uint8_t Month : 8 ;//1~C: 1~12 [Month]
......@@ -444,13 +445,13 @@ typedef union
uint8_t ODOMeter_L : 8 ;
uint8_t ODOMeter_M : 8 ;
uint8_t ODOMeter_H : 8 ;
}bit;
}_Msg18FF2517Map;
} bit;
} _Msg18FF2517Map;
void Can_Set_Buff_18FF2517(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FF2517Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
......@@ -461,11 +462,11 @@ void Can_Set_Buff_18FF2517(uint8_t CopyData [])
MsgMap.bit.Day = Get_RTC_DATE() ;
MsgMap.bit.Year = Get_RTC_YEAR() ;
MsgMap.bit.Minute = Get_RTC_MINUTE() ;
MsgMap.bit.ODOMeter_L = (uint8_t)(Data_ODO_Read()/10) ;
MsgMap.bit.ODOMeter_M = (uint8_t)((Data_ODO_Read()/10) >> 8) ;
MsgMap.bit.ODOMeter_H = (uint8_t)((Data_ODO_Read()/10) >> 16) ;
MsgMap.bit.ODOMeter_L = (uint8_t)(Data_ODO_Read() / 10) ;
MsgMap.bit.ODOMeter_M = (uint8_t)((Data_ODO_Read() / 10) >> 8) ;
MsgMap.bit.ODOMeter_H = (uint8_t)((Data_ODO_Read() / 10) >> 16) ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
......@@ -473,16 +474,16 @@ void Can_Set_Buff_18FF2517(uint8_t CopyData [])
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FF2A17
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t Meter_Malfunction : 2 ;
uint8_t Over_Heat_Warning_Status : 1 ;
......@@ -542,8 +543,8 @@ typedef union
uint8_t IRIS_Warning_Lamp_Status : 1 ;
uint8_t Range_Air_Cut_Warning : 1 ;
uint8_t MJX_MEB9_Manual_TM_Range_Low : 1 ;
}bit;
}_Msg18FF2A17Map;
} bit;
} _Msg18FF2A17Map;
void Can_Set_Buff_18FF2A17(uint8_t CopyData [])
{
......@@ -552,48 +553,49 @@ void Can_Set_Buff_18FF2A17(uint8_t CopyData [])
uint16_t Voltage = 0 ;
Ign_Time = Common_GetIgnOnTime();
_Msg18FF2A17Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
//Byte:0
if(Coolant_Get_Valid())
//Byte:0
if (Coolant_Get_Valid())
{
if(Ign_Time < 3000)
if (Ign_Time < 3000)
{
MsgMap.bit.Water_Temp_Level = 0 ;
MsgMap.bit.Over_Heat_Warning_Status = 0 ;
}
else
{
if(Coolant_Get_CurSeg() <= 10)
if (Coolant_Get_CurSeg() <= 10)
{
MsgMap.bit.Water_Temp_Level = 0 ;
MsgMap.bit.Over_Heat_Warning_Status = 0 ;
}
else if(Coolant_Get_CurSeg() == 11 || Coolant_Get_CurSeg() == 12)
else if (Coolant_Get_CurSeg() == 11 || Coolant_Get_CurSeg() == 12)
{
MsgMap.bit.Water_Temp_Level = 1 ;
MsgMap.bit.Water_Temp_Level = 1 ;
MsgMap.bit.Over_Heat_Warning_Status = 1 ;
}
}
}
else
{
MsgMap.bit.Water_Temp_Level = 2 ;
MsgMap.bit.Over_Heat_Warning_Status = 0 ;
}
}
//Get_Voltmeter_Valid();
if(Get_Voltmeter_AvrVoltage())
{//0x00~0xFA : 9~34 [V]
Voltage = Get_Voltmeter_AvrVoltage();
if (Get_Voltmeter_AvrVoltage())
{
//0x00~0xFA : 9~34 [V]
Voltage = Get_Voltmeter_AvrVoltage();
Voltage += 50 ;
Voltage /= 100 ;
if(Voltage >= 90)
if (Voltage >= 90)
{
Voltage -= 90 ;
}
......@@ -601,27 +603,27 @@ void Can_Set_Buff_18FF2A17(uint8_t CopyData [])
{
Voltage = 0 ;
}
}
MsgMap.bit.IGN_Voltage = Voltage ;
}
MsgMap.bit.IGN_Voltage = Voltage ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FF9D17
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t Fuel_Level : 8 ;//0~64:0~100[%] FE:failure
uint8_t NotUsed : 8 ;
......@@ -631,20 +633,20 @@ typedef union
uint8_t NotUsed4 : 8 ;
uint8_t NotUsed5 : 8 ;
uint8_t NotUsed6 : 8 ;
}bit;
}_Msg18FF9D17Map;
} bit;
} _Msg18FF9D17Map;
void Can_Set_Buff_18FF9D17(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FF9D17Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
MsgMap.bit.Fuel_Level = Fuel_Get_Percent() ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
......@@ -652,46 +654,46 @@ void Can_Set_Buff_18FF9D17(uint8_t CopyData [])
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18FFE517
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : Event triggered
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t DTC_Clear_Request : 8 ;
uint8_t Req_0Point : 8 ;
uint8_t System_Demonstration_Request : 7 ;
uint8_t Ferry_Mode_Cancel : 1 ;
uint8_t Ferry_Mode_Cancel : 1 ;
uint8_t Not_used : 8 ;
uint8_t Not_used1 : 8 ;
uint8_t Not_used2 : 8 ;
uint8_t Not_used3 : 8 ;
uint8_t Not_used4 : 8 ;
}bit;
}_Msg18FFE517Map;
} bit;
} _Msg18FFE517Map;
void Can_Set_Buff_18FFE517(uint8_t CopyData [])
{
uint8_t i ;
_Msg18FFE517Map MsgMap ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
MsgMap.Data[ i ] = 0xff ;
}
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = MsgMap.Data[ i ] ;
}
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18EF2D17
* Description :
* Description :
* Input : None
* Output : None
* Return : None
......@@ -700,58 +702,58 @@ void Can_Set_Buff_18FFE517(uint8_t CopyData [])
void Can_Set_Buff_18EF2D17(uint8_t CopyData [])
{
uint8_t i ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = 0xff ;
}
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_18033317
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t PairCmd : 8 ;
uint8_t TireNumber : 8 ;
uint8_t Not_used : 8 ;
uint8_t Not_used1 : 8 ;
uint8_t Not_used2 : 8 ;
uint8_t Not_used3 : 8 ;
uint8_t Not_used4 : 8 ;
uint8_t Not_used5 : 8 ;
}bit;
}_Msg18033317Map;
} bit;
} _Msg18033317Map;
void Can_Set_Buff_18033317(uint8_t CopyData [])
{
uint8_t i ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = 0xff ;
}
}
/*-------------------------------------------------------------------------
* Function Name : Can_Set_Buff_180433A2
* Description :
* Description :
* Input : None
* Output : None
* Return : None
* onther : None
--------------------------------------------------------------------------*/
typedef union
typedef union
{
uint8_t Data[8] ;
struct
struct
{
uint8_t SetupCmd : 8 ;
uint8_t Not_used : 8 ;
uint8_t Not_used1 : 8 ;
uint8_t Not_used2 : 8 ;
......@@ -759,15 +761,138 @@ typedef union
uint8_t Not_used4 : 8 ;
uint8_t Not_used5 : 8 ;
uint8_t Not_used6 : 8 ;
}bit;
}_Msg180433A2Map;
} bit;
} _Msg180433A2Map;
void Can_Set_Buff_180433A2(uint8_t CopyData [])
{
uint8_t i ;
for(i = 0 ;i < 8 ;i ++)
for (i = 0 ; i < 8 ; i ++)
{
CopyData[ i ] = 0xff ;
}
}
/*CAN接收处理*/
void Drive_Info_IC1_STATUS_Rx(void)
{
uint32_t Temp = 0u;
uint8_t Data_Sig = 0u;
uint8_t Data_Type = 0u;
Data_Sig = Get_ID_18EF1718_Sig_Response_Code();
Data_Type = Get_ID_18EF1718_Sig_Data_Type();
Temp = Get_ID_18EF1718_Sig_Date();
switch (Data_Sig)
{
case 0x81:
switch (Data_Type)
{
case 0x50 :
User_ECU.TripA_Fuel = Temp ;
break;
case 0x51 :
User_ECU.TripA_Average_Speed = Temp ;
break;
case 0x52 :
User_ECU.TripA_Fuel_Consume = Temp ;
break;
case 0x53 :
User_ECU.TripA_Idling = Temp ;
break;
case 0x54 :
User_ECU.TripA_Runing = Temp ;
break;
case 0x60 :
User_ECU.TripB_Fuel = Temp ;
break;
case 0x61 :
User_ECU.TripB_Average_Speed = Temp ;
break;
case 0x62 :
User_ECU.TripB_Fuel_Consume = Temp ;
break;
case 0x63 :
User_ECU.TripB_Idling = Temp ;
break;
case 0x64 :
User_ECU.TripB_Runing = Temp ;
break;
case 0x22 :
User_ECU.Engine_Surplus = Temp ;
break;
default:
break;
}
break;
case 0x40:
switch (Data_Type)
{
case 0x50 :
User_ECU.TripA_Fuel = Temp ;
break;
case 0x51 :
User_ECU.TripA_Average_Speed = Temp ;
break;
case 0x52 :
User_ECU.TripA_Fuel_Consume = Temp ;
break;
case 0x53 :
User_ECU.TripA_Idling = Temp ;
break;
case 0x54 :
User_ECU.TripA_Runing = Temp ;
break;
case 0x60 :
User_ECU.TripB_Fuel = Temp ;
break;
case 0x61 :
User_ECU.TripB_Average_Speed = Temp ;
break;
case 0x62 :
User_ECU.TripB_Fuel_Consume = Temp ;
break;
case 0x63 :
User_ECU.TripB_Idling = Temp ;
break;
case 0x64 :
User_ECU.TripB_Runing = Temp ;
break;
case 0x22 :
User_ECU.Engine_Surplus = Temp ;
break;
default:
break;
}
break;
default:
break;
}
//if (State_Flag.FState_COilTimeOut < FState_COilTimeOutNum)
//{
// State_Flag.FState_COilTimeOut++;
//}
//if (Data_Sig == 0x40u)
//{
// State_Flag.FState_ClearOilRx == 1;
//}
}
uint32_t Common_Data_Get_TripA_Fuel(void)
{
return User_ECU.TripA_Fuel ;
}
uint32_t Common_Data_Get_TripA_Average_Speed(void)
{
return User_ECU.TripA_Average_Speed ;
}
uint32_t Common_Data_Get_TripB_Fuel(void)
{
return User_ECU.TripB_Fuel ;
}
uint32_t Common_Data_Get_TripB_Average_Speed(void)
{
return User_ECU.TripB_Average_Speed ;
}
......@@ -3,9 +3,25 @@
#include "TYW_stdint.h"
typedef struct
{
uint32_t TripA_Fuel ;
uint32_t TripA_Average_Speed ;
uint32_t TripA_Fuel_Consume ;
uint32_t TripA_Idling ;
uint32_t TripA_Runing ;
uint32_t TripB_Fuel ;
uint32_t TripB_Average_Speed ;
uint32_t TripB_Fuel_Consume ;
uint32_t TripB_Idling ;
uint32_t TripB_Runing ;
uint32_t Engine_Surplus ;
} USER_ECU;
extern USER_ECU User_ECU;
extern void Can_Set_Buff_18FEAE17(uint8_t CopyData []) ;
extern void Can_Set_Buff_18FF3E17(uint8_t CopyData []) ;
extern void Can_Set_Buff_18FED917(uint8_t CopyData []) ;
......@@ -31,4 +47,13 @@ extern void Can_Set_Buff_18EF2D17(uint8_t CopyData []) ;
extern void Can_Set_Buff_18033317(uint8_t CopyData []) ;
extern void Can_Set_Buff_180433A2(uint8_t CopyData []) ;
void Drive_Info_IC1_STATUS_Rx(void);
uint32_t Common_Data_Get_TripA_Fuel(void);
uint32_t Common_Data_Get_TripA_Average_Speed(void);
uint32_t Common_Data_Get_TripB_Fuel(void);
uint32_t Common_Data_Get_TripB_Average_Speed(void);
#endif
\ No newline at end of file
......@@ -22,6 +22,10 @@
#include "Flash_synchronizer.h"
#include "Popups.h"
#include "Data_Fuel_User.h"
#include "CAN_FUNC.h"
#define TRAPA 0u
#define TRAPB 1u
volatile _Display_State_Flag State_Flag;
......@@ -455,7 +459,7 @@ void Gui_TRIPA_Display(uint8_t Mode)
/*显示 TRIP A 的数值*/
GUI_General_Digit_Display(TRIP_Sprite, TRIPA_value, Nb_19_0, 5u, 3u, GUI_DISP_TRIPA, 389, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(TRIP_Sprite, CN_TRIP_danwei, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ km ”*/
GUI_General_Display(TRIP_Sprite, CN_PJchesu_kmh, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ km ”*/
}
else
{
......@@ -479,7 +483,7 @@ void Gui_TRIPB_Display(uint8_t Mode)
/*显示 TRIP B 的数值*/
GUI_General_Digit_Display(TRIP_Sprite, TRIPB_value, Nb_19_0, 5u, 3u, GUI_DISP_TRIPA, 389, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(TRIP_Sprite, CN_TRIP_danwei, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ km ”*/
GUI_General_Display(TRIP_Sprite, CN_PJchesu_kmh, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ km ”*/
}
else
{
......@@ -555,10 +559,9 @@ void Gui_ADAS_Display(uint8_t Mode)
/*车*/
GUI_General_Display(ADAS_Sprite, CN_che_shanshuo, GUI_BLENDMODE_SRC_OVER);
/*道*/
GUI_General_Display(ADAS_Sprite, CN_Road4_shanshuo, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road3_shanshuo, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road2_shanshuo, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road1_shanshuo, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road2_shanshuo, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road3_shanshuo, GUI_BLENDMODE_SRC_OVER);
}
else
{
......@@ -574,14 +577,12 @@ void Gui_ADAS_Display(uint8_t Mode)
ADAS_Value = 2u;
switch (ADAS_Value)
{
case 4u:
GUI_General_Display(ADAS_Sprite, CN_Road4, GUI_BLENDMODE_SRC_OVER);
case 3u:
GUI_General_Display(ADAS_Sprite, CN_Road3, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road1, GUI_BLENDMODE_SRC_OVER);
case 2u:
GUI_General_Display(ADAS_Sprite, CN_Road2, GUI_BLENDMODE_SRC_OVER);
case 1u:
GUI_General_Display(ADAS_Sprite, CN_Road1, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(ADAS_Sprite, CN_Road3, GUI_BLENDMODE_SRC_OVER);
break;
default:
break;
......@@ -787,16 +788,26 @@ void GUI_AVG_FuelSpeed_Display(uint8_t Mode)
}
else if (Mode == GUI_DISP_MODE_BLANK)
{
GUI_General_Display(MultiPurpose_Sprite, CN_TRIPAB, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_PJyouhao, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_PJchesu, GUI_BLENDMODE_SRC_OVER);
switch (0u)
{
case 0:
GUI_Translate_Display(MultiPurpose_Sprite, CN_TRIP, 400u, 217u, GUI_BLENDMODE_SRC_OVER);
GUI_Translate_Display(MultiPurpose_Sprite, CN_TRIP_A, 475u, 223u, GUI_BLENDMODE_SRC_OVER);
case TRAPA:
GUI_General_Display(MultiPurpose_Sprite, CN_TRIPAB_A, GUI_BLENDMODE_SRC_OVER);
GUI_Drive_Info_Avg_Speed_Display(TRAPA);
GUI_Drive_Info_Avg_Fuel_Display(TRAPA);
break;
case 1:
GUI_Translate_Display(MultiPurpose_Sprite, CN_TRIP, 400u, 217u, GUI_BLENDMODE_SRC_OVER);
GUI_Translate_Display(MultiPurpose_Sprite, CN_TRIP_B, 475u, 223u, GUI_BLENDMODE_SRC_OVER);
case TRAPB:
GUI_General_Display(MultiPurpose_Sprite, CN_TRIPAB_B, GUI_BLENDMODE_SRC_OVER);
GUI_Drive_Info_Avg_Speed_Display(TRAPB);
GUI_Drive_Info_Avg_Fuel_Display(TRAPB);
break;
default:
break;
}
......@@ -815,9 +826,10 @@ void GUI_AVG_FuelSpeed_Display(uint8_t Mode)
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Drive_Info_Avg_Speed_Display(uint8_t Valid, uint16_t Speed)
void GUI_Drive_Info_Avg_Speed_Display(uint16_t Speed)
{
uint8_t CanStatus1 = 0u;
uint32_t Average_Speed = 0;
CanStatus1 = CAN_MSG_Status(ID_CanMsg18EF1718_Msg_Count);
......@@ -827,82 +839,60 @@ void GUI_Drive_Info_Avg_Speed_Display(uint8_t Valid, uint16_t Speed)
}
else
{
#if 0
/*单位切换*/
if (User_App.User_Company == 1)
TFT_LCD_Display_Sprite(LAYER_Trip5, SN_D_05_X386_Y188_png, 386, 188, 64); /*km/H*/
else
if (1)
{
if (Speed == TRAPB) /*Trip B*/
TFT_LCD_Display_Sprite(LAYER_Trip5, SN_D_06_X386_Y188_png, 386, 188, 64); /*MPH*/
else /*Trip A ODO*/
TFT_LCD_Display_Sprite(LAYER_Trip5, SN_D_06_X386_Y188_png, 386, 188, 64); /*MPH*/
GUI_General_Display(MultiPurpose_Sprite, CN_PJchesu_kmh, GUI_BLENDMODE_SRC_OVER);/*km/H*/
}
/*是否有效*/
if (User_App.User_Company == 1)
else
{
if (Speed == TRAPB) /*Trip B*/
{
if (User_ECU.TripB_Average_Speed < 1000 )
{
GUI_General_Digit_Display(User_ECU.TripB_Average_Speed / 10, DIGIT_FIVE_WHITE, 4, 3, LAYER_NUMT_1, GUIBGAVGSpeedPosX, 180, 64);
}
else
{
TFT_LCD_Display_Sprite(LAYER_NUMT_1, SN_Number_05_white_Line_png, 343, 180, 64);
TFT_LCD_Display_Sprite(LAYER_NUMT_2, SN_Number_05_white_Line_png, 363, 180, 64);
TFT_LCD_Clear_Layer(LAYER_NUMT_3);
TFT_LCD_Clear_Layer(LAYER_NUMT_4);
}
GUI_General_Display(MultiPurpose_Sprite, CN_PJchesu_kmh, GUI_BLENDMODE_SRC_OVER); /*MPH*/
}
else
else /*Trip A ODO*/
{
if (User_ECU.TripA_Average_Speed < 1000)
{
GUI_General_Digit_Display(User_ECU.TripA_Average_Speed / 10, DIGIT_FIVE_WHITE, 4, 3, LAYER_NUMT_1, GUIBGAVGSpeedPosX, 180, 64);
}
else
{
TFT_LCD_Display_Sprite(LAYER_NUMT_1, SN_Number_05_white_Line_png, 343, 180, 64);
TFT_LCD_Display_Sprite(LAYER_NUMT_2, SN_Number_05_white_Line_png, 363, 180, 64);
TFT_LCD_Clear_Layer(LAYER_NUMT_3);
TFT_LCD_Clear_Layer(LAYER_NUMT_4);
}
GUI_General_Display(MultiPurpose_Sprite, CN_PJchesu_kmh, GUI_BLENDMODE_SRC_OVER); /*MPH*/
}
}
else
/*单位切换*/
if (1)
{
if (Speed == TRAPB) /*Trip B*/
{
if (User_ECU.TripB_Average_Speed < 1000)
Average_Speed = Common_Data_Get_TripB_Average_Speed();
if (Average_Speed < 1000u )
{
GUI_General_Digit_Display(User_ECU.TripB_Average_Speed / 10, DIGIT_FIVE_WHITE, 4, 3, LAYER_NUMT_1, GUIBGAVGSpeedPosX, 180, 64);
GUI_General_Digit_Display(MultiPurpose_Sprite, (Average_Speed / 10u), Nb_21_0, 4u, 3u, GUIBGAVGSpeedPosX, 305u, GUI_BLENDMODE_SRC_OVER);
}
else
{
TFT_LCD_Display_Sprite(LAYER_NUMT_1, SN_Number_05_white_Line_png, 343, 180, 64);
TFT_LCD_Display_Sprite(LAYER_NUMT_2, SN_Number_05_white_Line_png, 363, 180, 64);
TFT_LCD_Clear_Layer(LAYER_NUMT_3);
TFT_LCD_Clear_Layer(LAYER_NUMT_4);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 667u, 305u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 642u, 305u, GUI_BLENDMODE_CUSTOM);
}
}
else
{
if (User_ECU.TripA_Average_Speed < 1000)
Average_Speed = Common_Data_Get_TripA_Average_Speed();
if (Average_Speed < 1000u )
{
GUI_General_Digit_Display(User_ECU.TripA_Average_Speed / 10, DIGIT_FIVE_WHITE, 4, 3, LAYER_NUMT_1, GUIBGAVGSpeedPosX, 180, 64);
GUI_General_Digit_Display(MultiPurpose_Sprite, (Average_Speed / 10u), Nb_21_0, 4u, 3u, GUIBGAVGSpeedPosX, 305u, GUI_BLENDMODE_SRC_OVER);
}
else
{
TFT_LCD_Display_Sprite(LAYER_NUMT_1, SN_Number_05_white_Line_png, 343, 180, 64);
TFT_LCD_Display_Sprite(LAYER_NUMT_2, SN_Number_05_white_Line_png, 363, 180, 64);
TFT_LCD_Clear_Layer(LAYER_NUMT_3);
TFT_LCD_Clear_Layer(LAYER_NUMT_4);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 667u, 305u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 642u, 305u, GUI_BLENDMODE_CUSTOM);
}
}
}
#endif
else
{
;
}
}
}
/*--------------------------------------------------------------------------
......@@ -913,9 +903,10 @@ void GUI_Drive_Info_Avg_Speed_Display(uint8_t Valid, uint16_t Speed)
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Drive_Info_Avg_Fuel_Display(uint8_t Valid, uint16_t Fuel)
void GUI_Drive_Info_Avg_Fuel_Display(uint16_t Fuel)
{
uint8_t CanStatus1 = 0u;
uint32_t AVGFuel = 0u;
CanStatus1 = CAN_MSG_Status(ID_CanMsg18EF1718_Msg_Count);
......@@ -925,83 +916,91 @@ void GUI_Drive_Info_Avg_Fuel_Display(uint8_t Valid, uint16_t Fuel)
}
else
{
#if 0
/*单位切换*/
if (User_App.User_Company == 1)
TFT_LCD_Display_Sprite(LAYER_Trip3, SN_D_04_X386_Y152_png, 386, 152, 64); //L/km
if (1)
{
GUI_General_Display(MultiPurpose_Sprite, CN_PJyouhao_L100km, GUI_BLENDMODE_SRC_OVER); /*L/km*/
}
else
{
if (Fuel == TRAPB) //Trip B
TFT_LCD_Display_Sprite(LAYER_Trip3, SN_D_07_X386_Y152_png, 386, 156, 64); //MPG
else //Trip A ODO
TFT_LCD_Display_Sprite(LAYER_Trip3, SN_D_07_X386_Y152_png, 386, 156, 64); //L/m
if (Fuel == TRAPB) /*Trip B*/
{
GUI_General_Display(MultiPurpose_Sprite, CN_PJyouhao_L100km, GUI_BLENDMODE_SRC_OVER); /*MPG*/
}
else /*Trip A ODO*/
{
GUI_General_Display(MultiPurpose_Sprite, CN_PJyouhao_L100km, GUI_BLENDMODE_SRC_OVER); /*L/m*/
}
}
TFT_LCD_Display_Sprite(LAYER_NUMO_5, SN_Number_05_white_Point_png, 354, 140, 64); //top
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_dian, 656u, 285u, GUI_BLENDMODE_CUSTOM); /*top*/
if (User_App.User_Company == 1)
if (1)
{
if (Fuel == TRAPB) //Trip B
if (Fuel == TRAPB) /*Trip B*/
{
if (User_ECU.TripB_Fuel > 1000)
AVGFuel = Common_Data_Get_TripB_Fuel();
if (AVGFuel > 1000u)
{
GUI_General_Digit_Display((1000000 / User_ECU.TripB_Fuel), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //L/100km
GUI_General_Digit_Display(MultiPurpose_Sprite, (1000000u / AVGFuel), Nb_21_0, 4u, 2u, GUIBGAVGFuelPosX, 262u, GUI_BLENDMODE_SRC_OVER);
}
else
{
TFT_LCD_Clear_Layer(LAYER_NUMO_4);
TFT_LCD_Display_Sprite(LAYER_NUMO_3, SN_Number_05_white_Line_png, 314, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_2, SN_Number_05_white_Line_png, 334, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_1, SN_Number_05_white_Line_png, 363, 140, 64);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 603u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 628u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 667u, 262u, GUI_BLENDMODE_CUSTOM);
}
}
else
{
if (User_ECU.TripA_Fuel > 1000)
AVGFuel = Common_Data_Get_TripA_Fuel();
if (AVGFuel > 1000u)
{
GUI_General_Digit_Display((1000000 / User_ECU.TripA_Fuel), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //L/100km
GUI_General_Digit_Display(MultiPurpose_Sprite, (1000000u / AVGFuel), Nb_21_0, 4u, 2u, GUIBGAVGFuelPosX, 262u, GUI_BLENDMODE_SRC_OVER);
}
else
{
TFT_LCD_Clear_Layer(LAYER_NUMO_4);
TFT_LCD_Display_Sprite(LAYER_NUMO_3, SN_Number_05_white_Line_png, 314, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_2, SN_Number_05_white_Line_png, 334, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_1, SN_Number_05_white_Line_png, 363, 140, 64);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 603u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 628u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 667u, 262u, GUI_BLENDMODE_CUSTOM);
}
}
}
else
{
if (Fuel == TRAPB) //Trip B //ϵÊý1.069
if (Fuel == TRAPB) /*Trip B 系数1.069*/
{
if (User_ECU.TripB_Fuel > 1000)
AVGFuel = Common_Data_Get_TripB_Fuel();
if (AVGFuel > 1000u)
{
GUI_General_Digit_Display(((1000000 / User_ECU.TripB_Fuel) * 1069 / 1000), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //MPG
GUI_General_Digit_Display(MultiPurpose_Sprite, ((1000000u / AVGFuel) * 1069u / 1000u), Nb_21_0, 4u, 2u, GUIBGAVGFuelPosX, 262u, GUI_BLENDMODE_SRC_OVER);
}
else
{
TFT_LCD_Clear_Layer(LAYER_NUMO_4);
TFT_LCD_Display_Sprite(LAYER_NUMO_3, SN_Number_05_white_Line_png, 314, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_2, SN_Number_05_white_Line_png, 334, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_1, SN_Number_05_white_Line_png, 363, 140, 64);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 603u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 628u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 667u, 262u, GUI_BLENDMODE_CUSTOM);
}
}
else //Trip A ODO
else /*Trip A ODO */
{
if (User_ECU.TripB_Fuel > 1000)
AVGFuel = Common_Data_Get_TripA_Fuel();
if (AVGFuel > 1000u)
{
GUI_General_Digit_Display((10 / User_ECU.TripA_Fuel), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //L/m
GUI_General_Digit_Display(MultiPurpose_Sprite, (10u / AVGFuel), Nb_21_0, 4u, 2u, GUIBGAVGFuelPosX, 262u, GUI_BLENDMODE_SRC_OVER);
}
else
{
TFT_LCD_Clear_Layer(LAYER_NUMO_4);
TFT_LCD_Display_Sprite(LAYER_NUMO_3, SN_Number_05_white_Line_png, 314, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_2, SN_Number_05_white_Line_png, 334, 140, 64);
TFT_LCD_Display_Sprite(LAYER_NUMO_1, SN_Number_05_white_Line_png, 363, 140, 64);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 603u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 628u, 262u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_21_hengxian, 667u, 262u, GUI_BLENDMODE_CUSTOM);
}
}
}
#endif
}
}
......@@ -1028,31 +1027,31 @@ void GUI_Battery_Display_Display(uint8_t Mode)
switch (current_value)
{
case 0x0Du:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x0Cu), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x0Cu), 276u, GUI_BLENDMODE_CUSTOM);
case 0x0Cu:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x0Bu), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x0Bu), 276u, GUI_BLENDMODE_CUSTOM);
case 0x0Bu:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x0Au), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x0Au), 276u, GUI_BLENDMODE_CUSTOM);
case 0x0Au:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x09u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x09u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x09u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x08u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x08u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x08u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x07u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x07u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x07u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x06u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x06u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x06u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x05u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x05u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x05u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x04u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_white, (536 + 17u * 0x04u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x04u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x03u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_red, (536 + 17u * 0x03u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x03u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x02u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_red, (536 + 17u * 0x02u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x02u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x01u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_red, (536 + 17u * 0x01u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x01u:
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x00u), 276u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge_red, (536 + 17u * 0x00u), 276u, GUI_BLENDMODE_CUSTOM);
break;
default:
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
......
......@@ -49,18 +49,20 @@ typedef struct
uint8_t FState_TPMSSET; /*胎压设置*/
uint8_t ENTER_RETURN ;
uint8_t ENTER_RETURN;
uint8_t FState_COilTimeOut;
uint8_t FState_ClearOilRx;
} _Display_State_Flag;
extern volatile _Display_State_Flag State_Flag;
static const uint32_t GUIWedk[7u] = {CN_xingqiyi, CN_xingqier, CN_xingqisan, CN_xingqisi, CN_xingqiwu, CN_xingqiliu, CN_xingqiri};
static const uint32_t GUIGear[12u] = {CN_dangwei_01, CN_dangwei_02, CN_dangwei_03, CN_dangwei_04, CN_dangwei_05, CN_dangwei_06,
CN_dangwei_07, CN_dangwei_08, CN_dangwei_09, CN_dangwei_10, CN_dangwei_11, CN_dangwei_12
};
static const uint32_t GUIMenuWedk[7u] = {CN_Mon, CN_Tue, CN_Wed, CN_Thu, CN_Fri, CN_Sat, CN_ri};
static const uint32_t GUIGear[12u] = {CN_dangwei_1, CN_dangwei_2, CN_dangwei_3, CN_dangwei_4, CN_dangwei_5, CN_dangwei_6, CN_dangwei_7, CN_dangwei_8, CN_dangwei_9, CN_dangwei_10, CN_dangwei_11, CN_dangwei_12};
static const uint16_t GUI_DISP_AC_TEMP[2] = {229u, 216u}; /*室外温度数字显示*/
static const uint16_t GUI_DISP_Hours[2] = {370u, 349u};
......@@ -99,6 +101,9 @@ static const uint16_t GUIUsetSetYPosX[2] = {358u, 337u};
static const uint16_t GUIUsetSetMPosX[2] = {463u, 440u};
static const uint16_t GUIUsetSetDPosX[2] = {570u, 547u};
static const uint16_t GUIBGAVGSpeedPosX[4] = {667u, 642u, 617u, 592u};
static const uint16_t GUIBGAVGFuelPosX[4] = {667u, 628u, 603u, 578u};
extern void GUI_Display_KL15_ON_Init(void);
extern void GUI_Display_KL15_OFF_Init(void);
extern void GUI_Display_Value_Init(void); /*显示数据初始化*/
......@@ -106,93 +111,91 @@ extern void GUI_Display_background(void); /*刷底图*/
extern void GUI_OftenShow_Display(void); /*常显界面*/
extern void GUI_Dynamic_DIsplay(void);
void GUI_AC_Temp_Dispaly(uint8_t Mode); /*室外温度显示*/
void GUI_Time_Dispaly(uint8_t Mode); /*时间显示*/
void GUI_Data_Dispaly(uint8_t Mode); /*日历显示*/
void GUI_TFTTelltales_Display(uint8_t Mode); /*TFT指示灯*/
void GUI_WetGas_Dispaly(uint8_t Mode); /*wet气压*/
void GUI_AdBlue_Dispaly(uint8_t Mode); /**/
void Gui_TRIPA_Display(uint8_t Mode); /*TRIPA*/
void Gui_TRIPB_Display(uint8_t Mode); /*TRIPB*/
void Gui_ODO_Display(uint8_t Mode); /*ODO*/
void Gui_ADAS_Display(uint8_t Mode); /*ADAS*/
void Gui_DrivingSupport_Display(uint8_t Mode); /*定速巡航*/
void Gui_Gear_Display(uint8_t Mode); /*挡位*/
void GUI_AVG_FuelSpeed_Display(uint8_t Mode); /*平均车速,平均油耗*/
void GUI_Drive_Info_Avg_Speed_Display(uint8_t Valid, uint16_t Speed); /*平均车速*/
void GUI_Drive_Info_Avg_Fuel_Display(uint8_t Valid, uint16_t Fuel); /*平均油耗*/
void GUI_Battery_Display_Display(uint8_t Mode); /*电池电量*/
void GUI_DPD_Display_Display(uint8_t Mode); /*DPD*/
void GUI_Time_OilTemp_Display(uint8_t Mode); /*转速时间-油温*/
void GUI_Time_OilTemp_OFF_Display(uint8_t Mode); /*OFF 转速时间-油温*/
void GUI_Year_Month_Data_Display(uint8_t Mode); /*年月日*/
void GUI_block_NULL_Display(uint8_t Mode); /*……*/
void GUI_BG_Menu_Display(uint8_t Mode); /*一级菜单项*/
void GUI_BG_Menu1_Display(uint8_t Mode); /**/
void GUI_BG_Menu2_Display(uint8_t Mode); /**/
void GUI_BG_Menu3_Display(uint8_t Mode); /**/
void GUI_BG_Menu4_Display(uint8_t Mode); /**/
void GUI_BG_Menu5_Display(uint8_t Mode); /**/
void GUI_BG_Menu6_Display(uint8_t Mode); /**/
void GUI_BG_Errot_Display(uint8_t Mode); /*二级菜单--故障码显示*/
void GUI_BG_Rep_Menu_Display(uint8_t Mode); /*二级菜单--保养通知*/
void GUI_BG_RepMenu1_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu2_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu3_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu4_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu5_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu6_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu7_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu8_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu9_Display(uint8_t Mode); /**/
void GUI_BG_RepSet_Menu_Display(uint8_t Mode); /*二级菜单--保养通知设定*/
void GUI_BG_RepSetMenu1_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu2_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu3_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu4_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu5_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu6_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu7_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu8_Display(uint8_t Mode); /**/
void GUI_BG_UserSet_Menu_Display(uint8_t Mode); /*二级菜单--用户设定*/
void GUI_BG_UserSetMenu1_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu2_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu3_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu4_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu5_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu6_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu7_Display(uint8_t Mode); /**/
void GUI_BG_Demo_Menu_Display(uint8_t Mode); /*二级菜单--系统演示模式*/
void GUI_BG_DemoMenu1_Display(uint8_t Mode);
void GUI_BG_DemoMenu2_Display(uint8_t Mode);
void GUI_BG_DemoMenu3_Display(uint8_t Mode);
void GUI_BG_DemoMenu4_Display(uint8_t Mode);
void GUI_BG_TPMS_GasPIC_Display(uint8_t Mode); /*二级菜单--TPMS*/
void GUI_BG_TPMS_GasNUM_Display(uint8_t Mode);
void GUI_BG_TPMS_TempPIC_Display(uint8_t Mode);
void GUI_BG_TPMS_TempNUM_Display(uint8_t Mode);
void GUI_BG_RepMenu_Display(uint8_t Mode); /*三级菜单--保养通知*/
void GUI_BG_RepMenu_3_1_Display(uint8_t Mode);
void GUI_BG_RepMenu_3_2_Display(uint8_t Mode);
void GUI_BG_RepMenu_3_3_Display(uint8_t Mode);
void GUI_BG_RepMenu_3_4_Display(uint8_t Mode);
void GUI_BG_RepMenu_3_6_Display(uint8_t Mode);
void GUI_BG_RepMenu_3_7_Display(uint8_t Mode);
void GUI_BG_RepMenu_3_8_Display(uint8_t Mode);
void GUI_BG_RepMenuSet_Menu_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_1_Display(uint8_t Mode);
void GUI_BG_RepSetMenu_3_2_Display(uint8_t Mode);
void GUI_BG_RepSetMenu_3_3_Display(uint8_t Mode);
void GUI_BG_RepSetMenu_3_4_Display(uint8_t Mode);
void GUI_BG_RepSetMenu_3_5_Display(uint8_t Mode);
void GUI_BG_RepSetMenu_3_6_Display(uint8_t Mode);
void GUI_BG_RepSetMenu_3_7_Display(uint8_t Mode);
void GUI_BG_UserSet_Display(uint8_t Mode); /**/
void GUI_BG_UserSet_Date_Display(uint8_t Mode);
void GUI_BG_UserSet_Time_Display(uint8_t Mode);
void GUI_BG_Enter_Return_Display(uint8_t Mode);
void GUI_AC_Temp_Dispaly(uint8_t Mode); /*室外温度显示*/
void GUI_Time_Dispaly(uint8_t Mode); /*时间显示*/
void GUI_Data_Dispaly(uint8_t Mode); /*日历显示*/
void GUI_TFTTelltales_Display(uint8_t Mode); /*TFT指示灯*/
void GUI_WetGas_Dispaly(uint8_t Mode); /*wet气压*/
void GUI_AdBlue_Dispaly(uint8_t Mode); /**/
void Gui_TRIPA_Display(uint8_t Mode); /*TRIPA*/
void Gui_TRIPB_Display(uint8_t Mode); /*TRIPB*/
void Gui_ODO_Display(uint8_t Mode); /*ODO*/
void Gui_ADAS_Display(uint8_t Mode); /*ADAS*/
void Gui_DrivingSupport_Display(uint8_t Mode); /*定速巡航*/
void Gui_Gear_Display(uint8_t Mode); /*挡位*/
void GUI_AVG_FuelSpeed_Display(uint8_t Mode); /*平均车速,平均油耗*/
void GUI_Drive_Info_Avg_Speed_Display(uint16_t Speed); /*平均车速*/
void GUI_Drive_Info_Avg_Fuel_Display(uint16_t Fuel); /*平均油耗*/
void GUI_Battery_Display_Display(uint8_t Mode); /*电池电量*/
void GUI_DPD_Display_Display(uint8_t Mode); /*DPD*/
void GUI_Time_OilTemp_Display(uint8_t Mode); /*转速时间-油温*/
void GUI_Time_OilTemp_OFF_Display(uint8_t Mode); /*OFF 转速时间-油温*/
void GUI_Year_Month_Data_Display(uint8_t Mode); /*年月日*/
void GUI_block_NULL_Display(uint8_t Mode); /*……*/
void GUI_BG_Menu_Display(uint8_t Mode); /*一级菜单项*/
void GUI_BG_Menu1_Display(uint8_t Mode); /**/
void GUI_BG_Menu2_Display(uint8_t Mode); /**/
void GUI_BG_Menu3_Display(uint8_t Mode); /**/
void GUI_BG_Menu4_Display(uint8_t Mode); /**/
void GUI_BG_Menu5_Display(uint8_t Mode); /**/
void GUI_BG_Menu6_Display(uint8_t Mode); /**/
void GUI_BG_Errot_Display(uint8_t Mode); /*二级菜单--故障码显示*/
void GUI_BG_Rep_Menu_Display(uint8_t Mode); /*二级菜单--保养通知*/
void GUI_BG_RepMenu1_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu2_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu3_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu4_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu5_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu6_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu7_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu8_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu9_Display(uint8_t Mode); /**/
void GUI_BG_RepSet_Menu_Display(uint8_t Mode); /*二级菜单--保养通知设定*/
void GUI_BG_RepSetMenu1_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu2_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu3_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu4_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu5_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu6_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu7_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu8_Display(uint8_t Mode); /**/
void GUI_BG_UserSet_Menu_Display(uint8_t Mode); /*二级菜单--用户设定*/
void GUI_BG_UserSetMenu1_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu2_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu3_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu4_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu5_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu6_Display(uint8_t Mode); /**/
void GUI_BG_UserSetMenu7_Display(uint8_t Mode); /**/
void GUI_BG_Demo_Menu_Display(uint8_t Mode); /*二级菜单--系统演示模式*/
void GUI_BG_DemoMenu1_Display(uint8_t Mode); /**/
void GUI_BG_DemoMenu2_Display(uint8_t Mode); /**/
void GUI_BG_DemoMenu3_Display(uint8_t Mode); /**/
void GUI_BG_DemoMenu4_Display(uint8_t Mode); /**/
void GUI_BG_TPMS_GasPIC_Display(uint8_t Mode); /*二级菜单--TPMS*/
void GUI_BG_TPMS_GasNUM_Display(uint8_t Mode); /**/
void GUI_BG_TPMS_TempPIC_Display(uint8_t Mode); /**/
void GUI_BG_TPMS_TempNUM_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_Display(uint8_t Mode); /*三级菜单--保养通知*/
void GUI_BG_RepMenu_3_1_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_3_2_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_3_3_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_3_4_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_3_6_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_3_7_Display(uint8_t Mode); /**/
void GUI_BG_RepMenu_3_8_Display(uint8_t Mode); /**/
void GUI_BG_RepMenuSet_Menu_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_1_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_2_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_3_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_4_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_5_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_6_Display(uint8_t Mode); /**/
void GUI_BG_RepSetMenu_3_7_Display(uint8_t Mode); /**/
void GUI_BG_UserSet_Display(uint8_t Mode); /**/
void GUI_BG_UserSet_Date_Display(uint8_t Mode); /**/
void GUI_BG_UserSet_Time_Display(uint8_t Mode); /**/
void GUI_BG_Enter_Return_Display(uint8_t Mode); /**/
#endif
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -124,6 +124,7 @@ enum SpriteName
Nb_21_7,
Nb_21_8,
Nb_21_9,
Nb_21_dian,
Nb_21_hengxian,
Nb_21_maohao,
CN_Nb_28_0,
......@@ -138,25 +139,55 @@ enum SpriteName
CN_Nb_28_9,
CN_Nb_28_dian,
CN_Nb_28_heng,
CN_RC_Nb_12_0,
CN_RC_Nb_12_1,
CN_RC_Nb_12_2,
CN_RC_Nb_12_3,
CN_RC_Nb_12_4,
CN_RC_Nb_12_5,
CN_RC_Nb_12_6,
CN_RC_Nb_12_7,
CN_RC_Nb_12_8,
CN_RC_Nb_12_9,
CN_RC_Nb_12_heng,
CN_RC_Nb_14_0,
CN_RC_Nb_14_1,
CN_RC_Nb_14_2,
CN_RC_Nb_14_3,
CN_RC_Nb_14_4,
CN_RC_Nb_14_5,
CN_RC_Nb_14_6,
CN_RC_Nb_14_7,
CN_RC_Nb_14_8,
CN_RC_Nb_14_9,
CN_RC_Nb_14_dian,
CN_RC_Nb_19_0,
CN_RC_Nb_19_1,
CN_RC_Nb_19_2,
CN_RC_Nb_19_3,
CN_RC_Nb_19_4,
CN_RC_Nb_19_5,
CN_RC_Nb_19_6,
CN_RC_Nb_19_7,
CN_RC_Nb_19_8,
CN_RC_Nb_19_9,
CN_RC_Nb_19_dian,
CN_RC_Nb_21_0,
CN_RC_Nb_21_1,
CN_RC_Nb_21_2,
CN_RC_Nb_21_3,
CN_RC_Nb_21_4,
CN_RC_Nb_21_5,
CN_RC_Nb_21_6,
CN_RC_Nb_21_7,
CN_RC_Nb_21_8,
CN_RC_Nb_21_9,
CN_RC_Nb_21_heng,
CN_RC_Nb_21_maohao,
CN_qiya,
CN_qiyafuhaodeng,
CN_qiyazouge_01,
CN_qiyazouge_02,
CN_qiyazouge_03,
CN_qiyazouge_04,
CN_qiyazouge_05,
CN_qiyazouge_06,
CN_qiyazouge_07,
CN_qiyazouge_08,
CN_qiyazouge_09,
CN_qiyazouge_10,
CN_qiyazouge_11,
CN_qiyazouge_12,
CN_qiyazouge_13,
CN_qiyazouge_14,
CN_qiyazouge_15,
CN_qiyazouge_16,
CN_qiyazouge_17,
CN_tianlanye,
CN_tianlanyefuhaodeng,
CN_tianlanyezouge_01,
......@@ -164,18 +195,18 @@ enum SpriteName
CN_tianlanyezouge_03,
CN_tianlanyezouge_04,
CN_tianlanyezouge_05,
CN_dangwei_01,
CN_dangwei_02,
CN_dangwei_03,
CN_dangwei_04,
CN_dangwei_05,
CN_dangwei_06,
CN_dangwei_07,
CN_dangwei_08,
CN_dangwei_09,
CN_dangwei_1,
CN_dangwei_10,
CN_dangwei_11,
CN_dangwei_12,
CN_dangwei_2,
CN_dangwei_3,
CN_dangwei_4,
CN_dangwei_5,
CN_dangwei_6,
CN_dangwei_7,
CN_dangwei_8,
CN_dangwei_9,
CN_dangwei_buming,
CN_dangwei_DM,
CN_dangwei_E,
......@@ -192,7 +223,6 @@ enum SpriteName
CN_TRIP,
CN_TRIP_A,
CN_TRIP_B,
CN_TRIP_danwei,
CN_Alarm_01_image,
CN_Alarm_01_imageblack,
CN_Alarm_01_wenzi1,
......@@ -363,6 +393,28 @@ enum SpriteName
CN_DPD_zouge3,
CN_DPD_zouge4,
CN_DPD_zouge5,
CN_PJchesu,
CN_PJchesu_kmh,
CN_PJyouhao,
CN_PJyouhao_L100km,
CN_TRIPAB,
CN_TRIPAB_A,
CN_TRIPAB_B,
CN_Bri_an,
CN_Bri_ming,
CN_Bri_zouge,
CN_Alarm_Fault_01_image,
CN_Alarm_Fault_01_wenzi,
CN_Alarm_Fault_02_image,
CN_Alarm_Fault_02_wenzi,
CN_Alarm_Fault_03_image,
CN_Alarm_Fault_03_wenzi,
CN_Alarm_Fault_04_image,
CN_Alarm_Fault_04_wenzi,
CN_Alarm_Fault_05_image,
CN_Alarm_Fault_05_wenzi,
CN_Alarm_Fault_06_image,
CN_Alarm_Fault_06_wenzi,
CN_AM,
CN_Fri,
CN_kuohao,
......@@ -382,19 +434,8 @@ enum SpriteName
CN_dianyaji_kedu,
CN_dianyaji_L,
CN_dianyaji_tubiao,
CN_dianyaji_zouge1,
CN_dianyaji_zouge10,
CN_dianyaji_zouge11,
CN_dianyaji_zouge12,
CN_dianyaji_zouge13,
CN_dianyaji_zouge2,
CN_dianyaji_zouge3,
CN_dianyaji_zouge4,
CN_dianyaji_zouge5,
CN_dianyaji_zouge6,
CN_dianyaji_zouge7,
CN_dianyaji_zouge8,
CN_dianyaji_zouge9,
CN_dianyaji_zouge_red,
CN_dianyaji_zouge_white,
CN_ENTER_danjieshu,
CN_ENTER_Gray,
CN_ENTER_jieshu,
......@@ -427,8 +468,10 @@ enum SpriteName
CN_jiao3,
CN_jiao4,
CN_LeftRoad,
CN_LeftRoad_1,
CN_LeftRoad_shanshuo,
CN_RightRoad,
CN_RightRoad_1,
CN_RightRoad_shanshuo,
CN_Road1,
CN_Road1_shanshuo,
......@@ -436,8 +479,6 @@ enum SpriteName
CN_Road2_shanshuo,
CN_Road3,
CN_Road3_shanshuo,
CN_Road4,
CN_Road4_shanshuo,
CN_tanhao1,
CN_tanhao2,
CN_fengexian,
......@@ -698,6 +739,11 @@ enum SpriteName
CN_User_Menu3_01_22,
CN_User_Menu3_01_23,
CN_User_Menu3_01_24,
CN_User_Menu3_01_25,
CN_User_Menu3_01_26,
CN_User_Menu3_01_27,
CN_User_Menu3_01_28,
CN_User_Menu3_01_29,
CN_User_Menu3_01_3,
CN_User_Menu3_01_4,
CN_User_Menu3_01_5,
......@@ -774,6 +820,7 @@ enum SpriteName
CN_User_Menu3_03_kuang,
CN_User_Menu3_03_man,
CN_User_Menu3_03_nian,
CN_User_Menu3_03_PM,
CN_User_Menu3_03_redge,
CN_User_Menu3_03_ri,
CN_User_Menu3_03_rpm,
......@@ -803,6 +850,8 @@ enum SpriteName
CN_User_Menu3_03_luntai2,
CN_User_Menu3_03_luntai3,
CN_User_Menu3_03_luntai4,
CN_User_Menu3_03_luntai5,
CN_User_Menu3_03_luntai_guang,
CN_User_Menu3_04_che,
CN_User_Menu3_04_jiantou1,
CN_User_Menu3_04_jiantou2,
......
......@@ -88,6 +88,7 @@
#include "SEG_DISPLAY.h"
#include "Buzzer.h"
#include "CAN_FUNC.h"
/*******************************************************************************
* *
......@@ -220,8 +221,8 @@ void Sys_Run_Mode_100ms_Tasks(void)
Popups_Management_Service();
Popup_Scheduling_Service();
/*CAN 数据处理*/
Drive_Info_IC1_STATUS_Rx();
/*加速度计算*/
Data_Acc_Speed_Processing();
......
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