Commit 07a57802 authored by hu's avatar hu

调整有报警状态下key不响应

parent 1bac208a
......@@ -7,6 +7,7 @@
#include "Sound_Scheduler.h"
#include "System_Monitor.h"
#include "RTE_ADC.h"
#include "Popup_Scheduler.h"
#include "CAN_Communication_Matrix.h"
#include "GUI.h"
......@@ -47,7 +48,9 @@ void Key_Operation_Up(Key_Event_en_t enKeyEvent)
{
uint8_t CanStatus1 = 0u;
uint16_t DispVSpeed = 0u;
KeyTest.Up ++ ;
uint16_t popupID = 0U;
popupID = Popup_Get_Current_Message( );
HMI_Set_KEY_UP(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
......@@ -55,7 +58,7 @@ void Key_Operation_Up(Key_Event_en_t enKeyEvent)
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
if ((enKeyEvent == KEY_EVENT_SHORT_PRESS) && (popupID == 0xffffu ))
{
/*主界面 一级菜单 二级菜单那*/
if (((bCurMenuIDX >= _MN_DSP_LEVEL1MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL2_6_MENU_2)) ||
......@@ -308,13 +311,15 @@ void Key_Operation_Up(Key_Event_en_t enKeyEvent)
void Key_Operation_Down(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Down ++ ;
uint16_t popupID = 0U;
popupID = Popup_Get_Current_Message( );
HMI_Set_KEY_DOWN(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
if ((enKeyEvent == KEY_EVENT_SHORT_PRESS) && (popupID == 0xffffu ))
{
/*主界面 一级菜单 二级菜单*/
if (((bCurMenuIDX >= _MN_DSP_LEVEL1MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL2_6_MENU_2)) ||
......@@ -558,14 +563,16 @@ void Key_Operation_Down(Key_Event_en_t enKeyEvent)
void Key_Operation_Enter(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Enter ++ ;
uint16_t popupID = 0U;
popupID = Popup_Get_Current_Message( );
HMI_Set_KEY_CONFIRM(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
if ((enKeyEvent == KEY_EVENT_SHORT_PRESS) && (popupID == 0xffffu ))
{
if (((bCurMenuIDX >= _MN_DSP_LEVEL2MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL2_6_MENU_2)) ||
((bCurMenuIDX >= _MN_DSP_LEVEL3_4_MENU_41) && (bCurMenuIDX <= _MN_DSP_LEVEL3_4_MENU_47)))
......@@ -620,13 +627,15 @@ void Key_Operation_Enter(Key_Event_en_t enKeyEvent)
void Key_Operation_Return(Key_Event_en_t enKeyEvent)
{
uint16_t DispVSpeed = 0u;
KeyTest.Return ++ ;
uint16_t popupID = 0U;
popupID = Popup_Get_Current_Message( );
HMI_Set_KEY_CANCEL(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
if ((enKeyEvent == KEY_EVENT_SHORT_PRESS) && (popupID == 0xffffu ))
{
if ((bCurMenuIDX >= _MN_DSP_LEVEL2_1_MENU_1) && (bCurMenuIDX < _MN_DSP_ENTER_MENU))
{
......@@ -699,8 +708,9 @@ void Key_Operation_Menu(Key_Event_en_t enKeyEvent)
{
uint8_t CanStatus1 = 0u;
uint16_t DispVSpeed = 0u;
KeyTest.Menu ++ ;
uint16_t popupID = 0U;
popupID = Popup_Get_Current_Message( );
HMI_Set_KEY_MENU(enKeyEvent);
DispVSpeed = Common_Get_Disp_V_Speed();
......@@ -708,7 +718,7 @@ void Key_Operation_Menu(Key_Event_en_t enKeyEvent)
if (DispVSpeed <= DISPSPEEDNULLMAX)
{
if (enKeyEvent == KEY_EVENT_SHORT_PRESS)
if ((enKeyEvent == KEY_EVENT_SHORT_PRESS) && (popupID == 0xffffu ))
{
/*记录进入menu菜单的位置*/
if ((bCurMenuIDX >= _MN_DSP_LEVEL1MENU_1) && (bCurMenuIDX <= _MN_DSP_LEVEL1MENU_6))
......
......@@ -15,15 +15,18 @@
******************************************************************************/
enum PopupName
{
/*----第一组----*/
POPUP1_BRAKE_BLACK = 0x00u ,/*00.紧急警报-刹车*/
POPUP1_BRAKE_BRAKE ,/*01.紧急警报-紧急制动*/
POPUP1_BRAKE_SPACING_R ,/*02.车间距警报-刹车(红字)*/
POPUP1_BRAKE_SPACING_COLLISION ,/*03.车间距警报-碰撞报警*/
POPUP1_BRAKE_SPACING_Y ,/*04.车间距警报-刹车(黄字)*/
POPUT1_ASR_OPERATE ,/*05.ASR工作*/
/*----第二组----*/
POPUT2_PTO ,/*06.PTO紧急警报-刹车*/
POPUP2_PARKING_BRAKE ,/*07.忘记松手刹车*/
POPUP2_AIRMATIC_HIGHT ,/*08.遥控调整车辆高度(有车速)*/
/*----第三组----*/
POPUP3_CRUISE ,/*09.自动巡航模式*/
POPUP3_VARIABLE_SLD ,/*10.可变SLD 模式*/
POPUT4_ABNORMAL_CHARGE ,/*11.充电异常(系统检测)*/
......
......@@ -19,6 +19,11 @@
#include "Data_Voltmeter.h"
#include "Data_Fuel_User.h"
static uint8_t CRUISE_1_Time = 0x00u;
static uint8_t CRUISE_STUDY_Time = 0x00u;
static uint8_t CRUISE_SLD1_Time = 0x00u;
static uint8_t CRUISE_SLD2_Time = 0x00u;
void Popups_Management_Service(void)
{
Popups_Polling( );
......@@ -167,6 +172,68 @@ void Popups_Polling(void)
Popup_Delete(POPUT1_ASR_OPERATE);
}
/*----第二组---------------------------------------------------------------------*/
/*6.PTO紧急警报-刹车*/
variable_1 = Get_ID_18FED900_Sig_PTO_SW();
variable_2 = Line_In_Get_Status(LINE_IN_PTO);//B01
if ((variable_1 == 0x01u) || (variable_2 == LINE_IN_LOGIC_VALID))
{
Popup_Request(POPUT2_PTO);
}
else
{
Popup_Delete(POPUT2_PTO);
}
/*7.忘记松手刹车 LINE_IN_Get_PARK_BRAKE 驻车制动*/
variable_1 = Line_In_Get_Status(LINE_IN_PARK_BRAKE);
if (variable_1 == LINE_IN_LOGIC_VALID) //6.67Km
{
Popup_Request(POPUP2_PARKING_BRAKE);
}
else
{
Popup_Delete(POPUP2_PARKING_BRAKE);
}
/*8.遥控调整车辆高度(有车速)*/
variable_1 = Line_In_Get_Status(LINE_IN_AIR_SUS);
if (variable_1 == LINE_IN_LOGIC_VALID) //0.5Km
{
Popup_Request(POPUP2_AIRMATIC_HIGHT);
}
else
{
Popup_Delete(POPUP2_AIRMATIC_HIGHT);
}
/*----第三组---------------------------------------------------------------------*/
/*9.自动巡航模式*/
variable_1 = Get_ID_18FF4100_Sig_Cruise_VariableSLD_Disp();
if (variable_1 == 0x01u) //5s内不显示
{
Popup_Request(POPUP3_CRUISE);
}
else
{
Popup_Delete(POPUP3_CRUISE);
}
/*10.可变SLD 模式*/
variable_1 = Get_ID_18FF4100_Sig_Cruise_VariableSLD_Disp();
if (variable_1 == 0x03u) //5s内不显示
{
Popup_Request(POPUP3_VARIABLE_SLD);
}
else
{
Popup_Delete(POPUP3_VARIABLE_SLD);
}
}
else /*ig off*/
{
......@@ -176,11 +243,11 @@ void Popups_Polling(void)
Popup_Clear(POPUP1_BRAKE_SPACING_COLLISION);/*03.车间距警报-碰撞报警*/
Popup_Clear(POPUP1_BRAKE_SPACING_Y);/*04.车间距警报-刹车(黄字)*/
Popup_Clear(POPUT1_ASR_OPERATE);/*05.ASR工作*/
/*06.PTO紧急警报-刹车*/
/*07.忘记松手刹车*/
/*08.遥控调整车辆高度(有车速)*/
/*09.自动巡航模式*/
/*10.可变SLD 模式*/
Popup_Clear(POPUT2_PTO);/*06.PTO紧急警报-刹车*/
Popup_Clear(POPUP2_PARKING_BRAKE);/*07.忘记松手刹车*/
Popup_Clear(POPUP2_AIRMATIC_HIGHT);/*08.遥控调整车辆高度(有车速)*/
Popup_Clear(POPUP3_CRUISE);/*09.自动巡航模式*/
Popup_Clear(POPUP3_VARIABLE_SLD);/*10.可变SLD 模式*/
/*11.充电异常(系统检测)*/
/*12.油压(系统检测)*/
/*13.AMT初始化异常*/
......@@ -270,63 +337,6 @@ void Popups_Polling(void)
#if 0
//6.PTO紧急警报-刹车
variable_1 = Get_ID_18FED900_Sig_PTO_SW();
variable_2 = Line_In_Get_Status(LINE_IN_PTO);//B01
if (V_Speed && (variable_1 || variable_2))
{
Popup_Request(POPUT2_PTO);
}
else
{
Popup_Delete(POPUT2_PTO);
}
//7.忘记松手刹车 LINE_IN_Get_PARK_BRAKE 驻车制动
variable_1 = Line_In_Get_Status(LINE_IN_PARK_BRAKE);//获取硬线结果
if ((V_Speed > 66) && (variable_1 == LINE_IN_LOGIC_VALID)) //6.67Km
{
Popup_Request(POPUP2_PARKING_BRAKE);
}
else
{
Popup_Delete(POPUP2_PARKING_BRAKE);
}
//8.遥控调整车辆高度(有车速)
variable_1 = Line_In_Get_Status(LINE_IN_AIR_SUS);//获取硬线结果
if ((V_Speed > 5) && (variable_1 == LINE_IN_LOGIC_VALID)) //0.5Km
{
Popup_Request(POPUP2_AIRMATIC_HIGHT);
}
else
{
Popup_Delete(POPUP2_AIRMATIC_HIGHT);
}
//9.自动巡航模式
variable_1 = Get_ID_18FF4100_Sig_Cruise_VariableSLD_Disp();
if ((Ign_Time > 5000) && (variable_1 == 1)) //5s内不显示
{
Popup_Request(POPUP3_CRUISE);
}
else
{
Popup_Delete(POPUP3_CRUISE);
}
//10.可变SLD 模式
variable_1 = Get_ID_18FF4100_Sig_Cruise_VariableSLD_Disp();
if ((Ign_Time > 5000) && (variable_1 == 3)) //5s内不显示
{
Popup_Request(POPUP3_VARIABLE_SLD);
}
else
{
Popup_Delete(POPUP3_VARIABLE_SLD);
}
//11.充电异常(系统检测)
variable_1 = Line_In_Get_Status(LINE_IN_CHARGE);
if (EOL == 0X00)
......
......@@ -156,17 +156,19 @@ typedef struct
*************************************************************************************************************/
static const GUIGeneralPopupStruct GUIGeneralPopupTable[] =
{
/*----图标--------有车速--------------------------------无车速--------------*/ /* 第一组*/
/*----图标-----------------有车速--------------------------------无车速--------------*/
/*----第一组----*/
{SpriteSize , CN_Alarm_01_wenzi1 , SpriteSize, CN_Alarm_01_wenzi1 , SpriteSize}, /*00.紧急警报-刹车*/
{SpriteSize , CN_Alarm_01_wenzi4 , SpriteSize, CN_Alarm_01_wenzi4 , SpriteSize}, /*01.紧急警报-紧急制动*/
{SpriteSize , CN_Alarm_01_wenzi2 , SpriteSize, CN_Alarm_01_wenzi2 , SpriteSize}, /*02.车间距警报-刹车(红字)*/
{SpriteSize , CN_Alarm_01_wenzi5 , SpriteSize, CN_Alarm_01_wenzi5 , SpriteSize}, /*03.车间距警报-碰撞报警*/
{SpriteSize , CN_Alarm_01_wenzi3 , SpriteSize, CN_Alarm_01_wenzi3 , SpriteSize}, /*04.车间距警报-刹车(黄字)*/
{CN_Alarm_drive_04_image, CN_Alarm_drive_04_wenzi, SpriteSize, CN_Alarm_drive_04_wenzi, SpriteSize}, /*05.ASR工作*/
/*----第二组----*/
{CN_Alarm_drive_05_image, CN_Alarm_drive_05_wenzi, SpriteSize, SpriteSize , SpriteSize}, /*06.PTO紧急警报-刹车*/
{CN_Alarm_drive_06_image, CN_Alarm_drive_06_wenzi, SpriteSize, SpriteSize , SpriteSize}, /*07.忘记松手刹车*/
{CN_Alarm_drive_10_image, CN_Alarm_drive_10_wenzi, SpriteSize, SpriteSize , SpriteSize}, /*08.遥控调整车辆高度(有车速)*/
/*----第三组----*/
{0, 0, 0, 0, 0}, /*09.自动巡航模式*/
{0, 0, 0, 0, 0}, /*10.可变SLD 模式*/
{0, 0, 0, 0, 0}, /*11.充电异常(系统检测)*/
......
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