📄 cmndef.h
字号:
#ifndef _CMNDEF_H
#define _CMNDEF_H
#ifdef __cplusplus
extern "C" {
#endif
/************************************************************************************
* 这里包含头文件定义
*
************************************************************************************/
#define PXIMOD_MAXDEVCIENO 18 //PXI机箱最大18槽
#define BIT_MAXITEMNO 50 //最大的自检项
#define BIT_MAXRELAYNUM 10
#define _USECHNANELEXTENTIONINFO_HIDEVENT
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
#define MAXHIDCHNLNUM 100
#define MAXRS232NUM 4
#endif
extern BOOL g_bBoardStatusNext; //可以继续向下走
extern BOOL g_bRS232StatusNext; //可以继续向下走
/*0.串口自检结果*/
typedef struct _tagSerialPrtResultMiscelInfo
{
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
struct _tagHIDCHNLINFO
{
int nChnlNo; //通道号
int nRelayNo; //继电器号
BOOL bCheck; //选中标记
}HIDCHNLINFO[MAXHIDCHNLNUM];
#endif
struct _tagRS232Info
{
int nSendPortNo;
int nRecvPortNo;
BOOL bPass;
}sRS232ItemInfo[MAXRS232NUM];
BOOL bWholeResult;
int nActualSPNum; //串口数目
_tagSerialPrtResultMiscelInfo(){ZeroMemory(this, sizeof(_tagSerialPrtResultMiscelInfo));}
}SerialPrtResultMiscelInfo;
/*1.模块自检状态信息结构,需参考MAX的资源定义*/
typedef struct _tagDeviceResultMiscelInfo
{
struct _tagBaseBoard
{
short nMaxDeviceNo; //设备号
char szName[32]; //形如"PXI5112","PXI2549"等
char szResource[32]; //形如"PXI1Slot1","Dev1"等
BOOL bBitPass;
}sLastDeviceObj[PXIMOD_MAXDEVCIENO];
int nActualDeviceNum; //PXI模块数目
BOOL bWholeResult;
_tagDeviceResultMiscelInfo(){ZeroMemory(this, sizeof(_tagDeviceResultMiscelInfo));}
}PXIDeviceResultMiscelInfo;
/*2.继电器板状态信息结构-PXI2575、PXI2565、PXI2527*/
typedef struct _tagRelayDevResultMiscelInfo
{
struct _tagBaseChnl
{
//1.使用的继电器信息
struct _tagRelayItem
{
int nRelayNo[BIT_MAXRELAYNUM];
int nActualRelayNum;
}sRelayItem;
//2.测量信息
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
struct _tagHIDCHNLINFO
{
int nMeasType; //测量类型(直流电压/电阻)
int nChnlNo[MAXHIDCHNLNUM]; //继电器板通道号
BOOL bChnlResult[MAXHIDCHNLNUM];//板通道的结论
int MeasVal[MAXHIDCHNLNUM]; //测量值
int nActualNum; //应用的数
}sHidItemInfo;
#endif
char szHIDItemLabel[128]; //界面显示项名称
float StdVal; //标准值
float ErrVal; //误差值
BOOL bPass; //检测项结论
BOOL bCheck; //选中标记
}sItemObj[BIT_MAXITEMNO];
int nActualItemNum; //最大的自检项目
char szResource[32]; //PXI资源描述符
BOOL bWholeResult;
ULONG hHandle;
public:
enum MeasType
{
dcVolType = 1, //直流电压
OmType = 2 //电阻
};
_tagRelayDevResultMiscelInfo(){ZeroMemory(this, sizeof(_tagRelayDevResultMiscelInfo));}
}PXIRelayDevResultMiscelInfo;
/*2.继电器板状态信息结构-PXI2575、PXI2565、PXI2527*/
typedef struct _tagDIODevResultMiscelInfo
{
struct _tagBaseChnl
{
#pragma pack(1)
char szHIDItemLabel[128]; //界面显示项名称
//1.使用的收发通道信息
int nChnlNo[2];
int nChnlNum;
BOOL bPass; //检测项结论
BOOL bCheck; //选中标记
#pragma pack()
}sItemObj[BIT_MAXITEMNO];
int nActualItemNum; //最大的自检项目
short nMaxDeviceNo; //设备号
char szResource[32]; //PXI资源描述符
BOOL bWholeResult;
ULONG hHandle;
public:
_tagDIODevResultMiscelInfo(){ZeroMemory(this, sizeof(_tagDIODevResultMiscelInfo));}
}PXIDIODevResultMiscelInfo;
/*3. 5112板信息结构*/
#define SCOPE_MAXCHNLNO 2
typedef struct _tagScopeDevResultMiscelInfo
{
struct _tagBaseChnl
{
//1.使用的继电器信息
struct _tagRelayItem
{
int nRelayNo[BIT_MAXRELAYNUM];
int nActualRelayNum;
}sRelayItem;
//2.测量信息
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
struct _tagHIDCHNLINFO
{
int nChnlNo; //示波器通道
float MeasVal; //测量值
}sHidItemInfo;
#endif
char szHIDItemLabel[128]; //界面显示项名称
float StdVal; //标准值
float ErrVal; //误差值
BOOL bPass; //检测项结论
BOOL bCheck; //选中标记
}sItemObj[BIT_MAXITEMNO];
int nActualItemNum; //最大的自检项目
char szResource[32]; //PXI资源描述符
BOOL bWholeResult;
public:
enum MeasType
{
acVolType = 1 //交流电压
};
_tagScopeDevResultMiscelInfo(){ZeroMemory(this, sizeof(_tagScopeDevResultMiscelInfo));}
}PXIScopeDevResultMiscelInfo;
/*4. 4071板信息结构*/
typedef struct _tagDMMDevResultMiscelInfo
{
struct _tagBaseChnl
{
//1.使用的继电器信息
struct _tagRelayItem
{
int nRelayNo[BIT_MAXRELAYNUM];
int nActualRelayNum;
}sRelayItem;
//2.测量信息
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
struct _tagHIDCHNLINFO
{
int nMeasType; //测量类型1(电压/电流/电阻)
float MeasVal; //测量值
int nRelayNo[MAXHIDCHNLNUM]; //继电器板通道号
int nActualRelayNum; //应用的数
}sHidItemInfo;
#endif
char szHIDItemLabel[128]; //界面显示项名称
float StdVal; //标准值
float ErrVal; //误差值
BOOL bPass; //检测项结论
BOOL bCheck; //选中标记
}sItemObj[BIT_MAXITEMNO];
int nActualItemNum; //最大的自检项目数
char szResource[32]; //PXI资源描述符
BOOL bWholeResult;
public:
enum MeasType
{
acCurrType = 1, //交流电流
acVolType = 2, //交流电压
dcVolType = 3, //直流电压
dcCurrType = 4, //直流电流
OmType = 5 //电阻测量
};
_tagDMMDevResultMiscelInfo(){ZeroMemory(this, sizeof(_tagDMMDevResultMiscelInfo));}
}PXIDMMDevResultMiscelInfo;
/*5. ARINC429板信息结构*/
#define MAX429CHNLNUM 128
typedef struct _tagARINC429DevResultMiscelInfo
{
int txChnls[MAX429CHNLNUM];
int rxChnls[MAX429CHNLNUM];
BOOL ChnlResult[MAX429CHNLNUM];
int nActualChnl;
int nDevice; //设备
HANDLE hHandle;
BOOL bWholeResult;
_tagARINC429DevResultMiscelInfo(){ZeroMemory(this, sizeof(_tagARINC429DevResultMiscelInfo));}
}ARINC429ResultMiscelInfo;
/*6. 1553B板信息结构*/
#define MAX1553CHNLNUM 4
typedef struct _tag1553BDevResultMiscelInfo
{
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
struct _tagHIDCHNLINFO
{
int nChnlNo; //通道号
int nRelayNo; //继电器号
BOOL bCheck; //选中标记
}HIDCHNLINFO[MAXHIDCHNLNUM];
#endif
int txChnls[MAX1553CHNLNUM];
int rxChnls[MAX1553CHNLNUM];
int RelayChnl[MAX429CHNLNUM]; //继电器号
int nActualChnl;
int ChnlResult[MAX1553CHNLNUM];
HANDLE hHandle;
BOOL bWholeResult;
_tag1553BDevResultMiscelInfo(){ZeroMemory(this, sizeof(_tag1553BDevResultMiscelInfo));}
}_1553BResultMiscelInfo;
/*7. 75SD旋变信号结构*/
#define MAX75SDCHNLNUM 4
typedef struct _tag75SDDevResultMiscelInfo
{
struct _tagBaseChnl
{
//操作处理
#ifdef _USECHNANELEXTENTIONINFO_HIDEVENT
struct _tagHIDCHNLINFO
{
int nRelayNo[MAXHIDCHNLNUM]; //继电器板通道号
int nActualRelayNum; //应用的数
}sHidItemInfo;
#endif
char szHIDItemLabel[128]; //界面显示项名称
int txChnl; //标准值
int rxChnl; //误差值
BOOL bPass; //检测项结论
BOOL bCheck; //选中标记
}sItemObj[BIT_MAXITEMNO];
int nActualItemNum;
int nDevice;
HANDLE hHandle;
BOOL bWholeResult;
_tag75SDDevResultMiscelInfo(){ZeroMemory(this, sizeof(_tag75SDDevResultMiscelInfo));}
}_75SDResultMiscelInfo;
#ifdef __cplusplus
}
#endif
#endif /* !defined(_CMNDEF_H) */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -