Commit 8e698101 authored by hu's avatar hu

调整气压server逻辑,调整大G最大值,增加小G个数-20个,调整EEP块分配

parent 352472da
No preview for this file type
This diff is collapsed.
project .intvect 1536
project .text 317516
project .rodata 411087
project .text 317660
project .rodata 411071
project .secinfo 120
project .syscall 6
project .romdata 9029
......
#ifndef DATA_AIRPRESSURE_H
#define DATA_AIRPRESSURE_H
#include "GaugesInterface.h"
#include "TYW_stdint.h"
extern DataStruct DataStrGas1;
extern DataStruct DataStrGas2;
extern DataStruct DataStrWET;
extern void AirPressure_KL30_Init(void);
extern void AirPressure_KL15_ON_Init(void);
......@@ -13,12 +15,11 @@ extern void AirPressure_Wakeup_Init(void);
extern void AirPressure_Sleep_Init(void);
extern void AirPressure_Processing_Service(void);
void Data_Gas1_Processing_Service(void);
void Data_Gas2_Processing_Service(void);
void Data_WET_Processing_Service(void);
uint8_t Common_Get_Air1_Valid(void);
uint8_t Common_Get_Air2_Valid(void);
uint8_t Common_Get_WET_Valid(void);
extern uint16_t AirPressure_Get_kPa(uint8_t ID);
extern uint8_t AirPressure_Get_Valid(uint8_t ID);
extern void AirPressure_AdcData_Filter(void) ;
extern uint8_t AirPressure_Get_CurSeg(uint8_t ID);
#endif
#endif
\ No newline at end of file
......@@ -41,7 +41,7 @@ void Data_User_Mileage_KL30Init(void)
Func.Get_Sys_IG_Sts = Common_Get_IG_Sts;
Func.Get_Act_V_Speed_Valid = Common_Get_Act_V_Speed_Valid;
Func.Get_Act_V_Speed = Common_Get_Act_V_Speed;
Func.Get_TireSize = 1;
Func.Get_TireSize = ( void * )0;
Func.EEPromWrite_Cbk = Data_User_EEPROM_Write; //暂时未设置
Data_Mileage_KL30_Init(DataMilleageBuf, &MileInit, &Func);
......@@ -52,20 +52,20 @@ void Data_User_Mileage_KL30Init(void)
Data_User_EEPROM_Read(EEPROM_BLOCK_TRIP_STAMP, TempBuf + 3, 4);
TripInit[EM_TRIP_A].Stamp = TempBuf[3];
TripInit[EM_TRIP_A].MaxValue = 99999;
TripInit[EM_TRIP_A].MaxValue = 9999999u;
TripInit[EM_TRIP_A].IsRestart = 1u;
TripInit[EM_TRIP_B].Stamp = TempBuf[4];
TripInit[EM_TRIP_B].MaxValue = 99999;
TripInit[EM_TRIP_B].MaxValue = 9999999u;
TripInit[EM_TRIP_B].IsRestart = 1u;
TripInit[EM_TRIP_C].Stamp = TempBuf[5];
TripInit[EM_TRIP_C].MaxValue = 99999;
TripInit[EM_TRIP_C].IsRestart = 0u;
TripInit[EM_TRIP_C].IsRestart = 1u;
TripInit[EM_TRIP_D].Stamp = TempBuf[6];
TripInit[EM_TRIP_D].MaxValue = 99999;
TripInit[EM_TRIP_D].IsRestart = 0u;
TripInit[EM_TRIP_D].IsRestart = 1u;
Data_Trip_KL30_Init(DataTripBuf, TripInit, EM_TRIP_MAX, Func.EEPromWrite_Cbk);
}
......@@ -77,7 +77,7 @@ void Data_User_Mileage_KL15Init(void)
Func.Get_Sys_IG_Sts = Common_Get_IG_Sts;
Func.Get_Act_V_Speed_Valid = Common_Get_Act_V_Speed_Valid;
Func.Get_Act_V_Speed = Common_Get_Act_V_Speed;
Func.Get_TireSize = 1;
Func.Get_TireSize = ( void * )0;
Func.EEPromWrite_Cbk = Data_User_EEPROM_Write; //暂时未设置
Data_Mileage_Wakeup_Init(DataMilleageBuf, &Func);
......
No preview for this file type
......@@ -115,7 +115,8 @@ static void Data_Voltmeter_2_Gui(void)
VoltmeterVariable.AvrVoltage = Get_VoltFilter();
VoltmeterVariable.AvrVoltage += 800u;/*增加二极管压降补偿*/
if ((VoltmeterVariable.AvrVoltage >= 17000) && (VoltmeterVariable.AvrVoltage <= 30500))
if ((VoltmeterVariable.AvrVoltage >= 17000u) && (VoltmeterVariable.AvrVoltage <= 30500u))
{
VoltmeterVariable.Valid = 1 ;
VoltmeterVariable.Timer = 0 ;
......@@ -136,6 +137,7 @@ static void Data_Voltmeter_2_Gui(void)
if (VoltmeterVariable.Valid)
{
VoltmeterVariable.AvrVoltage /= 10u;
SetGaugesPara(VoltGauges, VoltmeterVariable.AvrVoltage);
u8GuiMode = GetGaugesCurrentPos(VoltGauges);
}
......
......@@ -434,15 +434,8 @@ void GaugeMoveing(uint8_t GaugesNum)
}
}
}
/*电压放大倍数不同,单独处理*/
if (GaugesNum == VoltGauges)
{
MoveTypePara = 100u;
}
else
{
MoveTypePara = 10u;
}
MoveTypePara = 10u;
}
else
{
......
......@@ -41,9 +41,9 @@ static const uint16_t GaugesDataInInit[GaugesTotal][3][25] =
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 0, 0, 0, 0, 0, 0}
},
/*电池电压*/
{ {0, 17000, 19000, 20000, 21000, 22000, 23000, 24000, 25000, 26000, 27000, 28000, 29000, 30000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 18500, 19500, 20500, 21500, 22500, 23500, 24500, 25500, 26500, 27500, 28500, 29500, 30500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
{ {0, 1700, 1900, 2000, 2100, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900, 3000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1850, 1950, 2050, 2150, 2250, 2350, 2450, 2550, 2650, 2750, 2850, 2950, 3050, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
},
};
......
......@@ -29,11 +29,6 @@ typedef struct
uint8_t Status;
} DataStruct;
extern DataStruct DataStrGas1;
extern DataStruct DataStrGas2;
extern DataStruct DataStrVoltage;
extern uint16_t RealDataIn[GaugesTotal];
extern void SetGaugesPara(uint8_t GaugesID, uint16_t GaugesVal); /* 传递表头参数 */
extern void UserGaugeSchedule(void);/*在主循环中调用*/
......
......@@ -104,7 +104,6 @@ Power_Status_t Power_KL30_Init ( void )
RTE_PWM_Init();
/*按键部分 杨真东维护结束*/
AirPressure_KL30_Init();
/*报警调度初始化*/
Popup_Scheduler_Init();
/*报警调度初始化*/
......@@ -171,7 +170,7 @@ Power_Status_t Power_Wakeup_Init ( void )
VCC12V0_OUT_EN = 1U; /*12V 电源使能*/
VCC05V0_OUT_EN = 1U; /*外设5V 电源使能*/
D1530_EN_MCU_OUT = 1U; /*1530 使能*/
BL_ACC_EN = 1U; /*8867 使能*/
BL_ACC_EN = 1U; /*8867 使能*/
Fuel_VCC05V_OUT_EN = 1U ; /*燃油电源 使能*/
AIR_5V_OUT_EN = 1u; /*气压 5V*/
ACC5V_LED_PWM_MCU = 1u;
......@@ -222,13 +221,16 @@ void Power_IG_ON_Init(void)
UserGaugeK15Init() ;/*仪表IGON调用*/
/*end*/
/*5s不按按键计时清零*/
//LongTimeNoKey_Operation_TimeRest();
CD4051B_KL15Init();
GUI_Display_KL15_ON_Init();
/*气压1 气压2 WET气压数据初始化*/
AirPressure_KL15_ON_Init();
}
Power_Status_t Power_Stay_ON(void)
{
Power_Status_t u8PowerSts;
......
......@@ -1042,12 +1042,12 @@ void Seg_Display_Service(void)
if (Ign_Time < 3100)
{
SEG_PRI_Display(GetGaugesCurrentPos(PRIGasGauges), GUI_DISP_MODE_NORMAL, 7u); // PRI气压格
SEG_SEC_Display(GetGaugesCurrentPos(SECGasGauges), GUI_DISP_MODE_NORMAL, 7u); // SEC气压格
SEG_Coolant_Display(GetGaugesCurrentPos(TempGauges), GUI_DISP_MODE_NORMAL, 7u); //水温格
SEG_Fuel_Display(GetGaugesCurrentPos(TempGauges), GUI_DISP_MODE_NORMAL, 7u); //燃油格
SEG_Tacho_Display(GetGaugesCurrentPos(RevGauges), GUI_DISP_MODE_NORMAL, 7u); //转速格
SEG_VehicleSpeed_Display(GetGaugesCurrentPos(VehGauges), GUI_DISP_MODE_NORMAL, 7u); //车速格
SEG_PRI_Display (GetGaugesCurrentPos(PRIGasGauges), GUI_DISP_MODE_NORMAL, 7u); // PRI气压格
SEG_SEC_Display (GetGaugesCurrentPos(SECGasGauges), GUI_DISP_MODE_NORMAL, 7u); // SEC气压格
SEG_Coolant_Display (GetGaugesCurrentPos(TempGauges), GUI_DISP_MODE_NORMAL, 7u); // 水温格
SEG_Fuel_Display (GetGaugesCurrentPos(TempGauges), GUI_DISP_MODE_NORMAL, 7u); // 燃油格
SEG_Tacho_Display (GetGaugesCurrentPos(RevGauges), GUI_DISP_MODE_NORMAL, 7u); // 转速格
SEG_VehicleSpeed_Display(GetGaugesCurrentPos(VehGauges), GUI_DISP_MODE_NORMAL, 7u); // 车速格
/*车速数字 暂时没有变化,只是全部点亮*/
Seg_Digit_1_Disp(12);
......@@ -1060,21 +1060,21 @@ void Seg_Display_Service(void)
{
GaugesTimer = 15u;
if (AirPressure_Get_Valid(0))
if (Common_Get_Air1_Valid())
{
SEG_PRI_Display(AirPressure_Get_CurSeg(0), GUI_DISP_MODE_NORMAL, 7u); // PRI气压格
SEG_PRI_Display(GetGaugesCurrentPos(PRIGasGauges), GUI_DISP_MODE_NORMAL, 7u); // PRI气压格
}
else
{
SEG_PRI_Display(AirPressure_Get_CurSeg(0), GUI_DISP_MODE_INVALID, 7u); // PRI气压格
SEG_PRI_Display(GetGaugesCurrentPos(PRIGasGauges), GUI_DISP_MODE_INVALID, 7u); // PRI气压格
}
if (AirPressure_Get_Valid(1))
if (Common_Get_Air2_Valid())
{
SEG_SEC_Display(AirPressure_Get_CurSeg(1), GUI_DISP_MODE_NORMAL, 7u); // SEC气压格
SEG_SEC_Display(GetGaugesCurrentPos(SECGasGauges), GUI_DISP_MODE_NORMAL, 7u); // SEC气压格
}
else
{
SEG_SEC_Display(AirPressure_Get_CurSeg(1), GUI_DISP_MODE_INVALID, 7u); // SEC气压格
SEG_SEC_Display(GetGaugesCurrentPos(SECGasGauges), GUI_DISP_MODE_INVALID, 7u); // SEC气压格
}
if (Coolant_Get_Valid())
......@@ -1123,8 +1123,8 @@ void Seg_Display_Service(void)
{
SEG_A25_Disp(0u); //左侧弧线
SEG_C25_Disp(0u); //右侧弧线
SEG_PRI_Display(AirPressure_Get_CurSeg(0), GUI_DISP_MODE_BLANK, 0u); // PRI气压格
SEG_SEC_Display(AirPressure_Get_CurSeg(1), GUI_DISP_MODE_BLANK, 0u); // SEC气压格
SEG_PRI_Display(GetGaugesCurrentPos(PRIGasGauges), GUI_DISP_MODE_BLANK, 0u); // PRI气压格
SEG_SEC_Display(GetGaugesCurrentPos(SECGasGauges), GUI_DISP_MODE_BLANK, 0u); // SEC气压格
SEG_Coolant_Display(Coolant_Get_CurSeg(), GUI_DISP_MODE_BLANK, 0u); //水温格
SEG_Fuel_Display(Fuel_Get_CurSeg(), GUI_DISP_MODE_BLANK, 0u); //燃油格
SEG_Tacho_Display(Tacho_Get_CurSeg(), GUI_DISP_MODE_BLANK, 0u); //转速格
......
......@@ -68,8 +68,8 @@ void Can_Set_Buff_18FEAE17(uint8_t CopyData [])
{
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) ;
//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())
{
......
......@@ -50,9 +50,9 @@ static const EEPROM_Block_st_t g_stEEPROMBlockTable[] =
{0xFF200580UL, 0xFF20067FUL, EEPROM_BLOCK5_BUFFER_SIZE, g_u32EEPROMBlock5Buffer,},
{0xFF200680UL, 0xFF200A7FUL, EEPROM_BLOCK6_BUFFER_SIZE, g_u32EEPROMBlock6Buffer,},
{0xFF200A80UL, 0xFF200F7FUL, EEPROM_BLOCK7_BUFFER_SIZE, g_u32EEPROMBlock7Buffer,},
{0xFF200F80UL, 0xFF20197FUL, EEPROM_BLOCK8_BUFFER_SIZE, g_u32EEPROMBlock8Buffer,},
{0xFF201980UL, 0xFF2019FFUL, EEPROM_BLOCK9_BUFFER_SIZE, g_u32EEPROMBlock9Buffer,},
{0xFF201A00UL, 0xFF201AFFUL, EEPROM_BLOCK10_BUFFER_SIZE, g_u32EEPROMBlock10Buffer,},
{0xFF200F80UL, 0xFF20377FUL, EEPROM_BLOCK8_BUFFER_SIZE, g_u32EEPROMBlock8Buffer,},
{0xFF203780UL, 0xFF2037FFUL, EEPROM_BLOCK9_BUFFER_SIZE, g_u32EEPROMBlock9Buffer,},
{0xFF203800UL, 0xFF2038FFUL, EEPROM_BLOCK10_BUFFER_SIZE, g_u32EEPROMBlock10Buffer,},
};
/****************************************************************************
......
......@@ -46,7 +46,7 @@ enum g_enEEPROMBlockName
#define EEPROM_BLOCK_UDS_DTC_SIZE (76U)/*Life:20.0W*/
#define EEPROM_BLOCK_ODO_SIZE (4U)/*Life:1000.0W*/
#define EEPROM_BLOCK_ODO_STAMP_SIZE (8U)/*Life:1000.0W*/
#define EEPROM_BLOCK_TRIP_STAMP_SIZE (16U)/*Life:1000.0W*/
#define EEPROM_BLOCK_TRIP_STAMP_SIZE (80U)/*Life:1000.0W*/
#define EEPROM_BLOCK_SERVICE_INFO_SIZE (56U)/*Life:20.0W*/
#define EEPROM_BLOCK_EOL_K_LINE_SIZE (64U)/*Life:20.0W*/
......
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