Commit 91476f87 authored by 时昊's avatar 时昊
parents 653a6169 96ee6f9d
#include "Data_Coolant.h"
#include "Components.h"
#define Coolant_DATA_TIME 25u /*这里填写多长时间采集一个数据,单位ms*/
#define Coolant_DATA_NUM 20u /*燃油电阻采集数据总数 最大255*/
#define Coolant_CAL_START 5u /*数据排序后取中间部分计算平均:起始*/
......@@ -65,7 +63,7 @@ void Coolant_R_Cal(uint8_t deltaTime)
uint32_t temp32;
static uint16_t timeCount = 0;
if(g_u8CoolantStateInitFlag)
if (g_u8CoolantStateInitFlag)
{
CoolantR = ADC_Read_Signal(ADC_CH_COOLANT_TEMP1_R);
}
......@@ -123,26 +121,26 @@ void Coolant_R_Cal(uint8_t deltaTime)
void Coolant_State_Check(uint8_t deltaTime)
{
if (CoolantR < 30)
{ /*短路3*/
g_u16CoolantSensorOpenTime = 0;
g_u16CoolantSensorNormalTime = 0;
if ((g_u16CoolantSensorShortTime > 3000) || ((g_u8CoolantStateInitFlag) && (g_u16CoolantSensorShortTime > 3000)))
{
CoolantSensorState = CoolantSensorShortCircuit;
g_u8DesCoolantSetp = 0;
g_u8CurCoolantSetp = 6;
g_u8CoolantStateInitFlag = 0;
g_u8CoolantInitFlag = 1;
g_u8CoolantDir = Coolant_SEG_UP;
}
else
{
g_u16CoolantSensorShortTime += deltaTime;
}
}
else if (CoolantR > 3100)
{ /*开路 310*/
// if (CoolantR < 30)
// { /*短路3*/
// g_u16CoolantSensorOpenTime = 0;
// g_u16CoolantSensorNormalTime = 0;
// if ((g_u16CoolantSensorShortTime > 3000) || ((g_u8CoolantStateInitFlag) && (g_u16CoolantSensorShortTime > 3000)))
// {
// CoolantSensorState = CoolantSensorShortCircuit;
// g_u8DesCoolantSetp = 0;
// g_u8CurCoolantSetp = 6;
// g_u8CoolantStateInitFlag = 0;
// g_u8CoolantInitFlag = 1;
// g_u8CoolantDir = Coolant_SEG_UP;
// }
// else
// {
// g_u16CoolantSensorShortTime += deltaTime;
// }
// }
if (CoolantR > 3000)
{ /*开路 300*/
g_u16CoolantSensorShortTime = 0;
g_u16CoolantSensorNormalTime = 0;
if ((g_u16CoolantSensorOpenTime > 3000) || ((g_u8CoolantStateInitFlag) && (g_u16CoolantSensorOpenTime > 3000)))
......@@ -179,128 +177,16 @@ void Coolant_Gauges_Cal(uint8_t deltaTime)
{
static uint16_t time = 0;
if ((CoolantSensorState == CoolantSensorNormal) && (CoolantR <= 3100) && (CoolantR >= 30))
{
/*采集完第一组数据后,开始计算燃油格数*/
if (g_u8CoolantADCompleteFlg)
{
if (g_u8CoolantInitFlag)
{
CoolantRBak = CoolantR;
}
/*根据回差计算走动方向*/
if (g_u8CoolantDir == Coolant_SEG_UP)
{
if (CoolantR >= CoolantRBak + RETURN_DIFFERENCE)
{
g_u8CoolantDir = Coolant_SEG_DOWN;
CoolantRBak = CoolantR;
}
if (CoolantR < CoolantRBak)
{
CoolantRBak = CoolantR;
}
}
else
{
if (CoolantRBak >= CoolantR + RETURN_DIFFERENCE)
{
g_u8CoolantDir = Coolant_SEG_UP;
CoolantRBak = CoolantR;
}
if (CoolantR > CoolantRBak)
{
CoolantRBak = CoolantR;
}
}
/*计算目标格数*/
if (g_u8CoolantDir == Coolant_SEG_UP)
if ((CoolantSensorState == CoolantSensorNormal) && (CoolantR <= 3000)) // && (CoolantR >= 30)
{
if (((g_u8DesCoolantSetp == 5) || g_u8CoolantInitFlag) && (CoolantR < 30))
{
g_u8DesCoolantSetp = 6;
}
else if (((g_u8DesCoolantSetp == 4) || g_u8CoolantInitFlag) && (CoolantR < 160))
{
g_u8DesCoolantSetp = 5;
}
else if (((g_u8DesCoolantSetp == 3) || g_u8CoolantInitFlag) && (CoolantR < 300))
{
g_u8DesCoolantSetp = 4;
}
else if (((g_u8DesCoolantSetp == 2) || g_u8CoolantInitFlag) && (CoolantR < 500))
{
g_u8DesCoolantSetp = 3;
}
else if (((g_u8DesCoolantSetp == 1) || g_u8CoolantInitFlag) && (CoolantR < 790))
{
g_u8DesCoolantSetp = 2;
}
else if (((g_u8DesCoolantSetp == 0) || g_u8CoolantInitFlag) && (CoolantR <= 3100))
if (CoolantR < 180)
{
g_u8DesCoolantSetp = 1;
}
}
else if (g_u8CoolantDir == Coolant_SEG_DOWN)
{
if (((g_u8DesCoolantSetp == 1) || g_u8CoolantInitFlag) && (CoolantR > 3100))
else if(CoolantR > 220)
{
g_u8DesCoolantSetp = 0;
}
else if (((g_u8DesCoolantSetp == 2) || g_u8CoolantInitFlag) && (CoolantR >= 790))
{
g_u8DesCoolantSetp = 1;
}
else if (((g_u8DesCoolantSetp == 3) || g_u8CoolantInitFlag) && (CoolantR >= 500))
{
g_u8DesCoolantSetp = 2;
}
else if (((g_u8DesCoolantSetp == 4) || g_u8CoolantInitFlag) && (CoolantR >= 300))
{
g_u8DesCoolantSetp = 3;
}
else if (((g_u8DesCoolantSetp == 5) || g_u8CoolantInitFlag) && (CoolantR >= 160))
{
g_u8DesCoolantSetp = 4;
}
else if (((g_u8DesCoolantSetp == 6) || g_u8CoolantInitFlag) && (CoolantR >= 30))
{
g_u8DesCoolantSetp = 5;
}
}
}
/*IGN ON 1秒/故障恢复后,开始走格 立即指向当前格 20220704*/
if (Common_GetIgnOnTime() >= 3000)
{
time += deltaTime;
if (g_u8CoolantInitFlag)
{
g_u8CoolantInitFlag = 0;
time = 0;
g_u8CurCoolantSetp = g_u8DesCoolantSetp;
}
if (time >= 15000)
{ /* 15S变化一格 */
time = 0;
if (g_u8CurCoolantSetp < g_u8DesCoolantSetp)
{
g_u8CurCoolantSetp++;
}
else if (g_u8CurCoolantSetp > g_u8DesCoolantSetp)
{
g_u8CurCoolantSetp--;
}
}
if (g_u8CurCoolantSetp == g_u8DesCoolantSetp)
{
time = 0;
}
}
}
}
......@@ -313,67 +199,12 @@ void Coolant_Cal_Sevice(uint8_t deltaTime)
Coolant_Gauges_Cal(deltaTime);
}
uint8_t Get_CurCoolantSetp(void)
uint8_t Get_CurCoolantSetpState(void)
{
uint8_t u8CurCoolantSetp = g_u8CurCoolantSetp;
if(CoolantSensorState == CoolantSensorOpenCircuit)
{
if(FLASH_SYNC_1Hz)
{
u8CurCoolantSetp = 6;
}
else
{
u8CurCoolantSetp = 0;
}
}
else if(CoolantSensorState == CoolantSensorShortCircuit)
{
if(FLASH_SYNC_1Hz)
{
u8CurCoolantSetp = 7;
}
else
{
u8CurCoolantSetp = 0;
}
}
else if(u8CurCoolantSetp == 1)
{
if(FLASH_SYNC_1Hz)
{
u8CurCoolantSetp = 1;
}
else
{
u8CurCoolantSetp = 0;
}
}
else
{
;
}
return u8CurCoolantSetp;
return g_u8DesCoolantSetp;
}
CoolantSensorSts_t Get_Coolant_Sensor_State(void)
{
uint8_t u8CurCoolantSetp = 0;
if(CoolantSensorState == CoolantSensorOpenCircuit || g_u8CurCoolantSetp == 1u)
{
if(FLASH_SYNC_1Hz)
{
u8CurCoolantSetp = 2;
}
else
{
u8CurCoolantSetp = 0;
}
}
else
{
u8CurCoolantSetp = 1u;
}
return u8CurCoolantSetp;
return CoolantSensorState;
}
......@@ -122,25 +122,25 @@ void Fuel_R_Cal(uint8_t deltaTime)
void Fuel_State_Check(uint8_t deltaTime)
{
if (FuelR < 30)
{ /*短路3*/
g_u16FuelSensorOpenTime = 0;
g_u16FuelSensorNormalTime = 0;
if ((g_u16FuelSensorShortTime > 3000) || ((g_u8FuelStateInitFlag) && (g_u16FuelSensorShortTime > 3000)))
{
FuelSensorState = FuelSensorShortCircuit;
g_u8DesFuelSetp = 0;
g_u8CurFuelSetp = 6;
g_u8FuelStateInitFlag = 0;
g_u8FuelInitFlag = 1;
g_u8FuelDir = FUEL_SEG_UP;
}
else
{
g_u16FuelSensorShortTime += deltaTime;
}
}
else if (FuelR > 5000)
// if (FuelR < 30)
// { /*短路3*/
// g_u16FuelSensorOpenTime = 0;
// g_u16FuelSensorNormalTime = 0;
// if ((g_u16FuelSensorShortTime > 3000) || ((g_u8FuelStateInitFlag) && (g_u16FuelSensorShortTime > 3000)))
// {
// FuelSensorState = FuelSensorShortCircuit;
// g_u8DesFuelSetp = 0;
// g_u8CurFuelSetp = 6;
// g_u8FuelStateInitFlag = 0;
// g_u8FuelInitFlag = 1;
// g_u8FuelDir = FUEL_SEG_UP;
// }
// else
// {
// g_u16FuelSensorShortTime += deltaTime;
// }
// }
if (FuelR > 5000)
{ /*开路 310*/
g_u16FuelSensorShortTime = 0;
g_u16FuelSensorNormalTime = 0;
......@@ -178,7 +178,7 @@ void Fuel_Gauges_Cal(uint8_t deltaTime)
{
static uint16_t time = 0;
if ((FuelSensorState == FuelSensorNormal) && (FuelR <= 3100) && (FuelR >= 30))
if ((FuelSensorState == FuelSensorNormal) && (FuelR <= 5000))// && (FuelR >= 30)
{
/*采集完第一组数据后,开始计算燃油格数*/
if (g_u8FuelADCompleteFlg)
......@@ -298,8 +298,8 @@ void Fuel_Gauges_Cal(uint8_t deltaTime)
g_u8CurFuelSetp = g_u8DesFuelSetp;
}
if (time >= 15000)
{ /* 15S变化一格 */
if (time >= 30000)
{ /* 30S变化一格 */
time = 0;
if (g_u8CurFuelSetp < g_u8DesFuelSetp)
{
......@@ -330,64 +330,10 @@ void Fuel_Cal_Sevice(uint8_t deltaTime)
uint8_t Get_CurFuelSetp(void)
{
uint8_t u8CurFuelSetp = g_u8CurFuelSetp;
if(FuelSensorState == FuelSensorOpenCircuit)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 6;
}
else
{
u8CurFuelSetp = 0;
}
}
else if(FuelSensorState == FuelSensorShortCircuit)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 7;
}
else
{
u8CurFuelSetp = 0;
}
}
else if(u8CurFuelSetp == 1)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 1;
}
else
{
u8CurFuelSetp = 0;
}
}
else
{
;
}
return u8CurFuelSetp;
return g_u8CurFuelSetp;
}
FuelSensorSts_t Get_Fuel_Sensor_State(void)
{
uint8_t u8CurFuelSetp = 0;
if(FuelSensorState == FuelSensorOpenCircuit || g_u8CurFuelSetp == 1u)
{
if(FLASH_SYNC_1Hz)
{
u8CurFuelSetp = 2;
}
else
{
u8CurFuelSetp = 0;
}
}
else
{
u8CurFuelSetp = 1u;
}
return u8CurFuelSetp;
return FuelSensorState;
}
......@@ -18,7 +18,7 @@ typedef struct
uint8_t Result;
}s_AMT630H_FlashCheck_t;
#define AMT630H_REFRESH_TIME 50U
#define AMT630H_REFRESH_TIME 25U
#define AMT630H_ANIMATION_TIME 3000U //ms
#define AMT630H_ANIMATION_PIC_NUM 146U
......
#include "Components.h"
uint8_t Pic_mode = PIC_DAYTIME_Main_CH;
uint8_t Pic_mode = PIC_DAYTIME_CH;
uint8_t MENU_MODE = MAIN_MENU;
// 菜单背景,菜单前必带
void AMT630H_GUI_BACKGRAND(void);
......@@ -23,30 +23,16 @@ void AMT630H_GUI_Bluetooth_Connect_Setting(uint8_t select, uint8_t sync_contacts
void AMT630H_GUI_Unit_Setting(uint8_t select); /*单位设置*/
void AMT630H_GUI_Language_Setting(uint8_t select); /*语言设置*/
void AMT630H_GUI_Phone_Connect_Win(void); /*手机互联*/
void AMT630H_GUI_ReadPosittion_Display(void);
void AMT630H_GUI_Background()
{
if (SYS_OPR_STAT_IGN_ON)
{
if (MENU_MODE == SETTING_MENU)
{
AMT630H_GUI_SETTING(); /*设置菜单*/
}
else if (MENU_MODE == MAIN_MENU)
{
AMT630H_GUI_BACKGRAND(); /*主界面*/
}
AMT630H_GUI_ReadPosittion_Display();
}
else
{
// SetPagePic(GRAPHICS_PAGE_0, Pic_0001_0_0);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0013_0_57);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0012_0_95);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0047_264_95);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0048_610_229);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0052_44_95);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0053_49_229);
// SetPagePic(GRAPHICS_PAGE_0, Pic_0057_376_336);
}
}
......@@ -92,42 +78,6 @@ void AMT630H_GUI_Fault_Information(void)
SetPagePic(GRAPHICS_PAGE_0, Pic_0283_633_175);
SetPagePic(GRAPHICS_PAGE_0, Pic_0357_354_162);
}
/*日间英文*/
else if (Pic_mode == PIC_DAYTIME_EN)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0088_47_398);
SetPagePic(GRAPHICS_PAGE_0, Pic_0084_869_397);
SetPagePic(GRAPHICS_PAGE_0, Pic_0089_193_488);
SetPagePic(GRAPHICS_PAGE_0, Pic_0086_762_487);
SetPagePic(GRAPHICS_PAGE_0, Pic_0090_435_519);
SetPagePic(GRAPHICS_PAGE_0, Pic_0091_567_356);
SetPagePic(GRAPHICS_PAGE_0, Pic_0092_368_356);
SetPagePic(GRAPHICS_PAGE_0, Pic_0093_574_292);
SetPagePic(GRAPHICS_PAGE_0, Pic_0094_375_292);
SetPagePic(GRAPHICS_PAGE_0, Pic_0095_633_240);
SetPagePic(GRAPHICS_PAGE_0, Pic_0096_338_228);
SetPagePic(GRAPHICS_PAGE_0, Pic_0095_633_175);
SetPagePic(GRAPHICS_PAGE_0, Pic_0097_334_163);
}
/*夜间英文*/
else if (Pic_mode == PIC_NIGHTTIME_EN)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0274_47_398);
SetPagePic(GRAPHICS_PAGE_0, Pic_0275_916_398);
SetPagePic(GRAPHICS_PAGE_0, Pic_0276_193_488);
SetPagePic(GRAPHICS_PAGE_0, Pic_0277_728_486);
SetPagePic(GRAPHICS_PAGE_0, Pic_0278_435_519);
SetPagePic(GRAPHICS_PAGE_0, Pic_0279_567_356);
SetPagePic(GRAPHICS_PAGE_0, Pic_0280_368_356);
SetPagePic(GRAPHICS_PAGE_0, Pic_0281_574_292);
SetPagePic(GRAPHICS_PAGE_0, Pic_0282_375_292);
SetPagePic(GRAPHICS_PAGE_0, Pic_0283_633_240);
SetPagePic(GRAPHICS_PAGE_0, Pic_0284_338_228);
SetPagePic(GRAPHICS_PAGE_0, Pic_0283_633_175);
SetPagePic(GRAPHICS_PAGE_0, Pic_0285_334_163);
}
}
/**
* @brief 显示模式信息 一级菜单
......@@ -2147,7 +2097,7 @@ static const uint16_t PICList_Fuel[] = {
/*时间显示函数*/
static void AMT630H_GUI_TIME(uint16_t Hour, uint16_t Minute)
{
if ((Pic_mode == PIC_DAYTIME_Main_CH) || (Pic_mode == PIC_DAYTIME_Main_EN))
if ((Pic_mode == PIC_DAYTIME_CH) || (Pic_mode == PIC_DAYTIME_EN))
{
/*外部接收小时和分钟*/
if (FLASH_SYNC_1Hz)
......@@ -2176,7 +2126,7 @@ static void AMT630H_GUI_TIME(uint16_t Hour, uint16_t Minute)
DisplayNumPara.MinDigits = 2;
DisplayNum(GRAPHICS_PAGE_0, &DisplayNumPara, MinuteNumber);
}
else if ((Pic_mode == PIC_NIGHTTIME_Main_CH) || (Pic_mode == PIC_NIGHTTIME_Main_EN))
else if ((Pic_mode == PIC_NIGHTTIME_CH) || (Pic_mode == PIC_NIGHTTIME_EN))
{
/*外部接收小时和分钟*/
SetPagePic(GRAPHICS_PAGE_0, Pic_0634_916_503);
......@@ -2224,17 +2174,17 @@ static void AMT630H_GUI_TIME(uint16_t Hour, uint16_t Minute)
// }
/*燃油显示函数*/
uint16_t g_u16_GUI_PerFuelLevel = 1;
static void AMT630H_GUI_Fuel(uint16_t Fuel)
uint8_t g_u16_GUI_PerFuelLevel = 1;
static void AMT630H_GUI_Fuel(uint8_t Fuel)
{
/*外部传参燃油处于数组第几格*/
/*R>83且处于非开路状态时 黄色燃油灯闪烁*/
/*R开路状态时 黄色燃油灯闪烁*/
/*以上两种情况黄色燃油灯闪烁的频率不同*/
uint16_t FuelLevel;
uint8_t FuelLevel;
FuelLevel = Fuel;
if ((Pic_mode == PIC_DAYTIME_Main_CH) || (Pic_mode == PIC_DAYTIME_Main_EN))
static uint8_t s_FuelLowTime = 0U;
if ((Pic_mode == PIC_DAYTIME_CH) || (Pic_mode == PIC_DAYTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0553_315_473); /*燃油格*/
SetPagePic(GRAPHICS_PAGE_0, Pic_0549_299_533); /*E*/
......@@ -2245,13 +2195,27 @@ static void AMT630H_GUI_Fuel(uint16_t Fuel)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0552_503_529); /*黄色燃油灯*/
}
s_FuelLowTime = 0;
}
else if (FuelLevel == 1)
{
s_FuelLowTime++;
if (s_FuelLowTime < 15)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0552_503_529); /*黄色燃油灯*/
}
if (s_FuelLowTime == 20)
{
s_FuelLowTime = 0;
}
}
else
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0551_503_529); /*黑色燃油灯*/
s_FuelLowTime = 0;
}
}
else if ((Pic_mode == PIC_NIGHTTIME_Main_CH) || (Pic_mode == PIC_NIGHTTIME_Main_EN))
else if ((Pic_mode == PIC_NIGHTTIME_CH) || (Pic_mode == PIC_NIGHTTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0662_315_473); /*燃油格*/
SetPagePic(GRAPHICS_PAGE_0, Pic_0549_299_533); /*E*/
......@@ -2304,23 +2268,29 @@ static void AMT630H_GUI_Fuel(uint16_t Fuel)
/*电压显示函数*/
static void AMT630H_GUI_Voltage(uint16_t Voltage)
{
if ((Pic_mode == PIC_DAYTIME_Main_CH) || (Pic_mode == PIC_DAYTIME_Main_EN))
if ((Pic_mode == PIC_DAYTIME_CH) || (Pic_mode == PIC_DAYTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0563_923_407); /*电压图标*/
DISPLAY_NUM_ST DisplayNumPara;
uint16_t VoltageNumber;
VoltageNumber = Voltage / 10;
if (Voltage % 10 > 5)
{
VoltageNumber++;
}
uint16_t Voltage_Hundred;
uint16_t Voltage_Ten;
uint16_t Voltage_Unit;
uint16_t Front;
if ((VoltageNumber <= 120) || (VoltageNumber > 150))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0563_923_407); /*电压图标*/
}
/*数据处理*/
Voltage_Hundred = VoltageNumber / 100;
Voltage_Ten = (VoltageNumber % 100) / 10;
Voltage_Unit = VoltageNumber % 10;
Front = Voltage_Ten * 10 + Voltage_Unit;
Front = Voltage_Hundred * 10 + Voltage_Ten;
DisplayNumPara.NumList = NumbeList_Voltage_DAY;
if ((VoltageNumber >= 100) && (VoltageNumber < 1000))
......@@ -2359,7 +2329,7 @@ static void AMT630H_GUI_Voltage(uint16_t Voltage)
;
}
}
else if ((Pic_mode == PIC_NIGHTTIME_Main_CH) || (Pic_mode == PIC_NIGHTTIME_Main_EN))
else if ((Pic_mode == PIC_NIGHTTIME_CH) || (Pic_mode == PIC_NIGHTTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0563_923_407); /*电压图标*/
......@@ -2423,44 +2393,44 @@ static void AMT630H_GUI_Voltage(uint16_t Voltage)
/*大计里程显示函数*/
static void AMT630H_GUI_ODO(uint32_t ODO, uint8_t mode)
{
if((PIC_DAYTIME_Main_CH) && (PIC_DAYTIME_Main_EN))
if ((Pic_mode == PIC_DAYTIME_CH) || (Pic_mode == PIC_DAYTIME_EN))
{
/*ODO位数不同 KM位置不同*/
SetPagePic ( GRAPHICS_PAGE_0 , Pic_0577_48_272 ) ;
SetPagePic ( GRAPHICS_PAGE_0 , Pic_0578_55_296 ) ;
SetPagePic ( GRAPHICS_PAGE_0 , Pic_0580_211_324 ) ;
SetPagePic(GRAPHICS_PAGE_0, Pic_0577_48_272);
SetPagePic(GRAPHICS_PAGE_0, Pic_0578_55_296);
SetPagePic(GRAPHICS_PAGE_0, Pic_0580_211_324);
DISPLAY_NUM_ST DisplayNumPara;
uint16_t ODONumber;
ODONumber =ODO;
ODONumber = ODO;
DisplayNumPara.NumList = NumbeList_ODO_DAY;
DisplayNumPara.x = 173;
DisplayNumPara.NumInterval = GROUP_PIC_DIR_LEFT |24;
DisplayNumPara.NumInterval = GROUP_PIC_DIR_LEFT | 24;
DisplayNumPara.y = GROUP_PIC_USE_PSD_Y_POS;
DisplayNumPara.DecimalNum = 0;
DisplayNumPara.MinDigits =6;
DisplayNum(GRAPHICS_PAGE_0, &DisplayNumPara,ODONumber);
DisplayNumPara.MinDigits = 6;
DisplayNum(GRAPHICS_PAGE_0, &DisplayNumPara, ODONumber);
}
else if((PIC_NIGHTTIME_Main_CH) && (PIC_NIGHTTIME_Main_EN))
else if ((Pic_mode == PIC_NIGHTTIME_CH) || (Pic_mode == PIC_NIGHTTIME_EN))
{
/*ODO位数不同 KM位置不同*/
SetPagePic ( GRAPHICS_PAGE_0 , Pic_0685_48_272 ) ;
SetPagePic ( GRAPHICS_PAGE_0 , Pic_0686_55_296 ) ;
SetPagePic ( GRAPHICS_PAGE_0 , Pic_0688_211_324 ) ;
SetPagePic(GRAPHICS_PAGE_0, Pic_0685_48_272);
SetPagePic(GRAPHICS_PAGE_0, Pic_0686_55_296);
SetPagePic(GRAPHICS_PAGE_0, Pic_0688_211_324);
DISPLAY_NUM_ST DisplayNumPara;
uint16_t ODONumber;
ODONumber =ODO;
ODONumber = ODO;
DisplayNumPara.NumList = NumbeList_ODO_NIGHT;
DisplayNumPara.x = 173;
DisplayNumPara.NumInterval = GROUP_PIC_DIR_LEFT |24;
DisplayNumPara.NumInterval = GROUP_PIC_DIR_LEFT | 24;
DisplayNumPara.y = GROUP_PIC_USE_PSD_Y_POS;
DisplayNumPara.DecimalNum = 0;
DisplayNumPara.MinDigits =6;
DisplayNum(GRAPHICS_PAGE_0, &DisplayNumPara,ODONumber);
DisplayNumPara.MinDigits = 6;
DisplayNum(GRAPHICS_PAGE_0, &DisplayNumPara, ODONumber);
}
else
......@@ -2472,7 +2442,7 @@ static void AMT630H_GUI_ODO(uint32_t ODO, uint8_t mode)
/*车速显示函数*/
static void AMT630H_GUI_VSpeed(uint16_t VSpeed)
{
if ((Pic_mode == PIC_DAYTIME_Main_CH) || (Pic_mode == PIC_DAYTIME_Main_EN))
if ((Pic_mode == PIC_DAYTIME_CH) || (Pic_mode == PIC_DAYTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0592_617_271);
SetPagePic(GRAPHICS_PAGE_0, Pic_0593_889_310);
......@@ -2524,7 +2494,7 @@ static void AMT630H_GUI_VSpeed(uint16_t VSpeed)
;
}
}
else if ((Pic_mode == PIC_NIGHTTIME_Main_CH) || (Pic_mode == PIC_NIGHTTIME_Main_EN))
else if ((Pic_mode == PIC_NIGHTTIME_CH) || (Pic_mode == PIC_NIGHTTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0700_617_271);
SetPagePic(GRAPHICS_PAGE_0, Pic_0701_889_310);
......@@ -2587,7 +2557,7 @@ static void AMT630H_GUI_VSpeed(uint16_t VSpeed)
static void AMT630H_GUI_ESpeed(uint16_t ESpeed)
{
uint8_t PIC = 0;
if ((Pic_mode == PIC_DAYTIME_Main_CH) || (Pic_mode == PIC_DAYTIME_Main_EN))
if ((Pic_mode == PIC_DAYTIME_CH) || (Pic_mode == PIC_DAYTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0606_834_199); /* 1000r/min */
SetPagePic(GRAPHICS_PAGE_0, Pic_0607_94_110); /* 底 */
......@@ -2624,7 +2594,7 @@ static void AMT630H_GUI_ESpeed(uint16_t ESpeed)
}
}
else if ((Pic_mode == PIC_NIGHTTIME_Main_CH) || (Pic_mode == PIC_NIGHTTIME_Main_EN))
else if ((Pic_mode == PIC_NIGHTTIME_CH) || (Pic_mode == PIC_NIGHTTIME_EN))
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0714_834_199); /* 1000r/min */
SetPagePic(GRAPHICS_PAGE_0, Pic_0715_94_110); /* 底 */
......@@ -2673,7 +2643,7 @@ static void AMT630H_GUI_ESpeed(uint16_t ESpeed)
*/
void AMT630H_GUI_BACKGRAND()
{
if (Pic_mode == PIC_DAYTIME_Main_CH)
if (Pic_mode == PIC_DAYTIME_CH)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0382_0_0);
SetPagePic(GRAPHICS_PAGE_0, Pic_0753_109_331);
......@@ -2683,12 +2653,12 @@ void AMT630H_GUI_BACKGRAND()
SetPagePic(GRAPHICS_PAGE_0, Pic_0001_0_0);
SetPagePic(GRAPHICS_PAGE_0, Pic_0754_109_347);
}
else if (Pic_mode == PIC_DAYTIME_Main_EN)
else if (Pic_mode == PIC_DAYTIME_EN)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0382_0_0);
SetPagePic(GRAPHICS_PAGE_0, Pic_0753_109_331);
}
else if (Pic_mode == PIC_NIGHTTIME_Main_EN)
else if (Pic_mode == PIC_NIGHTTIME_EN)
{
SetPagePic(GRAPHICS_PAGE_0, Pic_0001_0_0);
SetPagePic(GRAPHICS_PAGE_0, Pic_0754_109_347);
......@@ -2696,9 +2666,16 @@ void AMT630H_GUI_BACKGRAND()
AMT630H_GUI_TIME(Get_Dis_Hour_Time(), Get_Dis_Minute_Time());
/* AMT630H_GUI_Telephone(Telephone); */
if (Get_Fuel_Sensor_State() == FuelSensorNormal)
{
AMT630H_GUI_Fuel(Get_CurFuelSetp());
}
else
{
AMT630H_GUI_Fuel(0);
AMT630H_GUI_Voltage(123);
AMT630H_GUI_ODO(Get_ODO_Value() / 10,0);
}
AMT630H_GUI_Voltage((ADC_Read_Signal(ADC_CH_KL30_VOLTAGE)) / 10);
AMT630H_GUI_ODO(Get_ODO_Value() / 10, 0);
if (Get_VechileSpeedValid() == 1)
{
AMT630H_GUI_VSpeed(Get_DispVechileSpeed() / 10);
......@@ -2744,21 +2721,6 @@ void AMT630H_GUI_SETTING()
SetPagePic(GRAPHICS_PAGE_0, Pic_0004_336_140);
}
AMT630H_GUI_Clock_Setting(12, 13, 3);
AMT630H_GUI_Backlight_Setting(3);
AMT630H_GUI_Display_Mode_Setting(0);
AMT630H_GUI_Bluetooth_Connect_Setting(0, 8, 1);
AMT630H_GUI_Unit_Setting(0);
AMT630H_GUI_Language_Setting(0);
AMT630H_GUI_Phone_Connect_Win();
// AMT630H_GUI_Clock_Setting(Clock_Hour, Clock_Min, Clock_BIT);
// AMT630H_GUI_Backlight_Setting( back_mode);
// AMT630H_GUI_Display_Mode_Setting( Display_mode);
// AMT630H_GUI_Bluetooth_Connect_Setting( select, sync_contacts, Connect_ON);
// AMT630H_GUI_Unit_Setting( select);
// AMT630H_GUI_Language_Setting( select)
// AMT630H_GUI_Phone_Connect_Win();
}
void AMT630H_GUI_DisplayProc(void)
......@@ -2769,3 +2731,141 @@ void AMT630H_GUI_DisplayProc(void)
PackedTransfer_Page();
}
void AMT630H_GUI_ReadPosittion_Display(void)
{
switch (g_u8Cursor_Posittion)
{
case MENU_ITEM_MAIN_ITEM: /*主界面*/
AMT630H_GUI_BACKGRAND(); /*主界面*/
break;
case MENU_ITEM_DISPLAY_MODE: /*00 显示模式*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Display_Mode_Information();
break;
case MENU_ITEM_SELECT_DAYTIME: /*01 选中日间*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Display_Mode_Setting(0);
break;
case MENU_ITEM_SELECT_NIGHTTIME: /*02 选中夜间*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Display_Mode_Setting(1);
break;
case MENU_ITEM_SELECT_AUTO: /*03 选中自动*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Display_Mode_Setting(2);
break;
case MENU_ITEM_BACKLIGHT_SETTING: /*04 背光设置*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Information();
break;
case MENU_ITEM_BACKLIGHT_5: /*10 背光_5*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Setting(5);
break;
case MENU_ITEM_BACKLIGHT_4: /*09 背光_4*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Setting(4);
break;
case MENU_ITEM_BACKLIGHT_3: /*08 背光_3*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Setting(3);
break;
case MENU_ITEM_BACKLIGHT_2: /*07 背光_2*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Setting(2);
break;
case MENU_ITEM_BACKLIGHT_1: /*06 背光_1*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Setting(1);
break;
case MENU_ITEM_BACKLIGHT_AUTO: /*05 背光自动*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Backlight_Setting(0);
break;
case MENU_ITEM_BLUETOOTH_CONNECT: /*11 蓝牙连接*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Bluetooth_Information(8, 1);
break;
case MENU_ITEM_BLUETOOTH_OPEN_CLOSE: /*12 蓝牙_开*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Bluetooth_Connect_Setting(0, 8, 1);
break;
case MENU_ITEM_BLUETOOTH_SYNC: /*13 蓝牙同步联系人*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Bluetooth_Connect_Setting(1, 8, 1);
break;
case MENU_ITEM_BLUETOOTH_BACK: /*14 蓝牙返回*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Bluetooth_Connect_Setting(2, 8, 1);
break;
case MENU_ITEM_CLOCK_SETTING: /*15 时钟设置*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Clock_Information(Get_Dis_Hour_Time(), Get_Dis_Minute_Time());
break;
case MENU_ITEM_CLOCK_HOUR_TENB: /*20 时钟小时十位*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Clock_Setting(12, 13, 1);
break;
case MENU_ITEM_CLOCK_HOUR_BIT: /*19 时钟小时个位*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Clock_Setting(12, 13, 2);
break;
case MENU_ITEM_CLOCK_MIN_TENB: /*18 时钟分钟十位*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Clock_Setting(12, 13, 3);
break;
case MENU_ITEM_CLOCK_MIN_BIT: /*17 时钟分钟个位*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Clock_Setting(12, 13, 4);
break;
case MENU_ITEM_CLOCK_BACK: /*16 时钟返回*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Clock_Setting(12, 13, 5);
break;
case MENU_ITEM_UNIT_SETTING: /*21 单位设置*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Unit_Information();
break;
case MENU_ITEM_UNIT_KM: /*22 选中公制*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Unit_Setting(0);
break;
case MENU_ITEM_UNIT_MILE: /*23 选中英制*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Unit_Setting(1);
break;
case MENU_ITEM_LANGUAGE_SETTING: /*24 语言设置*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Language_Information();
break;
case MENU_ITEM_LANGUAGE_CHINESE: /*25 选中中文*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Language_Setting(0);
break;
case MENU_ITEM_LANGUAGE_ENGLISH: /*26 选中英文*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Language_Setting(0);
break;
case MENU_ITEM_FAULT_INFORMATION: /*27 故障信息*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Fault_Information();
break;
case MENU_ITEM_PHONE_CONNECT: /*28 手机互联*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Phone_Connect();
break;
case MENU_ITEM_QUIT: /*29 退出*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Quit();
break;
case MENU_ITEM_PHONE_CONNECT_SET:
case MENU_ITEM_PHONE_CONNECT_APP: /*28 手机互联成功*/
AMT630H_GUI_SETTING();
AMT630H_GUI_Phone_Connect_Win();
break;
default:
break;
}
}
\ No newline at end of file
......@@ -3,15 +3,10 @@
typedef enum
{
PIC_DAYTIME_Main_CH =0 ,//日间中文主界面
PIC_NIGHTTIME_Main_CH ,//夜间中文主界面
PIC_DAYTIME_Main_EN ,//日间英文主界面
PIC_NIGHTTIME_Main_EN ,//夜间英文主界面
PIC_DAYTIME_CH ,//日间中文
PIC_NIGHTTIME_CH , //夜间中文
PIC_DAYTIME_EN, //日间英文
PIC_NIGHTTIME_EN, //夜间英文
PIC_DAYTIME_CH =0 ,//日间中文
PIC_NIGHTTIME_CH ,//夜间中文
PIC_DAYTIME_EN ,//日间英文
PIC_NIGHTTIME_EN ,//夜间英文
PIC_Max,
}_Picture_Mode;
......
......@@ -26,6 +26,9 @@
#include "AMT630H\AMT630H_Datas.h"
#include "Data_ESpeed.h"
#include "Data_VSpeed.h"
#include "Data_Coolant.h"
#include "Data_Fuel.h"
#include "Mileage\Services_Mileage_User.h"
#include "BackLight.h"
#include "RTC\RTE_RTC.h"
#include "CAN_Signal\CAN_Lib.h"
......
......@@ -32,6 +32,7 @@ void Sys_10ms_Tasks(void)
Key_Clear_Time();
Key_TimeOut_Service();
Fuel_R_Cal(10u);
Coolant_R_Cal(10u);
}
void Sys_20ms_Tasks(void)
......@@ -54,12 +55,11 @@ void Sys_100ms_Tasks(void)
Triptest = Data_Read_Trip(0);
Get_DisTime_Service();
Fuel_Cal_Sevice(100u);
Coolant_Cal_Sevice(100u);
Services_Mileage_Callback();
RTE_GPIO_Set_Level(Blacklight_PWM, 1);
if(Get_DispVechileSpeed() >= 1500)
{
Data_Mileage_Clear();
}
RTE_GPIO_Config(RTE_GPIO_PORT05_PIN04, GpioOut_High);
}
static uint16_t task_2ms = 0u;
void Sys_Exact_50us_Tasks(void)
......
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