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

📄 featureimpl.cpp

📁 此为某测试平台的上位机软件部分
💻 CPP
📖 第 1 页 / 共 2 页
字号:
		pIntBuff1[1] = 2;
		pIntBuff1[2] = 30;

		////////////////////////////////////////
		//继电器板的通道定义
		*nIntNum2    = 7;

		pIntBuff2[0] = 1;
		pIntBuff2[1] = 2;
		pIntBuff2[2] = 3;
		pIntBuff2[3] = 4;
		pIntBuff2[4] = 5;
		
		pIntBuff2[5] = 13;
		pIntBuff2[6] = 45;
}

void  _PXI2527_Feature_Item8(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		//::memcpy(pszName, _T("2527测电阻:CH60~CH160,CH28~CH31,CH55~CH58,CH23~CH26,CH52~CH54,CH20~CH22通道"), 
		//			sizeof(_T("2527测电阻:CH60~CH160,CH28~CH31,CH55~CH58,CH23~CH26,CH52~CH54,CH20~CH22通道")));

		::memcpy(pszName, _T("2527测电阻:CH60~CH160,CH28~CH31,CH55~CH58,CH23~CH26通道"), 
					sizeof(_T("2527测电阻:CH60~CH160,CH28~CH31,CH55~CH58,CH23~CH26通道")));
		*nIntNum1   = 1;
		pIntBuff1[0] = 41;

		////////////////////////////////////////
		//继电器板的通道定义
		*nIntNum2    = 22;

		pIntBuff2[0] = 60;
		pIntBuff2[1] = 61;
		pIntBuff2[2] = 62;
		pIntBuff2[3] = 63;

		pIntBuff2[4] = 28;		
		pIntBuff2[5] = 29;
		pIntBuff2[6] = 30;
		pIntBuff2[7] = 31;

		pIntBuff2[8] = 55;
		pIntBuff2[9] = 56;
		pIntBuff2[10] = 57;
		pIntBuff2[11] = 58;

		pIntBuff2[12] = 23;
		pIntBuff2[13] = 24;
		pIntBuff2[14] = 25;
		pIntBuff2[15] = 26;

		pIntBuff2[16] = 52;
		pIntBuff2[17] = 53;
		pIntBuff2[18] = 54;

		pIntBuff2[19] = 20;
		pIntBuff2[20] = 21;
		pIntBuff2[21] = 22;
}

void  _PXI2527_Feature_Item9(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		//::memcpy(pszName, _T("2527测电阻:CH38~CH42,CH6~CH10,CH47~CH51,CH15~CH19,CH33~CH37,CH1~CH5, CH13,CH45通道"), 
		//			sizeof(_T("2527测电阻:CH38~CH42,CH6~CH10,CH47~CH51,CH15~CH19,CH33~CH37,CH1~CH5, CH13,CH45通道")));
		::memcpy(pszName, _T("2527测电阻:CH38~CH42,CH6~CH10,CH47~CH51,CH15~CH19,CH33~CH37通道"), 
					sizeof(_T("2527测电阻:CH38~CH42,CH6~CH10,CH47~CH51,CH15~CH19,CH33~CH37通道")));

		*nIntNum1   = 1;
		pIntBuff1[0] = 42;

		////////////////////////////////////////
		//继电器板的通道定义
		*nIntNum2    = 32;

		pIntBuff2[0] = 38;
		pIntBuff2[1] = 39;
		pIntBuff2[2] = 40;
		pIntBuff2[3] = 41;
		pIntBuff2[4] = 42;	
		
		pIntBuff2[5] = 6;
		pIntBuff2[6] = 7;
		pIntBuff2[7] = 8;
		pIntBuff2[8] = 9;
		pIntBuff2[9] = 10;

		pIntBuff2[10] = 47;
		pIntBuff2[11] = 48;
		pIntBuff2[12] = 49;
		pIntBuff2[13] = 50;
		pIntBuff2[14] = 51;

		pIntBuff2[15] = 15;
		pIntBuff2[16] = 16;
		pIntBuff2[17] = 17;
		pIntBuff2[18] = 18;
		pIntBuff2[19] = 19;

		pIntBuff2[20] = 33;
		pIntBuff2[21] = 34;
		pIntBuff2[22] = 35;
		pIntBuff2[23] = 36;
		pIntBuff2[24] = 37;

		pIntBuff2[25] = 1;
		pIntBuff2[26] = 2;
		pIntBuff2[27] = 3;
		pIntBuff2[28] = 4;
		pIntBuff2[29] = 5;

		pIntBuff2[30] = 13;
		pIntBuff2[31] = 45;
}

static   fp_FeatureHook   g_arr2527FeatureHooks[MAXPXI2527FEATUREHOOKNUM];
#define  HOOK2527_IMPLMENT_MACRO(Num, Name)	g_arr2527FeatureHooks[Num] = &##Name;

void  _PXI2527_MemResource_Allocate(void)
{
		HOOK2527_IMPLMENT_MACRO(0, _PXI2527_Feature_Item1)
		HOOK2527_IMPLMENT_MACRO(1, _PXI2527_Feature_Item2)
		HOOK2527_IMPLMENT_MACRO(2, _PXI2527_Feature_Item3)
		HOOK2527_IMPLMENT_MACRO(3, _PXI2527_Feature_Item4)
		HOOK2527_IMPLMENT_MACRO(4, _PXI2527_Feature_Item5)
		HOOK2527_IMPLMENT_MACRO(5, _PXI2527_Feature_Item6)
		HOOK2527_IMPLMENT_MACRO(6, _PXI2527_Feature_Item7)
		HOOK2527_IMPLMENT_MACRO(7, _PXI2527_Feature_Item8)
		HOOK2527_IMPLMENT_MACRO(8, _PXI2527_Feature_Item9)
}

void  _PXI2527_Run(int nIndex, char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1, int *pIntBuff2, int *nIntNum2)
{
		(*g_arr2527FeatureHooks[nIndex])(pszName, pIntBuff1, nIntNum1, pIntBuff2, nIntNum2);
}



///////////////////////////////////////////////////////////////////////////////////////////
//
void  _PXI2565_Feature_Item1(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("2565直流电压:CH0,CH2,CH4,CH5,CH7,CH8通道"), 
					sizeof(_T("2565直流电压:CH0,CH2,CH4,CH5,CH7,CH8通道")));

		*nIntNum1   = 3;
		pIntBuff1[0] = 1;
		pIntBuff1[1] = 2;
		pIntBuff1[2] = 31;

		////////////////////////////////////////
		//继电器板的通道定义
		*nIntNum2    = 6;

		pIntBuff2[0] = 0;
		pIntBuff2[1] = 2;
		pIntBuff2[2] = 4;
		pIntBuff2[3] = 5;
		pIntBuff2[4] = 7;		
		pIntBuff2[5] = 8;
}

void  _PXI2565_Feature_Item2(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("2565测电阻:CH0,CH2,CH4,CH5,CH7,CH8通道"), 
					sizeof(_T("2565测电阻:CH0,CH2,CH4,CH5,CH7,CH8通道")));

		*nIntNum1   = 1;
		pIntBuff1[0] = 32;

		////////////////////////////////////////
		//继电器板的通道定义
		*nIntNum2    = 6;

		pIntBuff2[0] = 0;
		pIntBuff2[1] = 2;
		pIntBuff2[2] = 4;
		pIntBuff2[3] = 5;
		pIntBuff2[4] = 7;		
		pIntBuff2[5] = 8;
}

static   fp_FeatureHook   g_arr2565FeatureHooks[MAXPXI2565FEATUREHOOKNUM];
#define  HOOK2565_IMPLMENT_MACRO(Num, Name)	g_arr2565FeatureHooks[Num] = &##Name;

void  _PXI2565_MemResource_Allocate(void)
{
		HOOK2565_IMPLMENT_MACRO(0, _PXI2565_Feature_Item1)
		HOOK2565_IMPLMENT_MACRO(1, _PXI2565_Feature_Item2)
}

void  _PXI2565_Run(int nIndex, char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1, int *pIntBuff2, int *nIntNum2)
{
		(*g_arr2565FeatureHooks[nIndex])(pszName, pIntBuff1, nIntNum1, pIntBuff2, nIntNum2);
}



///////////////////////////////////////////////////////////////////////////////////////////
//PXI4071
void  _PXI4071_Feature_Item1(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DMM直流电压自检"), sizeof(_T("DMM直流电压自检")));

		*nIntNum1   = 4;
		pIntBuff1[0] = 1;
		pIntBuff1[1] = 2;
		pIntBuff1[2] = 5;
		pIntBuff1[3] = 6;
}

void  _PXI4071_Feature_Item2(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DMM交流电压自检"), sizeof(_T("DMM交流电压自检")));
		
		*nIntNum1   = 4;
		pIntBuff1[0] = 3;
		pIntBuff1[1] = 4;
		pIntBuff1[2] = 5;
		pIntBuff1[3] = 6;
}

void  _PXI4071_Feature_Item3(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DMM电阻自检"), sizeof(_T("DMM电阻自检")));
		
		*nIntNum1    = 1;
		pIntBuff1[0] = 9;
}

void  _PXI4071_Feature_Item4(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DMM直流电流自检"), sizeof(_T("DMM直流电流自检")));
		
		*nIntNum1    = 4;
		pIntBuff1[0] = 1;
		pIntBuff1[1] = 2;
		pIntBuff1[2] = 7;
		pIntBuff1[3] = 8;
}

void  _PXI4071_Feature_Item5(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DMM交流电流自检"), sizeof(_T("DMM交流电流自检")));

		*nIntNum1    = 4;
		pIntBuff1[0] = 3;
		pIntBuff1[1] = 4;
		pIntBuff1[2] = 7;
		pIntBuff1[3] = 8;
}

static   fp_FeatureHook   g_arr4071FeatureHooks[MAXPXI4071FEATUREHOOKNUM];
#define  HOOK4071_IMPLMENT_MACRO(Num, Name)	g_arr4071FeatureHooks[Num] = &##Name;

void  _PXI4071_MemResource_Allocate(void)
{
		HOOK4071_IMPLMENT_MACRO(0, _PXI4071_Feature_Item1)
		HOOK4071_IMPLMENT_MACRO(1, _PXI4071_Feature_Item2)
		HOOK4071_IMPLMENT_MACRO(2, _PXI4071_Feature_Item3)
		HOOK4071_IMPLMENT_MACRO(3, _PXI4071_Feature_Item4)
		HOOK4071_IMPLMENT_MACRO(4, _PXI4071_Feature_Item5)
}

void  _PXI4071_Run(int nIndex, char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1)
{
		(*g_arr4071FeatureHooks[nIndex])(pszName, pIntBuff1, nIntNum1, NULL, NULL);
}


///////////////////////////////////////////////////////////////////////////////////////////
//PXI75SD
void  _PXI75SD_Feature_Item1(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("S1S2 -> S3"), sizeof(_T("S1S2 -> S3")));

		*nIntNum1    = 5;
		pIntBuff1[0] = 33;
		pIntBuff1[1] = 34;
		pIntBuff1[2] = 36;
		pIntBuff1[3] = 39;
		pIntBuff1[4] = 40;
}

void  _PXI75SD_Feature_Item2(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("S2S3 -> S1"), sizeof(_T("S2S3 -> S1")));

		*nIntNum1    = 5;
		pIntBuff1[0] = 34;
		pIntBuff1[1] = 35;
		pIntBuff1[2] = 36;
		pIntBuff1[3] = 37;
		pIntBuff1[4] = 40;
}

void  _PXI75SD_Feature_Item3(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("S1S3 -> S2"), sizeof(_T("S1S3 -> S2")));

		*nIntNum1    = 5;
		pIntBuff1[0] = 33;
		pIntBuff1[1] = 35;
		pIntBuff1[2] = 36;
		pIntBuff1[3] = 38;
		pIntBuff1[4] = 40;
}

static   fp_FeatureHook   g_arr75SDFeatureHooks[MAXPXI75SDFEATUREHOOKNUM];
#define  HOOK75SD_IMPLMENT_MACRO(Num, Name)	g_arr75SDFeatureHooks[Num] = &##Name;

void  _PXI75SD_MemResource_Allocate(void)
{
		HOOK75SD_IMPLMENT_MACRO(0, _PXI75SD_Feature_Item1)
		HOOK75SD_IMPLMENT_MACRO(1, _PXI75SD_Feature_Item2)
		HOOK75SD_IMPLMENT_MACRO(2, _PXI75SD_Feature_Item3)
}

void  _PXI75SD_Run(int nIndex, char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1)
{
		(*g_arr75SDFeatureHooks[nIndex])(pszName, pIntBuff1, nIntNum1, NULL, NULL);
}

///////////////////////////////////////////////////////////////////////////////////////////
//PXI5112
void  _PXI5112_Feature_Item1(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("示波器CH0通道"), sizeof(_T("示波器CH0通道")));

		*nIntNum1    = 4;
		pIntBuff1[0] = 3;
		pIntBuff1[1] = 4;
		pIntBuff1[2] = 11;
		pIntBuff1[3] = 12;
}

void  _PXI5112_Feature_Item2(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("示波器CH1通道"), sizeof(_T("示波器CH1通道")));

		*nIntNum1    = 4;
		pIntBuff1[0] = 3;
		pIntBuff1[1] = 4;
		pIntBuff1[2] = 13;
		pIntBuff1[3] = 14;
}

static   fp_FeatureHook   g_arr5112FeatureHooks[MAXPXI5112FEATUREHOOKNUM];
#define  HOOK5112_IMPLMENT_MACRO(Num, Name)	g_arr5112FeatureHooks[Num] = &##Name;

void  _PXI5112_MemResource_Allocate(void)
{
		HOOK5112_IMPLMENT_MACRO(0, _PXI5112_Feature_Item1)
		HOOK5112_IMPLMENT_MACRO(1, _PXI5112_Feature_Item2)
}

void  _PXI5112_Run(int nIndex, char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1)
{
		(*g_arr5112FeatureHooks[nIndex])(pszName, pIntBuff1, nIntNum1, NULL, NULL);
}



///////////////////////////////////////////////////////////////////////////////////////////
//PXI6508
void  _PXI6508_Feature_Item1(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DIO端口0自检"), sizeof(_T("DIO端口0自检")));

		*nIntNum2    = 8;
		pIntBuff2[0] = 0;
		pIntBuff2[1] = 1;
		pIntBuff2[2] = 2;
		pIntBuff2[3] = 3;
		pIntBuff2[4] = 4;
		pIntBuff2[5] = 5;
		pIntBuff2[6] = 6;
		pIntBuff2[7] = 7;
}

void  _PXI6508_Feature_Item2(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DIO端口1自检"), sizeof(_T("DIO端口1自检")));

		*nIntNum2    = 8;
		pIntBuff2[0] = 0;
		pIntBuff2[1] = 1;
		pIntBuff2[2] = 2;
		pIntBuff2[3] = 3;
		pIntBuff2[4] = 4;
		pIntBuff2[5] = 5;
		pIntBuff2[6] = 6;
		pIntBuff2[7] = 7;
}
void  _PXI6508_Feature_Item3(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DIO端口2自检"), sizeof(_T("DIO端口2自检")));

		*nIntNum2    = 8;
		pIntBuff2[0] = 0;
		pIntBuff2[1] = 1;
		pIntBuff2[2] = 2;
		pIntBuff2[3] = 3;
		pIntBuff2[4] = 4;
		pIntBuff2[5] = 5;
		pIntBuff2[6] = 6;
		pIntBuff2[7] = 7;
}
void  _PXI6508_Feature_Item4(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DIO端口3自检"), sizeof(_T("DIO端口3自检")));

		*nIntNum2    = 8;
		pIntBuff2[0] = 0;
		pIntBuff2[1] = 1;
		pIntBuff2[2] = 2;
		pIntBuff2[3] = 3;
		pIntBuff2[4] = 4;
		pIntBuff2[5] = 5;
		pIntBuff2[6] = 6;
		pIntBuff2[7] = 7;
}

void  _PXI6508_Feature_Item5(char *pszName/*名称*/, int *pIntBuff1, int *nIntNum1/*校验箱继电器通道*/, 
													int *pIntBuff2, int *nIntNum2/*继电器板通道*/)
{
		::memcpy(pszName, _T("DIO端口4自检"), sizeof(_T("DIO端口4自检")));

		*nIntNum2    = 8;
		pIntBuff2[0] = 0;
		pIntBuff2[1] = 1;
		pIntBuff2[2] = 2;
		pIntBuff2[3] = 3;
		pIntBuff2[4] = 4;
		pIntBuff2[5] = 5;
		pIntBuff2[6] = 6;
		pIntBuff2[7] = 7;
}

static   fp_FeatureHook   g_arr6508FeatureHooks[MAXPXI6508FEATUREHOOKNUM];
#define  HOOK6508_IMPLMENT_MACRO(Num, Name)	g_arr6508FeatureHooks[Num] = &##Name;

void  _PXI6508_MemResource_Allocate(void)
{
		HOOK6508_IMPLMENT_MACRO(0, _PXI6508_Feature_Item1)
		HOOK6508_IMPLMENT_MACRO(1, _PXI6508_Feature_Item2)
		HOOK6508_IMPLMENT_MACRO(2, _PXI6508_Feature_Item3)
		HOOK6508_IMPLMENT_MACRO(3, _PXI6508_Feature_Item4)
		HOOK6508_IMPLMENT_MACRO(4, _PXI6508_Feature_Item5)
}

void  _PXI6508_Run(int nIndex, char *pszName/*名称*/, int *pIntBuff2, int *nIntNum2)
{
		(*g_arr6508FeatureHooks[nIndex])(pszName, NULL, NULL, pIntBuff2, nIntNum2);
}
}	//end  namespace  AirStutNSP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -