⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cmndef.h

📁 此为某测试平台的上位机软件部分
💻 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 + -