Commit c1c69e63 authored by hu's avatar hu

增加界面显示,调整KEY逻辑

parent 5cfe1bf4
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 290252
project .rodata 408703
project .text 292796
project .rodata 408719
project .secinfo 120
project .syscall 6
project .romdata 9029
......
#include "Key.h"
#include "Menu.h" /*菜单显示函数在此*/
#include "Services_ODO_User.h" /*清空总计历程函数*/
#include "Menu.h"
#include "Services_ODO_User.h"
#include "DisplaySch_user.h"
#include "Sound_Scheduler.h"
#include "System_Monitor.h"
#include "RTE_ADC.h"
/*-------------------------------------------------------*/
/*无车速限制值*/
#define DISPSPEEDNULLMAX 66
/*----------按键具体功能执行的回调函数-----------------------*/
......@@ -29,7 +30,7 @@ struct
uint8_t Menu ;
uint8_t Return ;
}KeyTest;
} KeyTest;
/*******************************UP***********************************************
Function: Key_Operation_Up
......@@ -39,8 +40,28 @@ struct
*******************************UP***********************************************/
void Key_Operation_Up(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Up ++ ;
HMI_Set_KEY_UP(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
/*主界面*/
if ((bCurMenuIDX >= _MN_DSP_LEVEL1MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL1MENU_6))
{
NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_UP);
}
}
}
else
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
}
}
}
/*******************************DOWN***********************************************
......@@ -51,8 +72,28 @@ void Key_Operation_Up(Key_Event_en_t enKeyEvent)
*******************************DOWN***********************************************/
void Key_Operation_Down(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Down ++ ;
HMI_Set_KEY_DOWN(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
/*主界面*/
if ((bCurMenuIDX >= _MN_DSP_LEVEL1MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL1MENU_6))
{
NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_DOWN);
}
}
}
else
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
}
}
}
/*******************************ENTER***********************************************
Function: Key_Operation_Enter
......@@ -62,8 +103,28 @@ void Key_Operation_Down(Key_Event_en_t enKeyEvent)
*******************************ENTER***********************************************/
void Key_Operation_Enter(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Enter ++ ;
HMI_Set_KEY_CONFIRM(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
/*一级菜单 -- 二级菜单*/
if ((bCurMenuIDX >= _MN_DSP_LEVEL2MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL2_7_MENU_1))
{
NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_ENTER);
}
}
}
else
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
}
}
}
/*******************************RETURN***********************************************
......@@ -74,8 +135,75 @@ void Key_Operation_Enter(Key_Event_en_t enKeyEvent)
*******************************RETURN***********************************************/
void Key_Operation_Return(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Return ++ ;
HMI_Set_KEY_CANCEL(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
if ((bCurMenuIDX >= _MN_DSP_LEVEL2_1_MENU_1) && (bCurMenuIDX < _MN_DSP_ENTER_MENU))
{
if (
( bCurMenuIDX == _MN_DSP_LEVEL3_4_MENU_3 ) || /*显示设置*/
( bCurMenuIDX == _MN_DSP_LEVEL3_4_MENU_7 ) || /*语言设定*/
( bCurMenuIDX == _MN_DSP_LEVEL3_4_MENU_9 ) || /*单位设定*/
( bCurMenuIDX == _MN_DSP_LEVEL3_4_MENU_8 ) || /*亮度调节*/
( bCurMenuIDX == _MN_DSP_LEVEL4_1_MENU_1 ) || /*日期设置退出*/
( bCurMenuIDX == _MN_DSP_LEVEL4_1_MENU_2 ) || /*日期格式设置退出*/
( bCurMenuIDX == _MN_DSP_LEVEL4_2_MENU_1 ) || /*时间设置退出*/
( bCurMenuIDX == _MN_DSP_LEVEL4_2_MENU_2 ) || /*时间格式退出*/
((bCurMenuIDX >= _MN_DSP_LEVEL4_4_MENU_1 ) && (bCurMenuIDX <= _MN_DSP_LEVEL4_4_MENU_5)) /*省油设定子菜单*/
)
{
MenuFlag.Menu_Return = 0;
NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_EXIT);
}
else if (bCurMenuIDX == _MN_DSP_LEVEL3_4_MENU_A ) /*胎压设置界面返回操作*/
{
//if (User_set_Num.User_TpmsStatus != 2) /*不是正在匹配状态*/
//{
// NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_EXIT);
//}
//else
//{
// User_set_Num.User_TpmsStatus = 1; /*退出匹配界面*/
// if (User_set_Num.User_Temp_Return == 0)
// {
// User_set_Num.User_Temp_Return = 1; /*取消配对标记*/
// User_set_Num.User_TpmsSend = 3; /*报文外发次数*/
// }
// else
// {
// ; /* do nonthing*/
// }
//}
}
else
{
NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_EXIT);
}
}
/*Enter Go*/
else if (bCurMenuIDX == _MN_DSP_ENTER_MENU)
{
MenuFlag.Menu_Return = 0;
NextMenu(MenuFlag.Menu_Enter_Return);
}
else
{
;/*do nothing*/
}
}
}
else
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
}
}
}
/*******************************Menu***********************************************
......@@ -86,9 +214,49 @@ void Key_Operation_Return(Key_Event_en_t enKeyEvent)
*******************************Menu***********************************************/
void Key_Operation_Menu(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Menu ++ ;
HMI_Set_KEY_MENU(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
/*记录进入menu菜单的位置*/
if ((bCurMenuIDX >= _MN_DSP_LEVEL1MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL1MENU_6))
{
MenuFlag.Menu_Flag = bCurMenuIDX;
if (0) /*有故障码*/
{
;//NextMenu(_MN_DSP_LEVEL2MENU_1);
}
else /*无故障码*/
{
NextMenu(MenuOptTab[bCurMenuIDX].VK_IDX_ENTER);
}
}
/*无论从哪里都能回去*/
//else if ((bCurMenuIDX >= _MN_DSP_LEVEL2MENU_1) && (bCurMenuIDX <= _MN_DSP_RETURN_MENU))
//{
// if (bCurMenuIDX == _MN_DSP_LEVEL3_4_MENU_A) /*胎压设置界面*/
// {
// NextMenu(_MN_DSP_LEVEL2MENU_4); /*menu回到用户设置界面*/
// }
// else
// {
// NextMenu(MenuFlag.Menu_Flag);
// }
//}
}
}
else
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
{
}
}
}
......@@ -121,21 +289,22 @@ Key_Real_Status_en_t Key_Real_Status_Read_Menu(void) ;
//Up_R 1300~1400Ω
//Down_R 3000~3200Ω
Key_Real_Status_en_t Key_Real_Status_Read_Menu(void)
/*上*/
Key_Real_Status_en_t Key_Real_Status_Read_Up(void)
{
Key_Real_Status_en_t enKeyRealStatus = KEY_LINE_LOOSEN;
uint16_t Key_R = 0;
Key_R = (uint16_t)RTE_Read_KEY_R();
if(RTE_Read_KEY_R_Valid() == 0)
if (RTE_Read_KEY_R_Valid() == 0)
{
enKeyRealStatus = KEY_LINE_LOOSEN;
}
else
{
if((Key_R >= (460 - 300))&&(Key_R <= (460 + 300)))
if ((Key_R >= (1200 - 300)) && (Key_R <= (1200 + 300)))
{
enKeyRealStatus = KEY_LINE_PRESS;
}
......@@ -148,20 +317,21 @@ Key_Real_Status_en_t Key_Real_Status_Read_Menu(void)
return enKeyRealStatus;
}
Key_Real_Status_en_t Key_Real_Status_Read_Enter(void)
/*下*/
Key_Real_Status_en_t Key_Real_Status_Read_Down(void)
{
Key_Real_Status_en_t enKeyRealStatus = KEY_LINE_LOOSEN;
uint16_t Key_R = 0;
Key_R = (uint16_t)RTE_Read_KEY_R();
if(RTE_Read_KEY_R_Valid() == 0)
if (RTE_Read_KEY_R_Valid() == 0)
{
enKeyRealStatus = KEY_LINE_LOOSEN;
}
else
{
if((Key_R >= (5298 - 300))&&(Key_R <= (5298 + 300)))
if ((Key_R >= (2900 - 300)) && (Key_R <= (2900 + 300)))
{
enKeyRealStatus = KEY_LINE_PRESS;
}
......@@ -170,23 +340,25 @@ Key_Real_Status_en_t Key_Real_Status_Read_Enter(void)
enKeyRealStatus = KEY_LINE_LOOSEN;
}
}
return enKeyRealStatus;
}
Key_Real_Status_en_t Key_Real_Status_Read_Return(void)
/*Enter*/
Key_Real_Status_en_t Key_Real_Status_Read_Enter(void)
{
Key_Real_Status_en_t enKeyRealStatus = KEY_LINE_LOOSEN;
uint16_t Key_R = 0;
Key_R = (uint16_t)RTE_Read_KEY_R();
if(RTE_Read_KEY_R_Valid() == 0)
if (RTE_Read_KEY_R_Valid() == 0)
{
enKeyRealStatus = KEY_LINE_LOOSEN;
}
else
{
if((Key_R >= (9230 - 300))&&(Key_R <= (9230 + 300)))
if ((Key_R >= (5500 - 300)) && (Key_R <= (5500 + 300)))
{
enKeyRealStatus = KEY_LINE_PRESS;
}
......@@ -195,24 +367,24 @@ Key_Real_Status_en_t Key_Real_Status_Read_Return(void)
enKeyRealStatus = KEY_LINE_LOOSEN;
}
}
return enKeyRealStatus;
}
Key_Real_Status_en_t Key_Real_Status_Read_Up(void)
/*Return*/
Key_Real_Status_en_t Key_Real_Status_Read_Return(void)
{
Key_Real_Status_en_t enKeyRealStatus = KEY_LINE_LOOSEN;
uint16_t Key_R = 0;
Key_R = (uint16_t)RTE_Read_KEY_R();
if(RTE_Read_KEY_R_Valid() == 0)
if (RTE_Read_KEY_R_Valid() == 0)
{
enKeyRealStatus = KEY_LINE_LOOSEN;
}
else
{
if((Key_R >= (1142 - 300))&&(Key_R <= (1142 + 300)))
if ((Key_R >= (9150 - 300)) && (Key_R <= (9150 + 300)))
{
enKeyRealStatus = KEY_LINE_PRESS;
}
......@@ -225,20 +397,21 @@ Key_Real_Status_en_t Key_Real_Status_Read_Up(void)
return enKeyRealStatus;
}
Key_Real_Status_en_t Key_Real_Status_Read_Down(void)
/*Menu*/
Key_Real_Status_en_t Key_Real_Status_Read_Menu(void)
{
Key_Real_Status_en_t enKeyRealStatus = KEY_LINE_LOOSEN;
uint16_t Key_R = 0;
Key_R = (uint16_t)RTE_Read_KEY_R();
if(RTE_Read_KEY_R_Valid() == 0)
if (RTE_Read_KEY_R_Valid() == 0)
{
enKeyRealStatus = KEY_LINE_LOOSEN;
}
else
{
if((Key_R >= (2901 - 300))&&(Key_R <= (2901 + 300)))
if ((Key_R >= (550 - 300)) && (Key_R <= (550 + 300)))
{
enKeyRealStatus = KEY_LINE_PRESS;
}
......@@ -251,7 +424,6 @@ Key_Real_Status_en_t Key_Real_Status_Read_Down(void)
return enKeyRealStatus;
}
/*---------------------------------------------------------------------------------------*/
const Key_Attribute_st_t stKeyAttribute[KEY_NUM_MAX] =
{
......
......@@ -1096,4 +1096,3 @@ uint8_t Co_Can_ConvertSubID(uint32_t MsgID)
}
return u8Result;
}
\ No newline at end of file
......@@ -60,7 +60,7 @@ void GUI_Display_KL15_OFF_Init(void)
--------------------------------------------------------------------------*/
void GUI_Display_background(void)
{
GUI_General_Display(WET_Sprite, ditu_1, GUI_BLENDMODE_CUSTOM);
GUI_General_Display(WET_Sprite, ditu_2, GUI_BLENDMODE_CUSTOM);
}
/*-------------------------------------------------------------------------
* Function Name : GUI_Display_OftenShow_Group
......@@ -87,9 +87,6 @@ void GUI_OftenShow_Display(void)
{
Gui_TRIPB_Display(GUI_DISP_MODE_NORMAL);
}
GUI_Dynamic_DIsplay();
}
/*-------------------------------------------------------------------------
......@@ -634,10 +631,12 @@ void Gui_Gear_Display(uint8_t Mode)
uint8_t Transmission_Sift_Mode = 0u;
uint8_t Current_Gear = 0u;
uint8_t Temp = 0u;
uint8_t Automatic_or_Manual_Mode = 0u;
uint8_t CanStatus1 = 0u;
if (Mode == GUI_DISP_MODE_NORMAL)
{
/*自动挡 EOL设定为ZF变速器*/
/*G1 自动挡 EOL设定为ZF变速器*/
if (K_Line_Set.K_Line_LID41 == 0x13u)
{
Manouvering_Mode = Get_ID_18FF8503_Sig_Manouvering_mode();
......@@ -699,7 +698,22 @@ void Gui_Gear_Display(uint8_t Mode)
GUI_General_Display(Gear_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); /*K未配*/
}
/**/
/*G2*/
Automatic_or_Manual_Mode = Get_ID_18FF8503_Sig_Automatic_or_Manual_Mode();
CanStatus1 = CAN_MSG_Status(ID_CanMsg18FF8503_Msg_Count);
if (CanStatus1 == CAN_SIG_LOST)
{
GUI_General_Display(Gear_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
else if (Automatic_or_Manual_Mode == 0x00u)
{
GUI_General_Display(Gear_Sprite, CN_MANUAL, GUI_BLENDMODE_SRC_OVER);
}
else
{
GUI_General_Display(Gear_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
else
{
......@@ -707,12 +721,534 @@ void Gui_Gear_Display(uint8_t Mode)
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_AVG_FuelSpeed_Display
* Description : 平均车速,平局油耗
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_AVG_FuelSpeed_Display(uint8_t Mode)
{
if (Mode == GUI_DISP_MODE_NORMAL)
{
}
else if (Mode == GUI_DISP_MODE_BLANK)
{
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);
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);
break;
default :
break;
}
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_Drive_Info_Avg_Speed_Display
* Description : 平均车速
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Drive_Info_Avg_Speed_Display(uint8_t Valid, uint16_t Speed)
{
uint8_t CanStatus1 = 0u;
CanStatus1 = CAN_MSG_Status(ID_CanMsg18EF1718_Msg_Count) ;
if (CanStatus1 == CAN_SIG_LOST)
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
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 (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*/
}
/*是否有效*/
if (User_App.User_Company == 1)
{
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);
}
}
else
{
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);
}
}
}
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);
}
}
else
{
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);
}
}
}
#endif
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_Drive_Info_Avg_Fuel_Display
* Description : 平均油耗
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Drive_Info_Avg_Fuel_Display(uint8_t Valid, uint16_t Fuel)
{
uint8_t CanStatus1 = 0u;
CanStatus1 = CAN_MSG_Status(ID_CanMsg18EF1718_Msg_Count) ;
if (CanStatus1 == CAN_SIG_LOST)
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
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
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
}
TFT_LCD_Display_Sprite(LAYER_NUMO_5, SN_Number_05_white_Point_png, 354, 140, 64); //top
if (User_App.User_Company == 1)
{
if (Fuel == TRAPB) //Trip B
{
if (User_ECU.TripB_Fuel > 1000)
{
GUI_General_Digit_Display((1000000 / User_ECU.TripB_Fuel), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //L/100km
}
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);
}
}
else
{
if (User_ECU.TripA_Fuel > 1000)
{
GUI_General_Digit_Display((1000000 / User_ECU.TripA_Fuel), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //L/100km
}
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);
}
}
}
else
{
if (Fuel == TRAPB) //Trip B //ϵÊý1.069
{
if (User_ECU.TripB_Fuel > 1000)
{
GUI_General_Digit_Display(((1000000 / User_ECU.TripB_Fuel) * 1069 / 1000), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //MPG
}
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);
}
}
else //Trip A ODO
{
if (User_ECU.TripB_Fuel > 1000)
{
GUI_General_Digit_Display((10 / User_ECU.TripA_Fuel), DIGIT_FIVE_WHITE, 4, 2, LAYER_NUMO_1, GUIBGAVGFuelPosX, 140, 64); //L/m
}
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);
}
}
}
#endif
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_Battery_Display_Display
* Description : 电池电量
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Battery_Display_Display(uint8_t Mode)
{
uint8_t current_value = 0u;
if (Mode == GUI_DISP_MODE_NORMAL)
{
GUI_General_Display(MultiPurpose_Sprite, CN_dianyaji_tubiao, GUI_BLENDMODE_SRC_OVER); /*电池*/
GUI_General_Display(MultiPurpose_Sprite, CN_dianyaji_kedu, GUI_BLENDMODE_SRC_OVER);/*标尺*/
GUI_General_Display(MultiPurpose_Sprite, CN_dianyaji_L, GUI_BLENDMODE_SRC_OVER);/*L*/
GUI_General_Display(MultiPurpose_Sprite, CN_dianyaji_H, GUI_BLENDMODE_SRC_OVER);/*H*/
current_value = HYQ_TEST;
switch (current_value)
{
case 0x0Du :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x0Cu), 276u, GUI_BLENDMODE_CUSTOM);
case 0x0Cu :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x0Bu), 276u, GUI_BLENDMODE_CUSTOM);
case 0x0Bu :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x0Au), 276u, GUI_BLENDMODE_CUSTOM);
case 0x0Au :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x09u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x09u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x08u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x08u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x07u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x07u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x06u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x06u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x05u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x05u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x04u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x04u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x03u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x03u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x02u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x02u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x01u), 276u, GUI_BLENDMODE_CUSTOM);
case 0x01u :
GUI_Translate_Display(MultiPurpose_Sprite, CN_dianyaji_zouge1, (536 + 17u * 0x00u), 276u, GUI_BLENDMODE_CUSTOM);
break;
default :
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
break;
}
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_DPD_Display_Display
* Description : DPD
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_DPD_Display_Display(uint8_t Mode)
{
uint16_t value = 0u;
//value = AUXIO_DPF_Status * 20 / 5;
if (Mode == GUI_DISP_MODE_NORMAL)
{
if ((K_Line_Set.K_Line_LID33 == 0x00u) || (K_Line_Set.K_Line_LID33 == 0x01u))
{
value = HYQ_TEST;
if (1)
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_duijiliang, GUI_BLENDMODE_SRC_OVER); /*DPD堆积绿*/
}
else
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zaishengjindu, GUI_BLENDMODE_SRC_OVER); /*DPD再生黄*/
}
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_L, GUI_BLENDMODE_SRC_OVER); /*L*/
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_H, GUI_BLENDMODE_SRC_OVER); /*H*/
if ((value >= 0u) && (value <= 100u))
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
else if ((value > 100u) && (value <= 200u))
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge1, GUI_BLENDMODE_SRC_OVER);
}
else if ((value > 200u) && (value <= 300u))
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge1, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge2, GUI_BLENDMODE_SRC_OVER);
}
else if ((value > 300u) && (value <= 450u))
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge1, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge2, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge3, GUI_BLENDMODE_SRC_OVER);
}
else if ((value > 450u) && (value <= 600u))
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge1, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge2, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge3, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge4, GUI_BLENDMODE_SRC_OVER);
}
else if ((value > 600u) && (value <= 1000u))
{
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge1, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge2, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge3, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge4, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, CN_DPD_zouge5, GUI_BLENDMODE_SRC_OVER);
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_Time_OilTemp_Display
* Description : 发动机转速时间-油温
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Time_OilTemp_Display(uint8_t Mode)
{
uint32_t Temp = 0;
uint8_t CanStatus1 = 0u;
if (Mode == GUI_DISP_MODE_NORMAL)
{
Temp = Get_ID_18FEE518_Sig_Total_Engine_Hours() ;
CanStatus1 = CAN_MSG_Status(ID_CanMsg18FEE518_Msg_Count);
/*时间*/
GUI_General_Display(MultiPurpose_Sprite, CN_Time_wenzi, GUI_BLENDMODE_SRC_OVER);/*时间*/
GUI_General_Display(MultiPurpose_Sprite, CN_Time_danwei, GUI_BLENDMODE_SRC_OVER);/*H*/
if (CanStatus1 == CAN_SIG_LOST)
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
else if (Temp <= 0xFAFFFFFFu)
{
Temp = Temp / 20u;
if (Temp >= 9999999u)
{
GUI_General_Digit_Display(MultiPurpose_Sprite, 9999999u, Nb_20_0, 7u, 5u, GUI_DISP_OILTEMP, 221u, GUI_BLENDMODE_SRC_OVER);/*显示ODO的数值*/
}
else
{
GUI_General_Digit_Display(MultiPurpose_Sprite, Temp, Nb_20_0, 7u, 5u, GUI_DISP_OILTEMP, 221u, GUI_BLENDMODE_SRC_OVER);/*显示ODO的数值*/
}
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_dian, 719u, 241u, GUI_BLENDMODE_CUSTOM);/*点*/
}
else
{
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 592u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 613u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 634u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 655u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 676u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 697u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_heng, 729u, 232u, GUI_BLENDMODE_CUSTOM);
GUI_Translate_Display(MultiPurpose_Sprite, Nb_20_dian, 719u, 241u, GUI_BLENDMODE_CUSTOM);/*点*/
}
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_Time_OilTemp_OFF_Display
* Description : OFF-发动机转速时间显示
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Time_OilTemp_OFF_Display(uint8_t Mode)
{
if (Mode == GUI_DISP_MODE_NORMAL)
{
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
/*--------------------------------------------------------------------------
* Function Name : GUI_Year_Month_Data_Display
* Description : 年月日显示
* Input : None
* Output : None
* Return : None
* onther : 区域
--------------------------------------------------------------------------*/
void GUI_Year_Month_Data_Display(uint8_t Mode)
{
#if 0
if (Mode == GUI_DISP_MODE_NORMAL)
{
/*年月日*/
if (User_App.Date_Format == 1)
{
TFT_LCD_Display_Sprite(LAYER_Trip1, SN_D_RQSZ_day_x222_y128_png, 222, 128, 64);
GUI_General_Digit_Display(RTC_YEAR, DIGIT_EIGHT_WHITE, 4, 0, LAYER_Trip2, GUIBGClockYearPosX, 130, 64); /*年*/
GUI_General_Digit_Display(RTC_MONTH, DIGIT_EIGHT_WHITE, 2, 1, LAYER_NUMO_2, GUIBGClockMouthPosX, 130, 64); /*月*/
GUI_General_Digit_Display(RTC_DATE, DIGIT_EIGHT_WHITE, 2, 1, LAYER_NUMO_4, GUIBGClockDataPosX, 130, 64); /*日*/
}
/*月日年*/
else if (User_App.Date_Format == 2)
{
TFT_LCD_Display_Sprite(LAYER_Trip1, SN_D_RQSZ_daymdy_x188_y128_png, 188, 128, 64);
GUI_General_Digit_Display(RTC_YEAR, DIGIT_EIGHT_WHITE, 4, 0, LAYER_Trip2, GUIBGClockYearPosX_1, 130, 64); /*年*/
GUI_General_Digit_Display(RTC_MONTH, DIGIT_EIGHT_WHITE, 2, 1, LAYER_NUMO_2, GUIBGClockMouthPosX_1, 130, 64); /*月*/
GUI_General_Digit_Display(RTC_DATE, DIGIT_EIGHT_WHITE, 2, 1, LAYER_NUMO_4, GUIBGClockDataPosX_1, 130, 64); /*日*/
}
/*日月年*/
else
{
TFT_LCD_Display_Sprite(LAYER_Trip1, SN_D_RQSZ_daydmy_x188_y128_png , 188, 128, 64);
GUI_General_Digit_Display(RTC_YEAR, DIGIT_EIGHT_WHITE, 4, 0, LAYER_Trip2, GUIBGClockYearPosX_1, 130, 64); /*年*/
GUI_General_Digit_Display(RTC_DATE, DIGIT_EIGHT_WHITE, 2, 1, LAYER_NUMO_4, GUIBGClockMouthPosX_1, 130, 64); /*日*/
GUI_General_Digit_Display(RTC_MONTH, DIGIT_EIGHT_WHITE, 2, 1, LAYER_NUMO_2, GUIBGClockDataPosX_1, 130, 64); /*月*/
/*星期 */
TFT_LCD_Display_Sprite(LAYER_NUMO_5, SN_D_RQSZ_week01_x402_y129_png + RTC_WEEK, 402, 129, 64);
/*时间*/
if (User_App.Time_Format == 1)
{
if (RTC_HOUR < 12 )
TFT_LCD_Display_Sprite(LAYER_NUMT_1, SN_D_RQSZ_AM_x193_y159_png, 193, 159, 64); /*AM*/
else
TFT_LCD_Display_Sprite(LAYER_NUMT_1, SN_D_RQSZ_PM_x193_y159_png, 193, 159, 64); /*PM*/
if (RTC_HOUR == 0)
{
GUI_General_Digit_Display(RTC_HOUR + 12, DIGIT_EIGHT_WHITE, 2, 0, LAYER_NUMT_2, GUIBGClockHourG4PosX, 159, 64);
}
else if (RTC_HOUR > 12)
{
GUI_General_Digit_Display(RTC_HOUR - 12, DIGIT_EIGHT_WHITE, 2, 0, LAYER_NUMT_2, GUIBGClockHourG4PosX, 159, 64); /*PM*/
}
else
{
GUI_General_Digit_Display(RTC_HOUR, DIGIT_EIGHT_WHITE, 2, 0, LAYER_NUMT_2, GUIBGClockHourG4PosX, 159, 64); /*AM*/
}
}
else
{
TFT_LCD_Clear_Layer(LAYER_NUMT_1);
GUI_General_Digit_Display(RTC_HOUR, DIGIT_EIGHT_WHITE, 2, 0, LAYER_NUMT_2, GUIBGClockHourG4PosX, 159, 64);
}
TFT_LCD_Display_Sprite(LAYER_NUMT_6, SN_Number_08_white_Point3_png, 297, 159, 64);
GUI_General_Digit_Display(RTC_MINUTE, DIGIT_EIGHT_WHITE, 2, 0, LAYER_NUMT_4, GUIBGClockMinuteG4PosX, 159, 64);
}
else
{
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
#endif
}
......@@ -726,7 +1262,7 @@ void GUI_Test_Dispaly (uint8_t Mode)
}
else
{
GUI_General_Display(Time_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
//GUI_General_Digit_Display(Time_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
//GUI_General_Digit_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER);
}
}
\ No newline at end of file
......@@ -17,30 +17,37 @@ static const uint16_t GUI_DISP_Minutes[2] = {428, 406};
static const uint16_t GUI_DISP_Year[4] = {568, 552, 538, 522};
static const uint16_t GUI_DISP_Month[2] = {617, 604};
static const uint16_t GUI_DISP_Date[2] = {669, 653};
static const uint16_t GUI_DISP_TRIPA[5] = {676, 648, 629, 610, 591};/*TRIP*/
static const uint16_t GUI_DISP_ODO[7] = {676, 657, 638, 619, 600, 581, 562};/*ODO*/
static const uint16_t GUI_DISP_DrivingSupport[3] = {481, 459, 436};/*定速巡航*/
static const uint16_t GUI_DISP_TRIPA[5] = {676, 648, 629, 610, 591}; /*TRIP*/
static const uint16_t GUI_DISP_ODO[7] = {676, 657, 638, 619, 600, 581, 562}; /*ODO*/
static const uint16_t GUI_DISP_DrivingSupport[3] = {481, 459, 436}; /*定速巡航*/
static const uint16_t GUI_DISP_OILTEMP[7] = {729, 697, 676, 655, 634, 613, 592}; /*油温时间*/
extern void GUI_Display_KL15_ON_Init(void);
extern void GUI_Display_KL15_OFF_Init(void);
extern void GUI_Display_background(void); /*刷底图*/
extern void GUI_OftenShow_Display(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_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);
void Gui_TRIPB_Display(uint8_t Mode);
void Gui_ODO_Display(uint8_t Mode);
void Gui_ADAS_Display(uint8_t Mode);
void Gui_DrivingSupport_Display(uint8_t Mode);/*定速巡航*/
void Gui_Gear_Display(uint8_t Mode);/*挡位*/
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);
void GUI_Year_Month_Data_Display(uint8_t Mode);
......
......@@ -140,6 +140,22 @@ typedef struct
void (*Exit)(void);
} _MenuOptTab;
typedef struct
{
uint8_t Menu_Flag ; /*主界面标记*/
uint8_t Menu_Time_Flag ; /*从Enter界面确认退出计时*/
uint8_t Menu_Enter_Return ; /*进入Enter之前界面*/
uint8_t Menu_Return ; /*Enter Return界面切换标记*/
uint8_t Menu_Key_Time ; /*按键长按时间记录*/
uint16_t Key_Menu_Popup_time ; /*上述状态持续时间*/
uint8_t Key_Menu_Popup_Flag ; /*报警界面menu按键长按 */
uint8_t Menu_Light_Time ;
uint8_t Menu_Light_Time_Flag ;
} _MenuFlag;
EXTERN_MEU_PROCESS _MenuFlag MenuFlag ;
EXTERN_MEU_PROCESS uint8_t bMenuSwFlag;
EXTERN_MEU_PROCESS uint8_t g_ClearWin1;
EXTERN_MEU_PROCESS uint8_t bNextMenuIDX; // the next index of menu .
......
......@@ -14,6 +14,8 @@ uint8_t bCurMenuIDX;
uint8_t bMainMenuIDX;
uint8_t bOldMenuIDX;
_MenuFlag MenuFlag ;
const _MenuOptTab MenuOptTab[] =
{
/*---------ENTER---------------------UP-----------------------DOWN----------------------EXIT------------------ENTER------------------DO-----------------EXIT------------*/
......@@ -212,6 +214,8 @@ void Level1Menu_1Enter(void)
void Level1Menu_1Do(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
GUI_AVG_FuelSpeed_Display(GUI_DISP_MODE_BLANK);
}
void Level1Menu_1Exit(void)
{}
......@@ -222,7 +226,9 @@ void Level1Menu_2Enter(void)
}
void Level1Menu_2Do(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
GUI_Battery_Display_Display(GUI_DISP_MODE_NORMAL);
}
void Level1Menu_2Exit(void)
{}
......@@ -233,6 +239,9 @@ void Level1Menu_3Enter(void)
}
void Level1Menu_3Do(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
GUI_DPD_Display_Display(GUI_DISP_MODE_NORMAL);
}
void Level1Menu_3Exit(void)
{}
......@@ -243,7 +252,9 @@ void Level1Menu_4Enter(void)
}
void Level1Menu_4Do(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
GUI_Time_OilTemp_Display(GUI_DISP_MODE_NORMAL);
}
void Level1Menu_4Exit(void)
{}
......@@ -254,7 +265,9 @@ void Level1Menu_5Enter(void)
}
void Level1Menu_5Do(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
GUI_Year_Month_Data_Display(GUI_DISP_MODE_NORMAL);
}
void Level1Menu_5Exit(void)
{}
......@@ -262,6 +275,8 @@ void Level1Menu_5Exit(void)
/*主界面6 空白*/
void Level1Menu_6Enter(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
}
void Level1Menu_6Do(void)
{
......@@ -273,6 +288,8 @@ void Level1Menu_6Exit(void)
/*主界面7 亮度调节*/
void Level1Menu_7Enter(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
}
void Level1Menu_7Do(void)
{
......@@ -283,9 +300,16 @@ void Level1Menu_7Exit(void)
/*主界面 报警界面*/
void LevelPopup_Enter(void)
{
GUI_OftenShow_Display();
GUI_Dynamic_DIsplay();
}
void LevelPopup_Do(void)
{
}
void LevelPopup_Exit(void)
{}
......@@ -131,7 +131,68 @@ void Display_StartAnimationExit(void)
void Display_MenuService(void)
{
/*上短*/
if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_UP == KEY_EVENT_SHORT_PRESS )
{
HMI_Clear_KEY_UP();
}
/*上长*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_UP == KEY_EVENT_LONG_PRESS )
{
HMI_Clear_KEY_UP();
}
/*下短*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_DOWN == KEY_EVENT_SHORT_PRESS )
{
HMI_Clear_KEY_DOWN();
}
/*下长*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_DOWN == KEY_EVENT_LONG_PRESS )
{
HMI_Clear_KEY_DOWN();
}
/*确认短*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_CONFIRM == KEY_EVENT_SHORT_PRESS )
{
HMI_Clear_KEY_CONFIRM();
}
/*确认长*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_CONFIRM == KEY_EVENT_LONG_PRESS )
{
HMI_Clear_KEY_CONFIRM();
}
/*确认超长 30 S*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_CONFIRM == KEY_EVENT_SUPER_LONG_PRESS )
{
HMI_Clear_KEY_CONFIRM();
/*TYW总计清零*/
TYW_Data_ODO_Clear();
}
/*返回短*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_CANCEL == KEY_EVENT_SHORT_PRESS )
{
HMI_Clear_KEY_CANCEL();
}
/*返回长*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_CANCEL == KEY_EVENT_LONG_PRESS )
{
HMI_Clear_KEY_CANCEL();
}
/*MENU短*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_MENU == KEY_EVENT_SHORT_PRESS )
{
HMI_Clear_KEY_MENU();
}
/*MENU长*/
else if ( UE_CtrlInfo.HMI_KEYInfo.u8KEY_MENU == KEY_EVENT_LONG_PRESS )
{
HMI_Clear_KEY_MENU();
}
else
{
;/*do nothing*/
}
}
void Display_AlarmService(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