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

📄 2-3.c

📁 cvi编程举例
💻 C
字号:
#include "toolbox.h"
#include <analysis.h>
#include <cvirte.h>		
#include <userint.h>
#include "2-3.h"
static int GraphHandle;
static double sinData[1024];

int CVICALLBACK EventFunction1 (int panelOrMenuBarHandle, int controlOrMenuItemID, int event, void *callbackData, int eventData1, int eventData2);

static int panelHandle;

int main (int argc, char *argv[])
{
	if (InitCVIRTE (0, argv, 0) == 0)
		return -1;	/* out of memory */
	if ((panelHandle = LoadPanel (0, "2-3.uir", PANEL)) < 0)
		return -1;
	DisplayPanel (panelHandle);
	RunUserInterface ();
	DiscardPanel (panelHandle);
	return 0;
}

int CVICALLBACK quit (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
	{
		case EVENT_COMMIT:
			QuitUserInterface (0);
			InstallMainCallback (NULL, 0, 0);
			
			break;
	}
	return 0;
}


int CVICALLBACK graph (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
	{
		case EVENT_COMMIT:
			SinePattern (1024, 1.0, 0.0, 2.0, sinData);		//产生2个周期的正弦波数据
			GraphHandle = PlotY (panelHandle, PANEL_GRAPH, sinData, 1024, VAL_DOUBLE, VAL_THIN_LINE, VAL_EMPTY_SQUARE, VAL_SOLID, 1, VAL_BLUE);

			break;
	}
	return 0;
}

int CVICALLBACK stripchart (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
	{
		case EVENT_COMMIT:

			InstallMainCallback (EventFunction1, 0, 1);   //安装主回调函数
			SetIdleEventRate (100);					  //设置主回调函数响应时间
			
						
			break;
	}
	return 0;
}

int CVICALLBACK digitalgraph (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	int aa[12]={0,2,3,5,0,15,0,9,10,0,1,6};
	switch (event)
	{
		case EVENT_COMMIT:
			PlotDigitalLines (panelHandle, PANEL_DIGGRAPH, aa, 12, VAL_INTEGER, 3);

			break;
	}
	return 0;
}

int CVICALLBACK EventFunction1 (int panelOrMenuBarHandle, int controlOrMenuItemID, int event, void *callbackData, int eventData1, int eventData2)
{
	double kk;
	kk=Random(0,100);
	PlotStripChartPoint (panelHandle, PANEL_STRIPCHART,kk );
	
	return 0;	
}



int CVICALLBACK StopStrip (int panel, int control, int event,
		void *callbackData, int eventData1, int eventData2)
{
	switch (event)
	{
		case EVENT_COMMIT:
			InstallMainCallback (NULL, 0, 1);
			break;
	}
	return 0;
}

⌨️ 快捷键说明

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