📄 menuconfig.h
字号:
#ifndef __MENU_CONFIG_H__
#define __MENU_CONFIG_H__
#ifndef _AFXDLL
#endif
#define RPM_PULSE_LEN 20
#define NO_PULSE_TIME 3000 // 3000ms
#define HWD_FTY_100 TRUE
#define HWD_FGA_4100 1
#define HWD_FGA_4100A 1
#define HWD_FGA_4100_SAVE 1
//#define OIL_AND_SPEED TRUE
#define SERIAL_PORT_COMM TRUE
//#define GUANGDONG_COMM TRUE
#define TRIGGER_AUTO 1
#define TRIGGER_MANUAL 0
/**** 对串口进行定义 ****/
#define TO_UP_HOST 1
#ifdef WIN32
#define TO_PRINTER 1
#define TO_MDA 2
#define TO_LCS TO_MDA
#else
#define TO_MDA 2
#define TO_LCS 3
#define TO_PRINTER 4
#endif
enum EnuFTYFace{
enuFTYFace_InSteady,
enuFTYFace_InWarmup,
enuFTYFace_InCommon,
enuFTYFace_InAccele,
enuFTYFace_InMenu
};
#define SetFTYFace(face) { g_BitInU8Stat.Hole &= 0xffffffe0; \
g_BitInU8Stat.Hole |= (1<<face); \
}
///// 手指移动方向定义 ///////
#define HAND_MOVE_DOWN 1
#define HAND_MOVE_UP 0
/**** 对键值进行宏定义 ****/
#define KEY_ESCAPE (unsigned char)1
#define KEY_LEFT (unsigned char)2
#define KEY_RIGHT (unsigned char)3
#define KEY_UP (unsigned char)4
#define KEY_DOWN (unsigned char)5
#define KEY_OK (unsigned char)6
#define KEY_EXIT (unsigned char)0xff
/**** 第一级菜单定义 ****/
#define LAYER1_LEAK_CHECK (unsigned char)1
#define LAYER1_HANG_UP (unsigned char)2
#define LAYER1_VEHICLE_MSG (unsigned char)3
#define LAYER1_MEASURE (unsigned char)4
#define LAYER1_FUNCTION (unsigned char)5
#define LAYER1_HELP (unsigned char)6
#define LAYER1_DIAGNOSE (unsigned char)7
#define LAYER1_SETTING (unsigned char)8
/**** 功能选项菜单定义 **/
#define FUNCTIONG_CALIBRATION (unsigned char)1
#define FUNCTIONG_ZERO (unsigned char)2
/**** 仪器设置菜单定义 **/
#define SETTING_COM (unsigned char)1
#define SETTING_TIME (unsigned char)2
#define SETTING_LANGUAGE (unsigned char)3
/**** 串行口设置菜单定义 **/
#define COM_PROTOCOL (unsigned char)1
#define COM_BAUDRATE (unsigned char)2
#define COM_ADDRESS (unsigned char)3
#define COM_INTERFACE (unsigned char)4
/**** 测量屏菜单定义 **/
#define MEASURE_COMMON (unsigned char)1
#define MEASURE_IDLE (unsigned char)2
#define MEASURE_DUAL (unsigned char)3
/**** 车辆信息菜单定义 **/
#define VEHICLE_MSG_REG_NO (unsigned char)1
#define VEHICLE_MSG_RPM (unsigned char)2
#define VEHICLE_MSG_FUEL_TYPE (unsigned char)3
///////////////// LCD 区//////////////////////////
#define BasePart1 0x00
#define BasePart2 0x40
#define BasePart3 0x80
#define BasePart4 0xc0
#define SetSysFaceStat(x) (g_FGAStat.ucFGAFace = x)
enum EnuFGAFaceStat{
enuFGAFace_Warmup, // 0
enuFGAFace_Common, // 1
enuFGAFace_Idle, // 2
enuFGAFace_DualIdle, // 3
enuFGAFace_Zero, // 4
enuFGAFace_Calib, // 5
enuFGAFace_Menu, // 6
enuFGAFace_Reserved0 // 7
};
#define SAVE_DATA_COMMON ((U16)(0<<12))
#define SAVE_DATA_IDLE ((U16)(1<<12))
#define SAVE_DATA_LOWIDLE ((U16)(2<<12))
#define SAVE_DATA_HIGHIDLE ((U16)(3<<12))
//上位机控制系统指令信息
typedef struct tagUpHostCmdInfo
{
unsigned char ucCmdCode; //指令代码
unsigned char ucRawCmdPara; //指令参数
U8 ucAcceleTimes;
U8 ucReserved;
unsigned int nRecTime; //接收到指令的时间
}_UP_HOST_CMD_INFO;
//上位机规定的仪器数据格式
typedef struct tagDevFGA4100Data
{
unsigned short wHC; //
unsigned short wCO; //
unsigned short wCO2; //
unsigned short wO2; //
unsigned short wNO; //
unsigned short wSPEED; //
unsigned short wOIL_T; //
unsigned short wLAMBDA; //相对空燃比
//unsigned short nAIR_COEF; //理想空燃比
//unsigned char nSPEED_PASS;
}_DEV_FGA4100_DATA;
typedef struct tagYMDHMData
{// 每位占用一个字节
U8 minute ;
U8 hour ;
U8 day ;
U8 month ;
U8 year ;
U8 alphaCaps ;
U16 wNumber ;
}_YMDHM_DATA;
typedef struct tagFTYSaveData
{
_YMDHM_DATA tagTime; // 8 + 16 + 8 =32
U16 wBuf[8]; // tagTime + 3次加平均 + RegNo =32
// wBuf[0]=k1,wBuf[1]=k2,wBuf[2]=k3,wBuf[3]=AVE,wBuf[4-7]保留
U8 RegNo[8]; // 粤[0]-8[1]8[2]8[3]8[4]8[5] [6,7]保留Reserved
}_FTY_SAVE_DATA;
/*
typedef struct tagYMDHMData
{
U32 minute :6;
U32 hour :5;
U32 day :5;
U32 month :4;
U32 year :7;
U32 alphaCaps :5;
}_YMDHM_DATA;
typedef struct tagYMDHMData
{// 每位占用一个字节
U8 minute ;
U8 hour ;
U8 day ;
U8 month ;
U8 year ;
U8 alphaCaps ;
U16 wNumber ;
}_YMDHM_DATA;*/
typedef struct tagSaveMeasData
{
_YMDHM_DATA tagTime;
U8 RegNo[10];
U16 wK;
}_SAVE_MEAS_DATA;
// 车辆信息 数据结构
typedef struct tagVehicleInfo
{
U8 ucTestType; //检测类型,0->普通,1->怠速,2->双怠速
U8 ucFuelIndex; //燃料,0->汽油,1->LPG,2->CNG,3->酒精
// U8 ucLightMode; //点火方式-->(0)单点火,-->(1)双点火
// U8 ucStroke; //冲程-->(0)4,-->(1)2
U8 ucDivData; // 除数,测得转速应该除以此数。
// 初始化为1,if(ucLight) ucDivData *= 2;
// if(ucStroke) ucDivData *= 2;
// U8 ucTestPoint; // 测试点-->(0)分线,-->(1)总线
U8 ucCylinder; // if(ucTestPoint) ucDivData *= ucCylinder;
U16 wRatedSpeed; //额定转速
U16 wSpeedPermitRange; //超差允许范围 保存EEPROM
U16 wHighIdleSpeed; //高怠速 默认 2500 r/m
U16 wReserved; //保留,使本 结构体 长度为 4*BYTE 的整数倍
}_VEHICLE_INFO;
typedef struct tagBitInU16{
U32 bAirOutOfRange0:1;
U32 bDetectOutOfRange1:1;
U32 bTubeOutOfRange2:1;
U32 bPowerOutOfRange3:1;
U32 bit4:1;
U32 bit5:1;
U32 bit6:1;
U32 bit7:1;
U32 bInLinearZero8:1;
U32 bWindowsDirty9:1;
U32 bInArmming10:1;
U32 bInTrigger11:1;
}BIT_IN_U32;
typedef union BIT_AAA{
U32 Hole;
BIT_IN_U32 everyBit;
}BIT_UNION;
/*
typedef struct tagBitInU16{
U16 bAirOutOfRange0:1;
U16 bDetectOutOfRange1:1;
U16 bTubeOutOfRange2:1;
U16 bPowerOutOfRange3:1;
U16 bit4:1;
U16 bit5:1;
U16 bit6:1;
U16 bit7:1;
U16 bInLinearZero8:1;
U16 bWindowsDirty9:1;
U16 bInArmming10:1;
U16 bInTrigger11:1;
}BIT_IN_U16;
typedef union BIT_AAA{
U32 Hole;
BIT_IN_U32 everyBit;
}BIT_UNION;*/
typedef struct tagBitInU32Status{
// BYTE1
U32 bFaceInSteady:1;
U32 bFaceInWarmup:1;
U32 bFaceInCommon:1;
U32 bFaceInAccele:1;
U32 bFaceInMenu:1;
U32 bDataPass:1;
U32 bSteadyStop:1;
U32 bIsManaulTrigger:1;
// BYTE2
U32 bFaceInCalib:1;
U32 bBenchNeedClean:1;
U32 bInPreTrigger:1;
U32 bInTriggering:1;
}BIT_IN_U32_STATUS;
typedef union BIT_BBB{
U32 Hole;
BIT_IN_U32_STATUS EachBit;
}BIT_IN_STATUS;
/*
typedef struct tagBitInU8{
U32 bit0:1;
U32 bit1:1;
U32 bit2:1;
U32 bit3:1;
U32 bit4:1;
U32 bit5:1;
U32 bit6:1;
U32 bit7:1;
}BIT_IN_U8;
typedef union BIT_BBB{
U8 Hole;
BIT_IN_U8 EachBit;
}BIT_IN_U8_UNION;*/
typedef struct tagFGABitInU32 {//FGAStatRecord
// U32 bInWarmup :1; //D0
// U32 bInCommon :1; //D1
// U32 bInIdle :1; //D2
// U32 bInDualIdle :1; //D3
// U32 bInZero :1; //D4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -