×

labwindowscvirte

labwindowscvirte的简单介绍

admin admin 发表于2023-03-27 05:01:07 浏览44 评论0

抢沙发发表评论

本文目录一览:

LabWindows/CVI的简介

NI公司的LabWindows/CVI是一个久经验证的用于测试和测量的ANSI C开发环境,极大地提高了工程师和科学家们的生产效率。他们使用LabWindows/CVI来开发高性能的、可靠的应用程序,用于制造测试、军事/航天、通讯、设计验证和汽车工业等领域。开发人员可以在设计阶段利用LabWindows/CVI的硬件配置助手、综合调试工具以及交互式执行功能,来运行各项功能,使得这些领域的开发流水线化。使用内置的测量库,你可以迅速的开发出复杂的应用程序,例如多线程编程和ActiveX的服务器/客户端程序。由于LabWindows/CVI的便利性,你可以通过在相似环境中重复使用以前的代码来维护你的代码投资,并且实现Windows、Linuxreg;或实时平台上分布测试系统的无缝集成。

LabWindows/CVI 是为C 语言程序员提供的软件开发系统,在其交互式开发环境中编写的程序必须符合标准C 规范。  使用LabWindows/CVI 可以完成如下工作: 交互式的程序开发具有功能强大的函数库,用来创建数据采集和仪器控制的应用程序; 充分利用完备的软件工具进行数据采集、分析和显示; 利用向导开发IVI 仪器驱动程序和创建ActiveX 服务器; 为其它程序开发C 目标模块、动态连接库(DLL)、C 语言库。

在LabWindows/CVI开发环境中可以利用其提供的库函数来实现程序设计、编辑、编译、链接和标准C 语言程序调试。在该开发环境中可以用LabWindows/CVI 丰富的函数库来编写程序,此外每个函数都有一个叫做函数面板(Function Panel)的交互式操作界面,在函数面板中可以执行该函数并可以生成调用该函数的代码,也可通过右击面板或控件获得有关函数、参数、函数类和函数库的帮助。在LabWindnows/CVI 的交互式环境中编写程序必须符合标准C 语言的规范。另外,在开发应用程序时可以使用编译好的C 语言目标模块,动态链接库(DLL),C静态库和仪器驱动程序。  LabWindows/CVI 的功能强大在于它提供了丰富的函数库。利用这些库函数除可实现常规的程序设计外,还可实现更加复杂的数据采集和仪器控制系统的开发。仪器库是LabWindows/CVI 的特殊资源。它包GPIB、VXI 和RS-232仪器的驱动程序,如示波器、多用表和函数发生器,每个驱动程序都提供可编辑的源代码。使用 LabWindows/CVI 开发工具提供的库函数可以创建自己的仪器驱动程序,可以创建单个仪器、多个仪器或实际上并不存在的虚拟仪器的驱动程序,在创建仪器驱动程序过程中可以使用LabWindows/CVI 的其它库函数。使用LabWindows/CVI 的用户界面编辑器可以创建并编辑图形用户界面(GUI),而使用LabWindows/CVI 的用户界面库函数可以在程序中创建并控制GUI。此外,LabWindows/CVI为GUI 面板的设计,准备了许多专业控件,如:曲线图控件、带状图控件、表头、旋钮和指示灯等,以适应测控系统软件开发的需求,利用这些控件可以设计出专业的测控程序界面。-labwindowscvirte

关于LabWindows/CVI的操作问题 怎么样可以输入一个数据,包括面板和.c 程序,

面板见图

程序如下:

#include cvirte.h

#include userint.h

#include "计算.h"

static int panelHandle;

int i;

double x,y,val;

int main (int argc, char *argv[])

{

if (InitCVIRTE (0, argv, 0) == 0)

return -1; /* out of memory */

if ((panelHandle = LoadPanel (0, "计算.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);

break;

}

return 0;

}

int CVICALLBACK Jisuan (int panel, int control, int event,

void *callbackData, int eventData1, int eventData2)

{

switch (event)

{

case EVENT_COMMIT:

GetCtrlVal(panelHandle,PANEL_NUMERIC,x);

GetCtrlVal(panelHandle,PANEL_NUMERIC_1,y);

GetCtrlVal(panelHandle,PANEL_RINGSLIDE,i);

switch(i)

{

case 0:

val=x+y;

break;

case 1:

val=x-y;

break;

case 2:

val=x*y;

break;

case 3:

if(y==0)

{

MessagePopup("Warning","被除数不能为“0”");

}

else

val=x/y;

break;

}

SetCtrlVal(panelHandle,PANEL_NUMERIC_2,val);

break;

}

return 0;

}

CVI,labwindows定义

Labwindows/CVI8.0是美国NI公司出品的虚拟仪器设计软件,是标准的C语言,加很多功能块构成的,使用很方便。

1、在用Tab键移动光标时,是按照 CVI自动根据.uir文件生成的那个.h文件中定义的控件ID移动的,打开那个.h文件你会看到#define PANEL 1 #define PANEL_…… n(n是整数,为控件ID),光标就是在可被光标选中的控件间按照这个ID顺序循环移动的。-labwindowscvirte

3、初始化时做一下SetCtrlAttribute用ATTR_CTRL_TAB_POSITION属性设置控件,可以定义按TAB键时光标移动顺序。

2、CVI对键盘事件的响应是在面板的回调函数中case EVENT_KEYPRESS:下,该函数的参数eventData1即为键值的组合,vk=eventData1VAL_VKEY_MASK; 即可得到方向键等虚拟键的键值,具体可参考CVI帮助文档索引EVENT_KEYPRESS-labwindowscvirte

LabWindows CVI和LabVIEW有什么不同?

1、两者所指的软件不同

LabVIEW是基于图形化编程语言的软件,LaWindows/CVI是基于文本式编程语言的软件,LaWindows/CVI跟传统的编程语言(比如C)很相似。

2、两者本质不同

LabVIEW是美国国家仪器公司开发的一种虚拟仪器平台,它是一种用图标代码来代替文本式编程语言创建应用程序的开发工具;LabWindows/CVI将C语言与测控技术领域专业工具有机结合,可以实现数据采集、分析和显示,是一种基于C语言的虚拟仪器开发平台。-labwindowscvirte

3、两者适用人群不同

LabVIEW相对LabWindows CVI比较方便上手,适合不太熟练文本编程使用,LabWindows CVI是以标准C为基础编程语言的一种开发工具,界面和一些基本使用都很象VC,功能相对强大,但是使用起来比LABVIEW要复杂的多。-labwindowscvirte

扩展资料:

LabVIEW与其他计算机语言的显著区别是,其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。

LavWindows/CVI主要应用在各种测试、控制、故障分析及信息处理软件的开发中,与NI公司开发的另一个虚拟仪器开发工具LabVIEW相比,其更适合中、大型复杂测试软件的开发。

基于LavWindows/CVI设计的虚拟仪器在无损检测、电力仪表系统、温控系统、流程控制系统、故障诊断和医疗等领域中发挥着重要作用。

参考资料来源:百度百科-LabWindows/CVI