#include "GUI.h" #include "r_typedefs.h" #include "loc_graphics.h" #include "images.h" #include "jcua.h" #include "Watchdog.h" #include "Menu.h" #include "GUI_Interface.h" #include "CAN_Communication_Matrix.h" #include "Services_Mileage.h" #include "RTE_ADC.h" #include "GaugesInterface.h" #include "Service_TPMS.h" #include "DisplaySch_user.h" #include "CD4051.h" #include "Data_Gear.h" #include "Maintenance.h" #include "Data_FuelConsump.h" #include "Common_Interface.h" #include "System_Monitor.h" #include "Flash_synchronizer.h" #include "Popups.h" #include "Data_Fuel_User.h" volatile _Display_State_Flag State_Flag; /*------------------------------------------------------------------------- * Function Name : GUI_Display_KL15_ON_Init * Description : * Input : None * Output : None * Return : None * onther : None --------------------------------------------------------------------------*/ void GUI_Display_KL15_ON_Init(void) { loc_enable_mem(WET_Sprite, Calendar_Sprite); GUI_Display_Value_Init(); GUI_Display_background(); } /*------------------------------------------------------------------------- * Function Name : GUI_Display_KL15_OFF_Init * Description : * Input : None * Output : None * Return : None * onther : None --------------------------------------------------------------------------*/ void GUI_Display_KL15_OFF_Init(void) { loc_Del_Sprite(WET_Sprite, Calendar_Sprite); loc_free_mem(WET_Sprite, Calendar_Sprite); } /*------------------------------------------------------------------------- * Function Name : GUI_Display_background * Description : 显示底图 * Input : None * Output : None * Return : None * onther : None --------------------------------------------------------------------------*/ void GUI_Display_background(void) { GUI_General_Display(WET_Sprite, ditu_2, GUI_BLENDMODE_CUSTOM); } void GUI_Display_Value_Init(void) { State_Flag.FState_GZM = 1u; State_Flag.FState_WXTZ = 2u; State_Flag.FState_WXSD = 2u; State_Flag.FState_YHSD = 2u; State_Flag.FState_TPMS = 2u; State_Flag.FState_ECO = 1u; State_Flag.FState_SYSYS = 1u; State_Flag.WXTZ_FDJY = 2u; State_Flag.WXTZ_RYLQY = 2u; State_Flag.WXTZ_BSXY = 2u; State_Flag.WXTZ_CSQY = 2u; State_Flag.WXTZ_LHQY = 1u; State_Flag.WXTZ_KQGZJ = 2u; State_Flag.WXTZ_DLZXY = 2u; State_Flag.WXTZ_LT = 2u; State_Flag.WXTZ_QDJ = 2u; State_Flag.WXSD_FDJY = 2u; State_Flag.WXSD_RYLQY = 2u; State_Flag.WXSD_BSXY = 2u; State_Flag.WXSD_CSQY = 2u; State_Flag.WXSD_LHQY = 1u; State_Flag.WXSD_KQGZJ = 2u; State_Flag.WXSD_DLZXY = 2u; State_Flag.WXSD_LT = 2u; State_Flag.WXSD_QDJ = 2u; State_Flag.USER_DATE = 2u; State_Flag.USER_TIME = 2u; State_Flag.USER_DISPLAY = 2u; State_Flag.USER_PROPOSAL = 2u; State_Flag.USER_HSA = 1u; State_Flag.USER_VOLUEM = 1u; State_Flag.USER_LANGUAGE = 2u; State_Flag.USER_COMPANY = 2u; State_Flag.USER_LIGHT = 2u; State_Flag.USER_SETIC = 2u; State_Flag.FState_TPMSSET = 2u; State_Flag.DEMO_LDWS = 2u; State_Flag.DEMO_AEBS1 = 2u; State_Flag.DEMO_AEBS2 = 2u; State_Flag.DEMO_AEBS3 = 2u; } /*------------------------------------------------------------------------- * Function Name : GUI_Display_OftenShow_Group * Description : 常显界面 * Input : None * Output : None * Return : None * onther : 常显功能界面均放在此处 此处显示区域 1 2 3 8 --------------------------------------------------------------------------*/ void GUI_OftenShow_Display(void) { GUI_AC_Temp_Dispaly(GUI_DISP_MODE_NORMAL); GUI_Time_Dispaly(GUI_DISP_MODE_NORMAL); GUI_Data_Dispaly(GUI_DISP_MODE_NORMAL); GUI_TFTTelltales_Display(GUI_DISP_MODE_NORMAL); GUI_WetGas_Dispaly(GUI_DISP_MODE_NORMAL); GUI_AdBlue_Dispaly(GUI_DISP_MODE_NORMAL); Gui_ODO_Display(GUI_DISP_MODE_NORMAL); if (1) { Gui_TRIPA_Display(GUI_DISP_MODE_NORMAL); } else { Gui_TRIPB_Display(GUI_DISP_MODE_NORMAL); } } /*------------------------------------------------------------------------- * Function Name : GUI_Dynamic_DIsplay * Description : 常显界面 * Input : None * Output : None * Return : None * onther : --------------------------------------------------------------------------*/ void GUI_Dynamic_DIsplay(void) { Gui_ADAS_Display(GUI_DISP_MODE_NORMAL); Gui_DrivingSupport_Display(GUI_DISP_MODE_NORMAL); Gui_Gear_Display(GUI_DISP_MODE_NORMAL); } /*------------------------------------------------------------------------- * Function Name : GUI_AC_Temp_Dispaly * Description : 室外温度显示 * Input : None * Output : None * Return : None * onther : 区域 8 Temp_Sprite --------------------------------------------------------------------------*/ void GUI_AC_Temp_Dispaly(uint8_t Mode) { uint8_t AC_TEMP_value = 0u; AC_TEMP_value = 17u; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_General_Display(Temp_Sprite, CN_xiaotianqi, GUI_BLENDMODE_SRC_OVER); /*天气图标*/ GUI_General_Display(Temp_Sprite, CN_shiwaiwendu, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ 室外温度 ”*/ if (1u) { GUI_Translate_Display(Temp_Sprite, Nb_12_heng, 207u, 58u, GUI_BLENDMODE_SRC_OVER); /*显示 负号*/ } else { GUI_Translate_Display(Temp_Sprite, SpriteSize, 207u, 58u, GUI_BLENDMODE_SRC_OVER); } /*显示 外温 的数值*/ GUI_General_Digit_Display(Temp_Sprite, AC_TEMP_value, Nb_12_0, 2u, 1u, GUI_DISP_AC_TEMP, 48u, GUI_BLENDMODE_SRC_OVER); GUI_General_Display(Temp_Sprite, CN_wendudanwei, GUI_BLENDMODE_SRC_OVER); /*显示 温度单位*/ } else { GUI_General_Display(Temp_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*------------------------------------------------------------------------- * Function Name : GUI_Time_Dispaly * Description : 时间显示 * Input : None * Output : None * Return : None * onther : 区域 8 Time_Sprite --------------------------------------------------------------------------*/ void GUI_Time_Dispaly(uint8_t Mode) { uint8_t Time_Hours = 0u; uint8_t Time_Minutes = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { /*时*/ Time_Hours = Get_RTC_HOUR(); if (0u) /*12小时*/ { if (Time_Hours == 0) { GUI_General_Digit_Display(Time_Sprite, (Time_Hours + 12u), Nb_21_0, 2u, 1u, GUI_DISP_Hours, 37, GUI_BLENDMODE_SRC_OVER); } else if (Time_Hours > 12u) { GUI_General_Digit_Display(Time_Sprite, (Time_Hours - 12u), Nb_21_0, 2u, 1u, GUI_DISP_Hours, 37, GUI_BLENDMODE_SRC_OVER); // PM } else { GUI_General_Digit_Display(Time_Sprite, Time_Hours, Nb_21_0, 2u, 1u, GUI_DISP_Hours, 37, GUI_BLENDMODE_SRC_OVER); // AM } } else { GUI_General_Digit_Display(Time_Sprite, Time_Hours, Nb_21_0, 2u, 1u, GUI_DISP_Hours, 37, GUI_BLENDMODE_SRC_OVER); /*显示小时*/ } /*分钟*/ Time_Minutes = Get_RTC_MINUTE(); GUI_General_Digit_Display(Time_Sprite, Time_Minutes, Nb_21_0, 2u, 0u, GUI_DISP_Minutes, 37, GUI_BLENDMODE_SRC_OVER); /*显示分钟*/ if (FLASH_SYNC_1Hz) { GUI_Translate_Display(Time_Sprite, Nb_21_maohao, 396u, 45u, GUI_BLENDMODE_SRC_OVER); /*显示冒号*/ } else { GUI_General_Display(Time_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } else { GUI_General_Display(Time_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*------------------------------------------------------------------------- * Function Name : GUI_Data_Dispaly * Description : 日历显示 * Input : None * Output : None * Return : None * onther : 区域 8 Calendar_Sprite --------------------------------------------------------------------------*/ void GUI_Data_Dispaly(uint8_t Mode) { uint16_t Year = 0u; /*年*/ uint8_t Month = 0u; /*月*/ uint8_t Date = 0u; /*日*/ uint8_t Week = 0u; /*星期*/ if (Mode == GUI_DISP_MODE_NORMAL) { Year = 2000 + Get_RTC_YEAR(); Month = Get_RTC_MONTH(); Date = Get_RTC_DATE(); Week = Get_RTC_WEEK(); GUI_Translate_Display(Calendar_Sprite, Nb_14_dian, 591u, 64u, GUI_BLENDMODE_SRC_OVER); /*显示年份后面的 “ . ” */ GUI_Translate_Display(Calendar_Sprite, Nb_14_dian, 642u, 64u, GUI_BLENDMODE_SRC_OVER); /*显示月份后面的 “ . ” */ GUI_General_Digit_Display(Calendar_Sprite, Year, Nb_14_0, 4u, 0u, GUI_DISP_Year, 48, GUI_BLENDMODE_SRC_OVER); /*显示年*/ GUI_General_Digit_Display(Calendar_Sprite, Month, Nb_14_0, 2u, 0u, GUI_DISP_Month, 48, GUI_BLENDMODE_SRC_OVER); /*显示月*/ GUI_General_Digit_Display(Calendar_Sprite, Date, Nb_14_0, 2u, 0u, GUI_DISP_Date, 48, GUI_BLENDMODE_SRC_OVER); /*显示日*/ GUI_General_Display(Calendar_Sprite, GUIWedk[Week - 1u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(Calendar_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*------------------------------------------------------------------------- * Function Name : GUI_TFTTelltales_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_TFTTelltales_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { if (1) { GUI_General_Display(WarningLight_Sprite, CN_Alarm_01, GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(WarningLight_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } else { GUI_General_Display(WarningLight_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*------------------------------------------------------------------------- * Function Name : GUI_WetGas_Dispaly * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ uint32_t HYQ_TEST = 3; void GUI_WetGas_Dispaly(uint8_t Mode) { uint8_t current_value = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { current_value = HYQ_TEST; GUI_General_Display(WET_Sprite, CN_qiyafuhaodeng, GUI_BLENDMODE_SRC_OVER); /*气压符号灯。*/ if (current_value <= 17u) { GUI_General_Display(WET_Sprite, CN_qiya, GUI_BLENDMODE_SRC_OVER); /*刷长条的气压表框。*/ } else { GUI_General_Display(WET_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } switch (current_value) { case 0x11u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x10), 405u, GUI_BLENDMODE_SRC_OVER); case 0x10u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x0F), 405u, GUI_BLENDMODE_SRC_OVER); case 0x0Fu: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x0E), 405u, GUI_BLENDMODE_SRC_OVER); case 0x0Eu: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x0D), 405u, GUI_BLENDMODE_SRC_OVER); case 0x0Du: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x0C), 405u, GUI_BLENDMODE_SRC_OVER); case 0x0Cu: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x0B), 405u, GUI_BLENDMODE_SRC_OVER); case 0x0Bu: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x0A), 405u, GUI_BLENDMODE_SRC_OVER); case 0x0Au: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x09), 405u, GUI_BLENDMODE_SRC_OVER); case 0x09u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x08), 405u, GUI_BLENDMODE_SRC_OVER); case 0x08u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x07), 405u, GUI_BLENDMODE_SRC_OVER); case 0x07u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x06), 405u, GUI_BLENDMODE_SRC_OVER); case 0x06u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x05), 405u, GUI_BLENDMODE_SRC_OVER); case 0x05u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x04), 405u, GUI_BLENDMODE_SRC_OVER); case 0x04u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x03), 405u, GUI_BLENDMODE_SRC_OVER); case 0x03u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x02), 405u, GUI_BLENDMODE_SRC_OVER); case 0x02u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x01), 405u, GUI_BLENDMODE_SRC_OVER); case 0x01u: GUI_Translate_Display(WET_Sprite, CN_qiyazouge_01, (145u + 8u * 0x00), 405u, GUI_BLENDMODE_SRC_OVER); break; default: GUI_General_Display(WET_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); break; } } else { GUI_General_Display(WET_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_AdBlue_Dispaly * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_AdBlue_Dispaly(uint8_t Mode) { uint8_t current_value = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { current_value = HYQ_TEST; GUI_General_Display(AdBlue_Sprite, CN_tianlanyefuhaodeng, GUI_BLENDMODE_SRC_OVER); /*AdBlue*/ GUI_General_Display(AdBlue_Sprite, CN_tianlanye, GUI_BLENDMODE_SRC_OVER); /*框*/ switch (current_value) { case 0x05u: GUI_Translate_Display(AdBlue_Sprite, CN_tianlanyezouge_01, (152u + 31u * 0x04u), 450u, GUI_BLENDMODE_SRC_OVER); case 0x04u: GUI_Translate_Display(AdBlue_Sprite, CN_tianlanyezouge_01, (152u + 31u * 0x03u), 450u, GUI_BLENDMODE_SRC_OVER); case 0x03u: GUI_Translate_Display(AdBlue_Sprite, CN_tianlanyezouge_01, (152u + 31u * 0x02u), 450u, GUI_BLENDMODE_SRC_OVER); case 0x02u: GUI_Translate_Display(AdBlue_Sprite, CN_tianlanyezouge_01, (152u + 31u * 0x01u), 450u, GUI_BLENDMODE_SRC_OVER); case 0x01u: GUI_Translate_Display(AdBlue_Sprite, CN_tianlanyezouge_01, (152u + 31u * 0x00u), 450u, GUI_BLENDMODE_SRC_OVER); break; default: GUI_General_Display(AdBlue_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); break; } } else { GUI_General_Display(AdBlue_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : Gui_TRIPA_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void Gui_TRIPA_Display(uint8_t Mode) { uint16_t TRIPA_value = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { TRIPA_value = Data_Read_Trip(EM_TRIP_A); /*此处TRIPA_value的值应为仪表显示的值的10倍。*/ GUI_General_Display(TRIP_Sprite, CN_TRIP, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ TRIP ”*/ GUI_General_Display(TRIP_Sprite, CN_TRIP_A, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ A ”*/ GUI_Translate_Display(TRIP_Sprite, Nb_19_dian, 668u, 410u, GUI_BLENDMODE_SRC_OVER); /*显示 小数点*/ /*显示 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 ”*/ } else { GUI_General_Display(TRIP_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } void Gui_TRIPB_Display(uint8_t Mode) { uint16_t TRIPB_value = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { TRIPB_value = Data_Read_Trip(EM_TRIP_B); /*此处TRIPA_value的值应为仪表显示的值的10倍。*/ GUI_General_Display(TRIP_Sprite, CN_TRIP, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ TRIP ”*/ GUI_General_Display(TRIP_Sprite, CN_TRIP_B, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ B ”*/ GUI_Translate_Display(TRIP_Sprite, Nb_19_dian, 668u, 410u, GUI_BLENDMODE_SRC_OVER); /*显示 小数点*/ /*显示 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 ”*/ } else { GUI_General_Display(TRIP_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : Gui_ODO_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void Gui_ODO_Display(uint8_t Mode) { uint32_t ODO_value = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { ODO_value = (Data_ODO_Read() / 10); /*此处需将ODO函数返回值赋给变量,ODO函数在其他文件中实现。*/ GUI_General_Display(ODO_Sprite, CN_ODO, GUI_BLENDMODE_SRC_OVER); /*显示文/*字 “ ODO ”*/ GUI_General_Display(ODO_Sprite, CN_ODO_danwei, GUI_BLENDMODE_SRC_OVER); /*显示文字 “ km ”*/ GUI_General_Digit_Display(ODO_Sprite, ODO_value, Nb_19_0, 7u, 6u, GUI_DISP_ODO, 425, GUI_BLENDMODE_SRC_OVER); /*显示ODO的数值*/ } else { GUI_General_Display(ODO_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : Gui_ADAS_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void Gui_ADAS_Display(uint8_t Mode) { uint8_t ADAS_Value = 0u; uint8_t CanStatus1 = 0u; uint8_t CanStatus2 = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { if (K_Line_Set.K_Line_LID28 == 0x01) { CanStatus1 = CAN_MSG_Status(ID_CanMsg0CF02FA0_Msg_Count); CanStatus2 = CAN_MSG_Status(ID_CanMsg0CF02F2A_Msg_Count); if ((CanStatus1 == CAN_SIG_LOST) && (CanStatus2 == CAN_SIG_LOST)) { GUI_General_Display(ADAS_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } else { /*刷文字“ADAS”:*/ GUI_General_Display(ADAS_Sprite, CN_ADAS_wenzi, GUI_BLENDMODE_SRC_OVER); /*刷4个绿色的边框框角:*/ GUI_General_Display(ADAS_Sprite, CN_jiao1, GUI_BLENDMODE_SRC_OVER); GUI_General_Display(ADAS_Sprite, CN_jiao2, GUI_BLENDMODE_SRC_OVER); GUI_General_Display(ADAS_Sprite, CN_jiao3, GUI_BLENDMODE_SRC_OVER); GUI_General_Display(ADAS_Sprite, CN_jiao4, GUI_BLENDMODE_SRC_OVER); if (1) { if (FLASH_SYNC_1Hz) { /*车*/ 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); } else { GUI_General_Display(ADAS_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } else if (0) { /*车*/ GUI_General_Display(ADAS_Sprite, CN_che, GUI_BLENDMODE_SRC_OVER); /*道*/ 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); 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); break; default: break; } } else { } } } else { GUI_General_Display(ADAS_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } /*左车道线*/ if (FLASH_SYNC_1Hz == 0) { GUI_General_Display(ADAS_Sprite, CN_LeftRoad, GUI_BLENDMODE_SRC_OVER); /*绿*/ } else { GUI_General_Display(ADAS_Sprite, CN_LeftRoad_shanshuo, GUI_BLENDMODE_SRC_OVER); /*虚*/ } /*右车道线*/ if (FLASH_SYNC_1Hz == 0) { GUI_General_Display(ADAS_Sprite, CN_RightRoad, GUI_BLENDMODE_SRC_OVER); /*绿*/ } else { GUI_General_Display(ADAS_Sprite, CN_RightRoad_shanshuo, GUI_BLENDMODE_SRC_OVER); /*虚*/ } /*左叹号*/ if (FLASH_SYNC_1Hz) { GUI_Translate_Display(ADAS_Sprite, CN_tanhao1, 125u, 257u, GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(ADAS_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } /*右叹号*/ if (FLASH_SYNC_1Hz) { GUI_Translate_Display(ADAS_Sprite, CN_tanhao1, 339u, 257u, GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(ADAS_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } else { GUI_General_Display(ADAS_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : Gui_DrivingSupport_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void Gui_DrivingSupport_Display(uint8_t Mode) { uint8_t Veh_Seep_Value = 0u; if (Mode == GUI_DISP_MODE_NORMAL) { /*定速巡航图标*/ GUI_General_Display(Cruise_Sprite, CN_dingsuxunhang, GUI_BLENDMODE_SRC_OVER); GUI_General_Display(Cruise_Sprite, CN_dingsuxunhang_SET, GUI_BLENDMODE_SRC_OVER); //显示km/h,显示设定车速: GUI_General_Digit_Display(Cruise_Sprite, Veh_Seep_Value, Nb_21_0, 3u, 2u, GUI_DISP_DrivingSupport, 104u, GUI_BLENDMODE_SRC_OVER); /*显示 定速巡航设定车速 的数值*/ GUI_General_Display(Cruise_Sprite, CN_dingsuxunhangdanwei, GUI_BLENDMODE_SRC_OVER); //显示文字 “ km/h ” } else { GUI_General_Display(Cruise_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : Gui_Gear_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void Gui_Gear_Display(uint8_t Mode) { uint8_t Gear_Value = 0u; uint8_t Manouvering_Mode = 0u; 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) { /*G1 自动挡 EOL设定为ZF变速器*/ if (K_Line_Set.K_Line_LID41 == 0x13u) { Manouvering_Mode = Get_ID_18FF8503_Sig_Manouvering_mode(); Transmission_Sift_Mode = Get_ID_18FE4A03_Sig_TransmissionSiftMode1_Indicator(); Current_Gear = Get_ID_18F00503_Sig_Current_Gear(); Temp = Current_Gear - 0x7Eu; if ((Current_Gear >= 0x7Eu) && (Current_Gear <= 0x89u)) { if ((Current_Gear == 0x7Eu) && (Manouvering_Mode == 0x01u)) { GUI_General_Display(Gear_Sprite, CN_dangwei_DM, GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(Gear_Sprite, GUIGear[Temp], GUI_BLENDMODE_SRC_OVER); /*1-12*/ } } else if (Current_Gear == 0x7Bu) { GUI_General_Display(Gear_Sprite, CN_dangwei_R2, GUI_BLENDMODE_SRC_OVER); /*R2*/ } else if (Current_Gear == 0x7Cu) { if (Manouvering_Mode == 0x01u) { GUI_General_Display(Gear_Sprite, CN_dangwei_RM, GUI_BLENDMODE_SRC_OVER); /*RM*/ } else { GUI_General_Display(Gear_Sprite, CN_dangwei_R1, GUI_BLENDMODE_SRC_OVER); /*R1*/ } } else if (Current_Gear == 0x7Du) { if (Transmission_Sift_Mode == 0x01u) { if (FLASH_SYNC_1Hz) { GUI_General_Display(Gear_Sprite, CN_dangwei_E, GUI_BLENDMODE_SRC_OVER); /*E*/ } else { GUI_General_Display(Gear_Sprite, CN_dangwei_NE, GUI_BLENDMODE_SRC_OVER); /*NE*/ } } else { GUI_General_Display(Gear_Sprite, CN_dangwei_N, GUI_BLENDMODE_SRC_OVER); /*N*/ } } else { GUI_General_Display(Gear_Sprite, CN_dangwei_buming, GUI_BLENDMODE_SRC_OVER); /*-*/ } } else { 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 { GUI_General_Display(Gear_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * 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) { uint8_t Time_Hours = 0u; uint8_t Time_Minutes = 0u; uint8_t Month = 0u; /*月*/ uint8_t Date = 0u; /*日*/ uint8_t Week = 0u; /*星期*/ uint16_t Year = 0u; /*年*/ if (Mode == GUI_DISP_MODE_NORMAL) { Year = 2000 + Get_RTC_YEAR(); Month = Get_RTC_MONTH(); Date = Get_RTC_DATE(); /*年月日*/ if (1u) { GUI_General_Display(MultiPurpose_Sprite, CN_nian, GUI_BLENDMODE_SRC_OVER); /*年*/ GUI_General_Display(MultiPurpose_Sprite, CN_yue, GUI_BLENDMODE_SRC_OVER); /*月*/ GUI_General_Display(MultiPurpose_Sprite, CN_ri, GUI_BLENDMODE_SRC_OVER); /*日*/ GUI_General_Digit_Display(MultiPurpose_Sprite, Year, Nb_17_0, 4u, 0u, GUI_DISP_MENUYear, 243u, GUI_BLENDMODE_SRC_OVER); GUI_General_Digit_Display(MultiPurpose_Sprite, Month, Nb_17_0, 2u, 1u, GUI_DISP_MENUMonth, 243u, GUI_BLENDMODE_SRC_OVER); GUI_General_Digit_Display(MultiPurpose_Sprite, Date, Nb_17_0, 2u, 1u, GUI_DISP_MENUDate, 243u, GUI_BLENDMODE_SRC_OVER); } /*月日年*/ else if (0) { GUI_General_Display(MultiPurpose_Sprite, CN_nian, GUI_BLENDMODE_SRC_OVER); /*年*/ GUI_General_Display(MultiPurpose_Sprite, CN_yue, GUI_BLENDMODE_SRC_OVER); /*月*/ GUI_General_Display(MultiPurpose_Sprite, CN_ri, GUI_BLENDMODE_SRC_OVER); /*日*/ GUI_General_Digit_Display(MultiPurpose_Sprite, Year, Nb_17_0, 4u, 1u, GUI_DISP_MENUYear1, 243u, GUI_BLENDMODE_SRC_OVER); GUI_General_Digit_Display(MultiPurpose_Sprite, Month, Nb_17_0, 2u, 1u, GUI_DISP_MENUMonth1, 243u, GUI_BLENDMODE_SRC_OVER); GUI_General_Digit_Display(MultiPurpose_Sprite, Date, Nb_17_0, 2u, 1u, GUI_DISP_MENUDate1, 243u, GUI_BLENDMODE_SRC_OVER); } /*日月年*/ else { GUI_General_Display(MultiPurpose_Sprite, CN_nian, GUI_BLENDMODE_SRC_OVER); /*年*/ GUI_General_Display(MultiPurpose_Sprite, CN_yue, GUI_BLENDMODE_SRC_OVER); /*月*/ GUI_General_Display(MultiPurpose_Sprite, CN_ri, GUI_BLENDMODE_SRC_OVER); /*日*/ GUI_General_Digit_Display(MultiPurpose_Sprite, Year, Nb_17_0, 4u, 1u, GUI_DISP_MENUYear1, 243u, GUI_BLENDMODE_SRC_OVER); GUI_General_Digit_Display(MultiPurpose_Sprite, Month, Nb_17_0, 2u, 1u, GUI_DISP_MENUDate1, 243u, GUI_BLENDMODE_SRC_OVER); GUI_General_Digit_Display(MultiPurpose_Sprite, Date, Nb_17_0, 2u, 1u, GUI_DISP_MENUMonth1, 243u, GUI_BLENDMODE_SRC_OVER); } /*星期 */ Week = Get_RTC_WEEK(); GUI_General_Display(MultiPurpose_Sprite, CN_kuohao, GUI_BLENDMODE_SRC_OVER); /*括号*/ GUI_General_Display(MultiPurpose_Sprite, GUIMenuWedk[Week - 1u], GUI_BLENDMODE_CUSTOM); Time_Hours = Get_RTC_HOUR(); /*时间*/ if (0u) { if (Time_Hours < 12) { GUI_General_Display(MultiPurpose_Sprite, CN_AM, GUI_BLENDMODE_SRC_OVER); /*AM*/ } else { GUI_General_Display(MultiPurpose_Sprite, CN_PM, GUI_BLENDMODE_SRC_OVER); /*PM*/ } if (Time_Hours == 0) { GUI_General_Digit_Display(MultiPurpose_Sprite, (Time_Hours + 12u), Nb_17_0, 2u, 1u, GUI_DISP_MENUHours, 279u, GUI_BLENDMODE_SRC_OVER); } else if (Time_Hours > 12) { GUI_General_Digit_Display(MultiPurpose_Sprite, (Time_Hours - 12u), Nb_17_0, 2u, 1u, GUI_DISP_MENUHours, 279u, GUI_BLENDMODE_SRC_OVER); /*PM*/ } else { GUI_General_Digit_Display(MultiPurpose_Sprite, Time_Hours, Nb_17_0, 2u, 1u, GUI_DISP_MENUHours, 279u, GUI_BLENDMODE_SRC_OVER); /*AM*/ } } else { GUI_General_Digit_Display(MultiPurpose_Sprite, Time_Hours, Nb_17_0, 2u, 1u, GUI_DISP_MENUHours, 279u, GUI_BLENDMODE_SRC_OVER); } Time_Minutes = Get_RTC_MINUTE(); GUI_General_Digit_Display(MultiPurpose_Sprite, Time_Minutes, Nb_17_0, 2u, 0u, GUI_DISP_MENUMinutes, 279u, GUI_BLENDMODE_SRC_OVER); /*分钟*/ GUI_Translate_Display(MultiPurpose_Sprite, Nb_17_maohao, 592u, 282u, GUI_BLENDMODE_CUSTOM); /*冒号*/ } else { GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_block_NULL_Display * Description : 年月日显示 * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_block_NULL_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MultiPurpose_Sprite, Nb_12_dian, 801u, 481u, GUI_BLENDMODE_CUSTOM); } else { GUI_General_Display(MultiPurpose_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu_Display(uint8_t Mode) { uint8_t CanStatus1 = 0u; CanStatus1 = CAN_MSG_Status(ID_CanMsg0CF00400_Msg_Count); if (Mode == GUI_DISP_MODE_NORMAL) { /*显示*/ GUI_General_Display(MENU_Sprite, CN_User_Menu1_wenzi, GUI_BLENDMODE_SRC_OVER); /*menu*/ GUI_General_Display(MENU_Sprite, CN_fengexian, GUI_BLENDMODE_SRC_OVER); /*line*/ GUI_General_Display(MENU_Sprite, CN_gundongtiao, GUI_BLENDMODE_SRC_OVER); /*长度条*/ if ((bCurMenuIDX >= _MN_DSP_LEVEL2MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL2MENU_4)) { if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_1) { if (CanStatus1 == CAN_SIG_LOST) /*有故障码*/ { GUI_General_Display(MENU_Sprite, CN_User_Menu1_01white, GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, CN_User_Menu1_01grey, GUI_BLENDMODE_SRC_OVER); } } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_2) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_02black + State_Flag.FState_WXTZ), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_03black + State_Flag.FState_WXSD), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_04black + State_Flag.FState_YHSD), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else if (bCurMenuIDX == _MN_DSP_LEVEL2MENU_5) { if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_2) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_02black + State_Flag.FState_WXTZ), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_03black + State_Flag.FState_WXSD), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_04black + State_Flag.FState_YHSD), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_5) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_05black + State_Flag.FState_ECO), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else { if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_03black + State_Flag.FState_WXSD), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_04black + State_Flag.FState_YHSD), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_5) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_05black + State_Flag.FState_ECO), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2MENU_6) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_06black + State_Flag.FState_TPMS), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu1_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu1_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_01black + Flag), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu2_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu2_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_02black + Flag), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu3_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu3_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_03black + Flag), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu4_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu4_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_04black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu5_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu5_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_05black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Menu6_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Menu6_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu1_06black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Rep_Menu_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Rep_Menu_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { /*显示*/ GUI_General_Display(MENU_Sprite, CN_User_Menu2_02_wenzi, GUI_BLENDMODE_SRC_OVER); /*menu*/ GUI_General_Display(MENU_Sprite, CN_fengexian, GUI_BLENDMODE_SRC_OVER); /*line*/ GUI_General_Display(MENU_Sprite, CN_gundongtiao, GUI_BLENDMODE_SRC_OVER); /*长度条*/ if (bCurMenuIDX <= _MN_DSP_LEVEL2_2_MENU_4) { if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_1) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_1black + State_Flag.WXTZ_FDJY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_2) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_2black + State_Flag.WXTZ_RYLQY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_3black + State_Flag.WXTZ_BSXY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_4black + State_Flag.WXTZ_CSQY), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else if (bCurMenuIDX == _MN_DSP_LEVEL2_2_MENU_6) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_2black + State_Flag.WXTZ_RYLQY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_3black + State_Flag.WXTZ_BSXY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_4black + State_Flag.WXTZ_CSQY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_6) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_5black + State_Flag.WXTZ_KQGZJ), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else if (bCurMenuIDX == _MN_DSP_LEVEL2_2_MENU_7) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_3black + State_Flag.WXTZ_BSXY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_4black + State_Flag.WXTZ_CSQY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_5black + State_Flag.WXTZ_KQGZJ), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_7) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_5black + State_Flag.WXTZ_DLZXY), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else if (bCurMenuIDX == _MN_DSP_LEVEL2_2_MENU_8) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_4black + State_Flag.WXTZ_CSQY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_5black + State_Flag.WXTZ_KQGZJ), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_6black + State_Flag.WXTZ_DLZXY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_8) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_7black + State_Flag.WXTZ_LT), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_5black + State_Flag.WXTZ_KQGZJ), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_6black + State_Flag.WXTZ_DLZXY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_7black + State_Flag.WXTZ_LT), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); if (bCurMenuIDX != _MN_DSP_LEVEL2_2_MENU_9) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_8black + State_Flag.WXTZ_QDJ), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu1_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu1_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_1black + Flag), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu2_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu2_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_2black + Flag), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu3_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu3_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_3black + Flag), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu4_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu4_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_4black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu5_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu5_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu6_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu6_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_5black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu7_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu7_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_6black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu8_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu8_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_7black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepMenu9_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepMenu9_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_02_8black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSet_Menu_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSet_Menu_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { /*显示*/ GUI_General_Display(MENU_Sprite, CN_User_Menu2_03_wenzi, GUI_BLENDMODE_SRC_OVER); /*menu*/ GUI_General_Display(MENU_Sprite, CN_fengexian, GUI_BLENDMODE_SRC_OVER); /*line*/ GUI_General_Display(MENU_Sprite, CN_gundongtiao, GUI_BLENDMODE_SRC_OVER); /*长度条*/ if (bCurMenuIDX <= _MN_DSP_LEVEL2_3_MENU_4) { if (bCurMenuIDX != _MN_DSP_LEVEL2_3_MENU_1) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_01black + State_Flag.WXSD_FDJY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_3_MENU_2) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_02black + State_Flag.WXSD_RYLQY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_3_MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_03black + State_Flag.WXSD_BSXY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_3_MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_04black + State_Flag.WXSD_CSQY), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else if (bCurMenuIDX == _MN_DSP_LEVEL2_3_MENU_5) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_02black + State_Flag.WXSD_RYLQY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_03black + State_Flag.WXSD_BSXY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_04black + State_Flag.WXSD_CSQY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else if (bCurMenuIDX == _MN_DSP_LEVEL2_3_MENU_6) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_03black + State_Flag.WXSD_BSXY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_04black + State_Flag.WXSD_CSQY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_05black + State_Flag.WXSD_LHQY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else if (bCurMenuIDX == _MN_DSP_LEVEL2_3_MENU_7) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_04black + State_Flag.WXSD_CSQY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_05black + State_Flag.WXSD_LHQY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_06black + State_Flag.WXSD_KQGZJ), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else if (bCurMenuIDX == _MN_DSP_LEVEL2_3_MENU_8) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_05black + State_Flag.WXSD_LHQY), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_06black + State_Flag.WXSD_KQGZJ), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_07black + State_Flag.WXSD_DLZXY), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_06black + State_Flag.WXSD_KQGZJ), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_07black + State_Flag.WXSD_DLZXY), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_08black + State_Flag.WXSD_LT), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu1_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu1_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_01black + Flag), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu2_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu2_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_02black + Flag), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu3_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu3_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_03black + Flag), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu4_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu4_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_04black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu5_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu5_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_04black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu6_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu6_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_06black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu7_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu7_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_07black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_RepSetMenu8_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_RepSetMenu8_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_03_08black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSet_Menu_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSet_Menu_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { /*显示*/ GUI_General_Display(MENU_Sprite, CN_User_Menu2_04_wenzi, GUI_BLENDMODE_SRC_OVER); /*menu*/ GUI_General_Display(MENU_Sprite, CN_fengexian, GUI_BLENDMODE_SRC_OVER); /*line*/ GUI_General_Display(MENU_Sprite, CN_gundongtiao, GUI_BLENDMODE_SRC_OVER); /*长度条*/ if (bCurMenuIDX <= _MN_DSP_LEVEL2_4_MENU_4) { if (bCurMenuIDX != _MN_DSP_LEVEL2_4_MENU_1) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_1black + State_Flag.USER_DATE), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_4_MENU_2) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_2black + State_Flag.USER_TIME), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_4_MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_7black + State_Flag.USER_LANGUAGE), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_4_MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_4black + State_Flag.USER_PROPOSAL), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_2black + State_Flag.USER_TIME), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_7black + State_Flag.USER_LANGUAGE), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_4black + State_Flag.USER_PROPOSAL), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu1_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu1_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_1black + Flag), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu2_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu2_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_2black + Flag), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu3_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu3_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_7black + Flag), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu4_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu4_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_4black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu5_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu5_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_10black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu6_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu6_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_11black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_UserSetMenu7_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_UserSetMenu7_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_04_7black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Demo_Menu_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Demo_Menu_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { /*显示*/ GUI_General_Display(MENU_Sprite, CN_User_Menu2_05_wenzi, GUI_BLENDMODE_SRC_OVER); /*menu*/ GUI_General_Display(MENU_Sprite, CN_fengexian, GUI_BLENDMODE_SRC_OVER); /*line*/ GUI_General_Display(MENU_Sprite, CN_gundongtiao, GUI_BLENDMODE_SRC_OVER); /*长度条*/ if (bCurMenuIDX != _MN_DSP_LEVEL2_5_MENU_1) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_1black + State_Flag.DEMO_LDWS), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_5_MENU_2) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_2black + State_Flag.DEMO_AEBS1), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_5_MENU_3) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_3black + State_Flag.DEMO_AEBS2), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } if (bCurMenuIDX != _MN_DSP_LEVEL2_5_MENU_4) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_4black + State_Flag.DEMO_AEBS3), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_DemoMenu1_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_DemoMenu1_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_1black + Flag), 225u, GUI_DISP_MENU_Y[0u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_DemoMenu2_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_DemoMenu2_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_2black + Flag), 225u, GUI_DISP_MENU_Y[1u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_DemoMenu3_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_DemoMenu3_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_3black + Flag), 225u, GUI_DISP_MENU_Y[2u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_DemoMenu4_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_DemoMenu4_Display(uint8_t Mode) { uint8_t Flag = 0; if (Mode == GUI_DISP_MODE_NORMAL) { GUI_Translate_Display(MENU_Sprite, (CN_User_Menu2_05_4black + Flag), 225u, GUI_DISP_MENU_Y[3u], GUI_BLENDMODE_SRC_OVER); } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } } /*-------------------------------------------------------------------------- * Function Name : GUI_BG_Errot_Display * Description : * Input : None * Output : None * Return : None * onther : 区域 --------------------------------------------------------------------------*/ void GUI_BG_Errot_Display(uint8_t Mode) { if (Mode == GUI_DISP_MODE_NORMAL) { /*显示*/ GUI_General_Display(MENU_Sprite, CN_User_Menu2_01_wenzi, GUI_BLENDMODE_SRC_OVER); /*menu*/ GUI_General_Display(MENU_Sprite, CN_fengexian, GUI_BLENDMODE_SRC_OVER); /*line*/ GUI_General_Display(MENU_Sprite, CN_gundongtiao, GUI_BLENDMODE_SRC_OVER); /*长度条*/ } else { GUI_General_Display(MENU_Sprite, SpriteSize, GUI_BLENDMODE_SRC_OVER); } }