Commit 8219786c authored by 王金山's avatar 王金山

Merge branch 'dev' into 'master'

TYW-2025-00635变更

See merge request !17
parents 95d0316c 5f7831f4
......@@ -336,6 +336,7 @@ void Time_Seting(void)
}
else if (SetMenu == 3) //行车信息
{
#if 0
if (IO_CAN_KEY_ENTER == IO_KEY_PRESS)
{
IO_CAN_KEY_ENTER = IO_KEY_IDLE;
......@@ -347,8 +348,9 @@ void Time_Seting(void)
IOTFTLCDAccessRight = 0x00;
//IOTFTLCDAccessRight |= (IO_TRAP_BIT | IO_BG_INFO_BIT | IO_DRIVE_INFO_BIT);
IOTFTLCDAccessRight |= (IO_TIME_BIT | IO_BG_INFO_BIT);
}
if (IO_CAN_KEY_LEFT == IO_KEY_LONG)
}
#endif
if ((IO_CAN_KEY_LEFT == IO_KEY_LONG) || (IO_CAN_KEY_ENTER == IO_KEY_PRESS))
{
IO_CAN_KEY_LEFT = IO_KEY_IDLE ;
MenuDisplay = 0;
......
......@@ -1366,25 +1366,25 @@ void Telltales_Management(void)
TelltaleLCDFlag.Sig.LCD32 = 0;
Sound_Delete(SND_CNG_GasLeak);
}
if ((EMS_51C_STATUS & CAN_MSG_LOST) || (EMS_CylinderPressure > 64255))
if (((EMS_51C_STATUS & CAN_MSG_LOST) || (EMS_CylinderPressure > 64255)) && (LLM_EB4E_STATUS & CAN_MSG_LOST))
{
if (STEPPER_MOTOR_0_CUR_STEP <= 100)
TelltaleLCD_Flag33 = 1; //锟斤拷然锟斤拷锟斤拷锟斤拷锟斤拷状态指示锟斤拷
}
else if (EMS_CylinderPressure < 3200)
else if (DataCoolantADblue < 10)//(EMS_CylinderPressure < 3200)
{
if (STEPPER_MOTOR_0_CUR_STEP <= 223)
TelltaleLCD_Flag33 = FLASH_SYNC_1Hz;
}
else if (EMS_CylinderPressure < 5000)
else if (DataCoolantADblue < 17)//(EMS_CylinderPressure < 5000)
{
if (STEPPER_MOTOR_0_CUR_STEP <= 460)
if (STEPPER_MOTOR_0_CUR_STEP <= 421)
TelltaleLCD_Flag33 = 1; //锟斤拷然锟斤拷锟斤拷锟斤拷锟斤拷状态指示锟斤拷
}
else if (EMS_CylinderPressure >= 6200)
else if (DataCoolantADblue >= 21)//(EMS_CylinderPressure >= 6200)
{
if (STEPPER_MOTOR_0_CUR_STEP >= 582)
if (STEPPER_MOTOR_0_CUR_STEP >= 520)
TelltaleLCD_Flag33 = 0;
}
//锟斤拷锟斤拷锟斤拷锟斤拷 硬锟斤拷 21
......
......@@ -1625,7 +1625,7 @@ void UDS_Service_22_Indication ( uint32_t A_TA_type, uint16_t A_Length, uint8_t
UDS_ISO14229_Transfer[ 8] = '0';
UDS_ISO14229_Transfer[ 9] = '.';
UDS_ISO14229_Transfer[10] = '1';
UDS_ISO14229_Transfer[11] = '3';
UDS_ISO14229_Transfer[11] = '4';
UDS_Service_Response ( 0x22, POSITIVE_RSP, DIAG_ID_Tx, 12, UDS_ISO14229_Transfer );
break;
case 0xF191:
......
......@@ -1951,11 +1951,12 @@ void Data_Coolant_Oil_Processing_Service(void)
******************************************************************************/
void Data_Coolant_ADblue_Processing_Service(void)
{
uint16_t Temp = 0;
uint16_t Temp = 0, Temp1 = 0;
uint8_t Step;
Temp = EMS_CylinderPressure;
if ((Temp > 64255) || (EMS_51C_STATUS & CAN_MSG_LOST) || (IO_DISP_TEST_OFF_TIME <= 20))
Temp1 = LLM_LiquidLever_PCT;
Temp = EMS_CylinderPressure;
if ((((Temp > 64255) || (EMS_51C_STATUS & CAN_MSG_LOST)) && (LLM_EB4E_STATUS & CAN_MSG_LOST)) /*|| (IO_DISP_TEST_OFF_TIME <= 20)*/)
{
if (DataCoolantADblueCalc.LostTimer < 17) //250
{
......@@ -1980,64 +1981,73 @@ void Data_Coolant_ADblue_Processing_Service(void)
}
else
{
if (Temp <= 2000)
{
Temp = 0;
}
else if (Temp <= 3500)
if ((LLM_EB4E_STATUS & CAN_MSG_LOST) == 0)
{
Temp = (Temp - 2000) / 125;
Temp1 *= 39;
Temp1 /= 100;
DataCoolantADblue = Temp1;
}
else if (Temp <= 7100)
{
Temp = 12 + (Temp - 3500) / 300;
}
else if (Temp < 7500)
{
Temp = 24;
}
else if (Temp < 8000)
{
Temp = 25;
}
else if (Temp <= 11220)
{
Temp = 26 + (Temp - 8000) / 140;
}
else if (Temp < 11500)
{
Temp = 49;
}
else if (Temp < 12000)
{
Temp = 50;
}
else if (Temp <= 15220)
{
Temp = 51 + (Temp - 12000) / 140;
}
else if (Temp < 15500)
{
Temp = 74;
}
else if (Temp < 16000)
else
{
Temp = 76;
if (Temp <= 2000)
{
Temp = 0;
}
else if (Temp <= 3500)
{
Temp = (Temp - 2000) / 125;
}
else if (Temp <= 7100)
{
Temp = 12 + (Temp - 3500) / 300;
}
else if (Temp < 7500)
{
Temp = 24;
}
else if (Temp < 8000)
{
Temp = 25;
}
else if (Temp <= 11220)
{
Temp = 26 + (Temp - 8000) / 140;
}
else if (Temp < 11500)
{
Temp = 49;
}
else if (Temp < 12000)
{
Temp = 50;
}
else if (Temp <= 15220)
{
Temp = 51 + (Temp - 12000) / 140;
}
else if (Temp < 15500)
{
Temp = 74;
}
else if (Temp < 16000)
{
Temp = 76;
}
else if (Temp <= 18760)
{
Temp = 76 + (Temp - 16000) / 120;
}
else if (Temp < 19000)
{
Temp = 99;
}
else
{
Temp = 100;
}
DataCoolantADblue = Temp;
}
else if (Temp <= 18760)
{
Temp = 76 + (Temp - 16000) / 120;
}
else if (Temp < 19000)
{
Temp = 99;
}
else
{
Temp = 100 ;
}
DataCoolantADblue = Temp;
DataCollantADblueValid = 1;
DataCoolantADblueCalc.LostTimer = 0;
}
......
......@@ -1183,6 +1183,7 @@ void GUI_TPMS_Display(uint8_t PopupID)
void Menu2_4_Display(void) //行车信息
{
#if 0
TFT_LCD_Display_Sprite(LAYER_MENU01, SN_V_Info_Display_png, 280, 178, 64);
TFT_LCD_Display_Sprite(LAYER_MENU02, SN_V_Info_Display_uint_1_png, 302, 246, 64);
//TFT_LCD_Display_Sprite(LAYER_MENU03, SN_Vehicle_Information_Display2_png, 458, 178, 64);
......@@ -1198,8 +1199,14 @@ void Menu2_4_Display(void) //
GUI_General_Digit_Display(DataDTE, DIGIT_FONT_DTE, 4, 3, LAYER_MENU07, GUIDTEPosX3, 208, 64); //续航里程
TFT_LCD_Display_Sprite(LAYER_MENU11, SN_NB_17_point_png, 490, 208, 64);
GUI_General_Digit_Display(FuelConsumptionRate, DIGIT_FONT_DTE, 3, 1, LAYER_MENU12, GUICurONPosX3,208, 64); //瞬时油耗
GUI_General_Digit_Display(FuelConsumptionRate, DIGIT_FONT_DTE, 3, 1, LAYER_MENU12, GUICurONPosX3,208, 64); //瞬时油耗
#endif
TFT_LCD_Display_Sprite(LAYER_MENU01, SN_NB_17_00_png, 355, 199, 64);
TFT_LCD_Display_Sprite(LAYER_MENU02, SN_NB_17_00_png, 373, 199, 64);
TFT_LCD_Display_Sprite(LAYER_MENU03, SN_NB_17_point_png, 391, 199, 64);
TFT_LCD_Display_Sprite(LAYER_MENU04, SN_NB_17_01_png, 409, 199, 64);
TFT_LCD_Display_Sprite(LAYER_MENU05, SN_NB_17_04_png, 427, 199, 64);
}
uint8_t Left_LDW_Count = 0;
......
......@@ -192,7 +192,7 @@ void IO_Management_Service(void)
IOTFTLCDAccessRight = 0x00;
IOTFTLCDAccessRight = (IO_TIME_BIT | IO_BG_INFO_BIT);
}
#if 0
#if 1
if ((IO_DRIVE_INFO_DISPLAY_ENABLE) && (!IO_POPUP_DISPLAY_ENABLE) && (IO_CAN_KEY_LEFT == IO_KEY_LONG))
{
IO_CAN_KEY_LEFT = IO_KEY_IDLE;
......
......@@ -2268,6 +2268,38 @@ extern volatile uint8_t CANMsg18FEC600Status;
static const uint8_t CANMsg18FEC600Init[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
static const uint8_t CANMsg18FEC600Timeout[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
static const uint8_t CANMsg18FEC600Mask[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
/******************************************************************************
LLM_EB4E
ID:0x18FFEB4E
******************************************************************************/
typedef union
{
uint8_t Msg[8];
struct
{
uint8_t b00_07 : 8; //
uint8_t b08_15 : 8; //
uint8_t b16_23 : 8; //
uint8_t b24_31 : 8; //
uint8_t b32_39 : 8; //
uint8_t b40_47 : 8; //LLM_LiquidLever_PCT
uint8_t b48_55 : 8; //
uint8_t b56_63 : 8; //
} Sig;
} CANMsg18FFEB4EUnion;
extern volatile CANMsg18FFEB4EUnion CANMsg18FFEB4E;
extern volatile uint8_t CANMsg18FFEB4EStatus;
#define LLM_EB4E 0x18FFEB4E
#define LLM_EB4E_STATUS CANMsg18FFEB4EStatus
#define LLM_LiquidLever_PCT CANMsg18FFEB4E.Sig.b40_47
static const uint8_t CANMsg18FFEB4EInit[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
static const uint8_t CANMsg18FFEB4ETimeout[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
static const uint8_t CANMsg18FFEB4EMask[8] = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
/*****************************************************************************************************************************************************************************
报文属性预定义
*****************************************************************************************************************************************************************************/
......@@ -2388,9 +2420,10 @@ static const CANMsgAttrStruct CANMsgAttrTable[] =
{ EMS_55E, CANMsg18FED800.Msg, 8, 8, CAN_MSG_Rx, CAN_MSG_CYCLE, 10000, 0, &CANMsg18FED800Status, CANMsg18FED800Init, CANMsg18FED800Timeout, CANMsg18FED800Mask,},
{ EMS_35D, CANMsg18FFC800.Msg, 8, 8, CAN_MSG_Rx, CAN_MSG_CYCLE, 1000, 0, &CANMsg18FFC800Status, CANMsg18FFC800Init, CANMsg18FFC800Timeout, CANMsg18FFC800Mask,},
{ EMS_51C, CANMsg18FEC600.Msg, 8, 8, CAN_MSG_Rx, CAN_MSG_CYCLE, 5000, 0, &CANMsg18FEC600Status, CANMsg18FEC600Init, CANMsg18FEC600Timeout, CANMsg18FEC600Mask,},
{ LLM_EB4E, CANMsg18FFEB4E.Msg, 8, 8, CAN_MSG_Rx, CAN_MSG_CYCLE, 5000, 0, &CANMsg18FFEB4EStatus, CANMsg18FFEB4EInit, CANMsg18FFEB4ETimeout, CANMsg18FFEB4EMask,},
/*==========================================================================================================================================================================*/
};
#define CAN_TX_MSG_NUM 8
#define CAN_RX_MSG_NUM 42
#define CAN_RX_MSG_NUM 43
#endif
......@@ -228,3 +228,7 @@ volatile uint8_t CANMsg18FFC800Status;
//0x18FEC600
volatile CANMsg18FEC600Union CANMsg18FEC600;
volatile uint8_t CANMsg18FEC600Status;
//LLM_EB4E
volatile CANMsg18FFEB4EUnion CANMsg18FFEB4E;
volatile uint8_t CANMsg18FFEB4EStatus;
......@@ -47,6 +47,11 @@
//20250618 增加唤醒和ingoff->ignon排气制动指示灯控制信号清零
//V00.13
//20250621 升级软件版本号
//V00.14
//20250730 TYW-2025-00635变更
// 1、增加气量控制信号,与原信号为或的关系
//20250731 2、升级软件版本号
// 3、长按上翻页键进入查看软件版本号界面
#include "main.h"
#include "fuelconfig.h"
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
1、WZ_EF01_BootApp_S0.13_FV0.08_250621.s19,完整版,适用于新生产的无程序仪表
2、WZ_EF01_UpdateApp_S0.13_F0.08_250621.s19,APP版,适用于烧过完整版程序仪表,需配合诊断工具使用
1、完整版:WZ_EF01_BootApp_S00.14_FV0.08_250731.s19
2、升级版:WZ_EF01_UpdateApp_S00.14_F0.08_250731.s19
3、FLASH: WZ_EF01_Flash_F0.08_FullBin_231117.bin
\ No newline at end of file
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