Commit a63556d6 authored by 时昊's avatar 时昊

🎉 init:上传按键模块

parent 21489b3d
#ifndef KEY_H__
#define KEY_H__
//#define KEY_PLATFORM_16BIT
#ifdef KEY_PLATFORM_16BIT
typedef unsigned char Key_uint8_t;
typedef unsigned int Key_uint16_t;
typedef unsigned long Key_uint32_t;
#else
typedef unsigned char Key_uint8_t;
typedef unsigned short Key_uint16_t;
typedef unsigned int Key_uint32_t;
typedef unsigned long long Key_uint64_t;
#endif
/*所有按键枚举*/
/*默认所有按键在任意电源状态下均可被触发*/
typedef enum
{
KEY_LEFT = 0U,
KEY_RIGHT,
// KEY_UP,
// KEY_DOWN,
// KEY_ENTER,
// KEY_RETURN,
// KEY_FUNCTION_1,
// KEY_FUNCTION_2,
KEY_NUM_MAX,
} Key_Num_en_t;
/*--------------------------Do not modify the following--------------------------------*/
/*--------------------------Do not modify the following--------------------------------*/
/*--------------------------Do not modify the following--------------------------------*/
#define KEY_RAM_DATA_LEN (KEY_NUM_MAX * 16U + 24U)
typedef enum
{
/*按键检测方式选择*/
/*按键不需要消抖,并且在无效状态切换到有效状态的上升沿触发按键动作。
一般用于CAN发送按键处理后状态时*/
KEY_NO_DEBOUNCE_RISE = 0U,
/*按键不需要消抖,并且在有效状态切换到无效状态的下降沿触发按键动作。
一般用于CAN发送按键处理后状态时*/
KEY_NO_DEBOUNCE_FALL,
/*按键需要消抖,短按松手触发,长按按住即可触发。
一般用于硬线按键,AD按键,CAN发送按键实时状态时*/
KEY_NEED_DEBOUNCE_NORMAL,
KEY_TYPE_MAX,
} Key_Type_en_t;
/*按键相关设置返回状态*/
typedef enum
{
KEY_SET_OK = 0U,
KEY_SET_ERROR,
KEY_SET_MAX,
} Key_Set_en_t;
/*-----传入的按键状态--------*/
typedef enum
{
/*当按键检测方式选择需要消抖时使用*/
KEY_REALTIME_LOOSEN = 0U, /*按键松开*/
KEY_REALTIME_PRESS, /*按键按下*/
/*当按键检测方式选择不需要消抖时使用*/
KEY_STATUS_IDLE,
KEY_STATUS_SHORT_PRESS_1,
KEY_STATUS_SHORT_PRESS_2,
KEY_STATUS_LONG_PRESS_1,
KEY_STATUS_LONG_PRESS_2,
KEY_STATUS_LONG_PRESS_3,
KEY_STATUS_LONG_PRESS_4,
KEY_STATUS_MAX,
} Key_Status_en_t;
/*按键支持的具体动作*/
typedef enum
{
KEY_EVENT_NONE = 0U, /***超时动作可在这个按键动作下自行计时触发**/
/*以下按键动作都是单次触发,只有松手后才能再次触发*/
KEY_EVENT_SHORT_PRESS_1,
KEY_EVENT_SHORT_PRESS_2,
KEY_EVENT_LONG_PRESS_1,
KEY_EVENT_LONG_PRESS_2,
KEY_EVENT_LONG_PRESS_3,
KEY_EVENT_LONG_PRESS_4,
/*OFF时才首先按下按键,然后不松手,之后切换到ON并持续一定时间后触发动作。*/
KEY_EVENT_OFF_TO_ON,
KEY_EVENT_ON_TO_OFF,
KEY_EVENT_MAX,
} Key_Event_en_t;
/*按键IG状态*/
typedef enum
{
KEY_IG_INVALID = 0U,/***无效的电源状态**/
KEY_IG_OFF,
KEY_IG_ON,
} Key_IGN_en_t;
typedef Key_Status_en_t (*Key_Status_Read)(void);
typedef void (*Key_Operation)(Key_Event_en_t enKeyEvent);
/*每个按键的属性*/
typedef struct
{
/*按键检测方式选择*/
Key_Type_en_t enKeyType;
/*获取按键传入状态的回调函数*/
Key_Status_Read pfnKeyReadStatusCallBack;
/*按键触发动作的回调函数*/
Key_Operation pfnKeyOperationCallBack;
} Key_Attribute_st_t;
typedef struct
{
/*当前IG状态*/
Key_IGN_en_t enKeyIGNRealStatus;
/*按键数量,也就是KEY_NUM_MAX*/
Key_uint8_t u8KeyNum;
} Key_Init_st_t;
/*--------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------*/
/*10ms调用一次*/
extern void Key_Service(void);
/*首次上电时调用.
默认短按1时间100ms~~1000ms,
默认短按2时间1100ms~~2000ms,
长按1时间2000ms,
长按2时间10000ms,
长按3时间30000ms,
长按4时间60000ms,
OFF下时间500ms,ON下时间500ms*/
extern void Key_KL30_Init(Key_uint8_t *pu8KyeRamData, const Key_Attribute_st_t *pstKeyAttribute, Key_Init_st_t *pstKeyInit);
/***确保传入的内存指针在休眠唤醒后不会丢失,那么可正常使用唤醒初始化函数。否是使用上述KL30初始化**/
extern void Key_Wakeup_Init(Key_uint8_t *pu8KyeRamData, const Key_Attribute_st_t *pstKeyAttribute, Key_Init_st_t *pstKeyInit);
/*对于消抖按键而言,判断短按的时间参数。
u16TimeMin :最小识别的时间 u16TimeMax:最大识别的时间 (不可大于短按2的最小识别时间)*/
extern Key_Set_en_t Key_Parameter_Set_Short_Press_1_Time(Key_uint16_t u16TimeMin, Key_uint16_t u16TimeMax);
/*对于消抖按键而言,判断短按2的时间参数。
u16TimeMin :最小识别的时间(不可小于短按1的最大识别时间) u16TimeMax:最大识别的时间*/
extern Key_Set_en_t Key_Parameter_Set_Short_Press_2_Time(Key_uint16_t u16TimeMin, Key_uint16_t u16TimeMax);
/*对于消抖按键而言,判断长按1的时间参数。不可大于长按2的时间*/
extern Key_Set_en_t Key_Parameter_Set_Long_Press_1_Time(Key_uint16_t u16Time);
/*对于消抖按键而言,判断长按2的时间参数。不可小于长按1的时间,不可大于长按3的时间*/
extern Key_Set_en_t Key_Parameter_Set_Long_Press_2_Time(Key_uint16_t u16Time);
/*对于消抖按键而言,判断长按3的时间参数。不可小于长按2的时间,不可大于长按4的时间*/
extern Key_Set_en_t Key_Parameter_Set_Long_Press_3_Time(Key_uint16_t u16Time);
/*对于消抖按键而言,判断长按4的时间参数。不可小于长按3的时间*/
extern Key_Set_en_t Key_Parameter_Set_Long_Press_4_Time(Key_uint16_t u16Time);
/*对于消抖按键而言,判断ON,OFF切换动作的时间参数。
u16TimeOFF :OFF识别的时间 u16TimeON :ON识别的时间 */
extern Key_Set_en_t Key_Parameter_Set_ON_OFF_Time(Key_uint16_t u16TimeOFF, Key_uint16_t u16TimeON);
/*设置电源状态给按键,单次调用或者多次调用均可*/
extern void Key_Set_IG_Status(Key_IGN_en_t enIGStatus);
#endif
\ No newline at end of file
#include "Key_user.h"
#include "gpio.h"
#include "Key.h"
#define BACK_MENU_TIME 1000
_Menu_Infor MenuInfor ;
void Key_Operation_Left(Key_Event_en_t enKeyEvent)
{
switch (enKeyEvent)
{
case KEY_EVENT_SHORT_PRESS_1:
break;
case KEY_EVENT_SHORT_PRESS_2:
break;
case KEY_EVENT_LONG_PRESS_1: //2
break;
case KEY_EVENT_LONG_PRESS_2: //3
break;
case KEY_EVENT_LONG_PRESS_3: //4s
break;
case KEY_EVENT_LONG_PRESS_4: //10s
break;
case KEY_EVENT_OFF_TO_ON:
break;
case KEY_EVENT_ON_TO_OFF:
break;
case KEY_EVENT_NONE:
KEY_LEFT_EVENT_NONE_Service();
break;
default:
break;
}
}
void Key_Operation_Right(Key_Event_en_t enKeyEvent)
{
switch (enKeyEvent)
{
case KEY_EVENT_SHORT_PRESS_1:
break;
case KEY_EVENT_SHORT_PRESS_2:
break;
case KEY_EVENT_LONG_PRESS_1: //2s
break;
case KEY_EVENT_LONG_PRESS_2: //3s
break;
case KEY_EVENT_LONG_PRESS_3: //4s
break;
case KEY_EVENT_LONG_PRESS_4: //10s
break;
case KEY_EVENT_OFF_TO_ON:
break;
case KEY_EVENT_ON_TO_OFF:
break;
case KEY_EVENT_NONE:
KEY_RIGHT_EVENT_NONE_Service();
break;
default:
break;
}
}
/*---------------------------------------------------------------------------------------*/
Key_Status_en_t Key_Status_Read_Left(void)
{
Key_Status_en_t enKeyReal = KEY_REALTIME_LOOSEN;
if (MODE_P_IN)
{
enKeyReal = KEY_REALTIME_LOOSEN;
}
else
{
enKeyReal = KEY_REALTIME_PRESS;
}
return enKeyReal;
}
Key_Status_en_t Key_Status_Read_Right(void)
{
Key_Status_en_t enKeyReal = KEY_REALTIME_LOOSEN;
if (SET_P_IN)
{
enKeyReal = KEY_REALTIME_LOOSEN;
}
else
{
enKeyReal = KEY_REALTIME_PRESS;
}
return enKeyReal;
}
/*---------------------------------------------------------------------------------------*/
const Key_Attribute_st_t stKeyAttribute[KEY_NUM_MAX] =
{
{KEY_NEED_DEBOUNCE_NORMAL, Key_Status_Read_Left, Key_Operation_Left},
{KEY_NEED_DEBOUNCE_NORMAL, Key_Status_Read_Right, Key_Operation_Right},
//{KEY_NEED_DEBOUNCE_NORMAL, Key_Status_Read_FLIP, Key_Operation_FLIP},
//{KEY_NEED_DEBOUNCE_NORMAL, Key_Status_Read_ADJUST, Key_Operation_ADJUST},
};
/*---------------------------------------------------------------------------------------*/
Key_uint8_t u8KeyRamData[KEY_RAM_DATA_LEN];
void Key_KL30_Init_EXample(void)
{
Key_Init_st_t stKeyInitTem;
Key_uint16_t i;
for (i = 0; i < KEY_RAM_DATA_LEN; i++)
{
u8KeyRamData[i] = 0;
}
stKeyInitTem.u8KeyNum = KEY_NUM_MAX;
stKeyInitTem.enKeyIGNRealStatus = KEY_IG_OFF;
// Key_KL30_Init(&u8KeyRamData[0], stKeyAttribute, &stKeyInitTem);
// Key_Parameter_Set_Short_Press_1_Time(100U,1000U);
// Key_Parameter_Set_Short_Press_2_Time(1500U,2000U);
// Key_Parameter_Set_Long_Press_1_Time(2000U);
// Key_Parameter_Set_Long_Press_2_Time(3000U);
// Key_Parameter_Set_Long_Press_3_Time(4000U);
// Key_Parameter_Set_Long_Press_4_Time(10000U);
}
void Key_Wakeup_Init_EXample(void)
{
Key_Init_st_t stKeyInitTem;
stKeyInitTem.u8KeyNum = KEY_NUM_MAX;
stKeyInitTem.enKeyIGNRealStatus = KEY_IG_OFF;
// Key_Wakeup_Init(&u8KeyRamData[0], stKeyAttribute, &stKeyInitTem);
// Key_Parameter_Set_Short_Press_1_Time(100U,1000U);
// Key_Parameter_Set_Short_Press_2_Time(1500U,2000U);
// Key_Parameter_Set_Long_Press_1_Time(2000U);
// Key_Parameter_Set_Long_Press_2_Time(3000U);
// Key_Parameter_Set_Long_Press_3_Time(4000U);
// Key_Parameter_Set_Long_Press_4_Time(10000U);
}
void KEY_LEFT_EVENT_NONE_Service(void)
{
MenuInfor.Back_Time_Left++;
if(MenuInfor.Back_Time_Left > BACK_MENU_TIME)
{
MenuInfor.Back_Time_Left = 0;
MenuInfor.Back_Time_Left_Flag = 1;
}
if((MenuInfor.Back_Time_Left_Flag == 1)&&(MenuInfor.Back_Time_Right_Flag == 1))
{
MenuInfor.Back_Time_Left_Flag = 0;
MenuInfor.Back_Time_Right_Flag = 0;
}
}
void KEY_RIGHT_EVENT_NONE_Service(void)
{
MenuInfor.Back_Time_Right++;
if(MenuInfor.Back_Time_Right > BACK_MENU_TIME)
{
MenuInfor.Back_Time_Right = 0;
MenuInfor.Back_Time_Right_Flag = 1;
}
if((MenuInfor.Back_Time_Left_Flag == 1)&&(MenuInfor.Back_Time_Right_Flag == 1))
{
MenuInfor.Back_Time_Left_Flag = 0;
MenuInfor.Back_Time_Right_Flag = 0;
}
}
void Key_Clear_Time(void)
{
if(Key_Status_Read_Left() == KEY_REALTIME_PRESS)
{
MenuInfor.Back_Time_Left = 0;
MenuInfor.Back_Time_Left_Flag = 0;
MenuInfor.Back_Time_Right_Flag = 0;
}
if(Key_Status_Read_Right() == KEY_REALTIME_PRESS)
{
MenuInfor.Back_Time_Right = 0;
MenuInfor.Back_Time_Left_Flag = 0;
MenuInfor.Back_Time_Right_Flag = 0;
}
}
\ No newline at end of file
#ifndef KEY_USER_H__
#define KEY_USER_H__
#include "common.h"
#include "Key.h"
typedef struct
{
uint16_t Back_Time_Left;
uint16_t Back_Time_Right;
uint8_t Back_Time_Right_Flag;
uint8_t Back_Time_Left_Flag;
}_Menu_Infor;
extern void Key_KL30_Init_EXample(void);
extern void Key_Wakeup_Init_EXample(void);
void KEY_RIGHT_EVENT_NONE_Service(void);
void KEY_LEFT_EVENT_NONE_Service(void);
void Key_Operation_Right(Key_Event_en_t enKeyEvent);
void Key_Operation_Left(Key_Event_en_t enKeyEvent);
Key_Status_en_t Key_Status_Read_Left(void);
Key_Status_en_t Key_Status_Read_Right(void);
void Key_Clear_Time(void);
#endif
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
#include "BU98R10.h" #include "BU98R10.h"
#include "Services_Mileage_User.h" #include "Services_Mileage_User.h"
#include "can.h" #include "can.h"
#include "Key_user.h"
#include "app_Telltales.h" #include "app_Telltales.h"
#include "Services_Mileage.h" #include "Services_Mileage.h"
...@@ -88,7 +88,7 @@ void Sys_Run_Mode_10ms_Tasks(void) ...@@ -88,7 +88,7 @@ void Sys_Run_Mode_10ms_Tasks(void)
Analog_Signal_Conv_Service(); Analog_Signal_Conv_Service();
Telltales_Management(); Telltales_Management();
Can_BusOff_Fun(10u); Can_BusOff_Fun(10u);
Key_Clear_Time();
Data_Mileage_Write_EEPROM(); Data_Mileage_Write_EEPROM();
} }
...@@ -119,7 +119,6 @@ void Sys_Run_Mode_50ms_Tasks(void) ...@@ -119,7 +119,6 @@ void Sys_Run_Mode_50ms_Tasks(void)
} }
/*============================================================================*/ /*============================================================================*/
......
...@@ -1208,6 +1208,42 @@ ...@@ -1208,6 +1208,42 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<bShared>0</bShared> <bShared>0</bShared>
</File> </File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>81</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\source\Application\Line\Key.h</PathWithFileName>
<FilenameWithoutPath>Key.h</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>82</FileNumber>
<FileType>1</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\source\Application\Line\Key_user.c</PathWithFileName>
<FilenameWithoutPath>Key_user.c</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
<File>
<GroupNumber>3</GroupNumber>
<FileNumber>83</FileNumber>
<FileType>5</FileType>
<tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg>
<bDave2>0</bDave2>
<PathWithFileName>.\source\Application\Line\Key_user.h</PathWithFileName>
<FilenameWithoutPath>Key_user.h</FilenameWithoutPath>
<RteFlg>0</RteFlg>
<bShared>0</bShared>
</File>
</Group> </Group>
<Group> <Group>
...@@ -1218,7 +1254,7 @@ ...@@ -1218,7 +1254,7 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>81</FileNumber> <FileNumber>84</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1230,7 +1266,7 @@ ...@@ -1230,7 +1266,7 @@
</File> </File>
<File> <File>
<GroupNumber>4</GroupNumber> <GroupNumber>4</GroupNumber>
<FileNumber>82</FileNumber> <FileNumber>85</FileNumber>
<FileType>4</FileType> <FileType>4</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1250,7 +1286,7 @@ ...@@ -1250,7 +1286,7 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>83</FileNumber> <FileNumber>86</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1262,7 +1298,7 @@ ...@@ -1262,7 +1298,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>84</FileNumber> <FileNumber>87</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1274,7 +1310,7 @@ ...@@ -1274,7 +1310,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>85</FileNumber> <FileNumber>88</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1286,7 +1322,7 @@ ...@@ -1286,7 +1322,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>86</FileNumber> <FileNumber>89</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1298,7 +1334,7 @@ ...@@ -1298,7 +1334,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>87</FileNumber> <FileNumber>90</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1310,7 +1346,7 @@ ...@@ -1310,7 +1346,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>88</FileNumber> <FileNumber>91</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1322,7 +1358,7 @@ ...@@ -1322,7 +1358,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>89</FileNumber> <FileNumber>92</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1334,7 +1370,7 @@ ...@@ -1334,7 +1370,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>90</FileNumber> <FileNumber>93</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1346,7 +1382,7 @@ ...@@ -1346,7 +1382,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>91</FileNumber> <FileNumber>94</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1358,7 +1394,7 @@ ...@@ -1358,7 +1394,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>92</FileNumber> <FileNumber>95</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1370,7 +1406,7 @@ ...@@ -1370,7 +1406,7 @@
</File> </File>
<File> <File>
<GroupNumber>5</GroupNumber> <GroupNumber>5</GroupNumber>
<FileNumber>93</FileNumber> <FileNumber>96</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1390,7 +1426,7 @@ ...@@ -1390,7 +1426,7 @@
<RteFlg>0</RteFlg> <RteFlg>0</RteFlg>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>94</FileNumber> <FileNumber>97</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1402,7 +1438,7 @@ ...@@ -1402,7 +1438,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>95</FileNumber> <FileNumber>98</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1414,7 +1450,7 @@ ...@@ -1414,7 +1450,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>96</FileNumber> <FileNumber>99</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1426,7 +1462,7 @@ ...@@ -1426,7 +1462,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>97</FileNumber> <FileNumber>100</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1438,7 +1474,7 @@ ...@@ -1438,7 +1474,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>98</FileNumber> <FileNumber>101</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1450,7 +1486,7 @@ ...@@ -1450,7 +1486,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>99</FileNumber> <FileNumber>102</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1462,7 +1498,7 @@ ...@@ -1462,7 +1498,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>100</FileNumber> <FileNumber>103</FileNumber>
<FileType>1</FileType> <FileType>1</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1474,7 +1510,7 @@ ...@@ -1474,7 +1510,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>101</FileNumber> <FileNumber>104</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1486,7 +1522,7 @@ ...@@ -1486,7 +1522,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>102</FileNumber> <FileNumber>105</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
...@@ -1498,7 +1534,7 @@ ...@@ -1498,7 +1534,7 @@
</File> </File>
<File> <File>
<GroupNumber>6</GroupNumber> <GroupNumber>6</GroupNumber>
<FileNumber>103</FileNumber> <FileNumber>106</FileNumber>
<FileType>5</FileType> <FileType>5</FileType>
<tvExp>0</tvExp> <tvExp>0</tvExp>
<tvExpOptDlg>0</tvExpOptDlg> <tvExpOptDlg>0</tvExpOptDlg>
......
...@@ -339,7 +339,7 @@ ...@@ -339,7 +339,7 @@
<MiscControls></MiscControls> <MiscControls></MiscControls>
<Define></Define> <Define></Define>
<Undefine></Undefine> <Undefine></Undefine>
<IncludePath>.\source\System;.\source\Driver\inc;.\source\Application;.\source\Application\LINE_IN;.\source\Application\PowerManagement;.\source\Application\RTE;.\source\Application\MCU_Core_Protocol;.\source\Application\Telltales;.\source\Application\Fuel;.\source\Application\Eeprom;.\source\Application\DataProcessor;.\source\Application\LightDetect;.\source\Application\BackLight;.\source\Application\Key;.\source\Application\Menu;.\source\Application\APPCan;.\source\UDS;.\source\Application\Gauges;.\source\Application\CoolantTemp;.\source\UDS2;.\\RTE\Device\BAT32A239KK64FB;.\source\Application\Mileage;.\source\Application\Display\GUI_LCD_DIS;.\source\Application\Display\SEG_LCD_DIS;.\source\Driver\inc</IncludePath> <IncludePath>.\source\System;.\source\Driver\inc;.\source\Application;.\source\Application\LINE_IN;.\source\Application\PowerManagement;.\source\Application\RTE;.\source\Application\MCU_Core_Protocol;.\source\Application\Telltales;.\source\Application\Fuel;.\source\Application\Eeprom;.\source\Application\DataProcessor;.\source\Application\LightDetect;.\source\Application\BackLight;.\source\Application\Key;.\source\Application\Menu;.\source\Application\APPCan;.\source\UDS;.\source\Application\Gauges;.\source\Application\CoolantTemp;.\source\UDS2;.\\RTE\Device\BAT32A239KK64FB;.\source\Application\Mileage;.\source\Application\Display\GUI_LCD_DIS;.\source\Application\Display\SEG_LCD_DIS;.\source\Driver\inc;.\source\Application\Line</IncludePath>
</VariousControls> </VariousControls>
</Cads> </Cads>
<Aads> <Aads>
...@@ -793,6 +793,21 @@ ...@@ -793,6 +793,21 @@
<FileType>5</FileType> <FileType>5</FileType>
<FilePath>.\source\Application\Line\BackLight.h</FilePath> <FilePath>.\source\Application\Line\BackLight.h</FilePath>
</File> </File>
<File>
<FileName>Key.h</FileName>
<FileType>5</FileType>
<FilePath>.\source\Application\Line\Key.h</FilePath>
</File>
<File>
<FileName>Key_user.c</FileName>
<FileType>1</FileType>
<FilePath>.\source\Application\Line\Key_user.c</FilePath>
</File>
<File>
<FileName>Key_user.h</FileName>
<FileType>5</FileType>
<FilePath>.\source\Application\Line\Key_user.h</FilePath>
</File>
</Files> </Files>
</Group> </Group>
<Group> <Group>
......
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