LabWindows/CVI的应用特点
来源:网络 时间:2017-07-01 00:47:00
摘 要:LabWindows/CVI是一个完全的标准C开发环境,用于开发虚拟仪器应用系统。Labwindows/CVI将源代码编辑、32位ANSI C编译、联结、调试以及标准ANSI C库等集成在一个交互式开发环境中。编程技术方面主要采用事件驱动方式与回调函数方式,编程方法简单易学。同时Labwindows/CVI对每一个函数都提供一个函数面板,可进行交互式编程,大大减少了源码语句的键入量,减少了程序语法错误,提高了工程设计的效率和可靠性。
关键字: LabWindows/CVI;ANSI C;事件驱动;回调函数;函数面板
一、LabWindows/CVI简介
LabWindows/CVI是一个完全的标准C开发环境,用于开发虚拟仪器应用系统。LabWindows/CVI提供内置式函数库用于完成数据采集、分析、和显示任务;它还提供简单的拖放式用户界面编辑器以及自动代码生成工具。利用这些功能,您可以在将代码加入到某项目之前,先对其进行互动式的测试。可以利用LabWindows/CVI定义和建立用户界面,生成或运行ActiveX组件,及开发多线程应用。如果把您掌握的C语言编程知识与LabWindows/CVI简单易用的特性结合在一起,您将以不可思议地速度开发出复杂的测量应用系统。
LabWindows/CVI的应用领域极其广泛,涵盖了军工,电讯,工业生产和航天等各种行业。
二、Labwindows/CVI的特点
LabWindows/CVI是一个完全集成式的开发环境,特别为建立以GPIB,PXI,VXI和插入式数据采集板卡为基础的测量系统而设计。该环境将互动性、简单易用的开发方式与ANSI C编译代码所特有的强大编程功能和灵活性有机地结合在一起。LabWindows/CVI提供了许多实用的特性,使您无需牺牲C代码的运行速度或源代码可管理性,便能引人注目地改进工作效率。
Labwindows/CVI将源代码编辑、32位ANSI C编译、联结、调试以及标准ANSI C库等集成在一个交互式开发环境中。因此,用户可以快速方便地编写、调试和修改应用程序,形成可执行文件在Windows和Sun Solaris操作系统中运行。
由于Labwindows/CVI的编程技术主要采用事件驱动方式与回调函数方式,编程方法简单易学,为用户在原来C语言开发的基础上建立新一代的虚拟仪器系统提供了完善的兼容性和很大的灵活性。
由于Labwindows/CVI对每一个函数都提供一个函数面板,采用它用户可进行交互式编程,大大减少了源码语句的键入量,减少了程序语法错误,提高了工程设计的效率和可靠性。
三、CVI中的事件一览
LabWindows/CVI所写的应用程序是基于事件驱动的。事件驱动的程序通过响应用户界面所发生的“事件”来执行代码、调用回调函数。这些事件可以是发生在面板上的对象或者是面板自身。使用LabWindows/CVI进行编程,可以生成事件驱动的代码。通过事件驱动代码,可以将用户界面中的控件连接到代码中的函数。每次对用户界面进行操作都会产生一个事件,LabWindows/CVI就会确定在何控件上发生了什么事件,如果对该控件有一个相应的回调函数,就会激活并运行该回调函数中的代码。
EVENT_LEFT_CLICK:
EVENT_LEFT_DOUBLE_CLICK:
EVENT_RIGHT_CLICK:
EVENT_RIGHT_DOUBLE_CLICK:
EVENT_KEYPRESS:
EVENT_GOT_FOCUS:
EVENT_LOST_FOCUS:
EVENT_DISCARD:
EVENT_CLOSE:
EVENT_PANEL_SIZE:
EVENT_PANEL_MOVE:
控件事件:
EVENT_COMMIT:
EVENT_LEFT_CLICK:
EVENT_LEFT_DOUBLE_CLICK:
EVENT_RIGHT_CLICK:
EVENT_RIGHT_DOUBLE_CLICK:
EVENT_KEYPRESS:
EVENT_GOT_FOCUS:
EVENT_LOST_FOCUS:
EVENT_DISCARD:
鼠标事件:
EVENT_RIGHT_CLICK
EVENT_RIGHT_DOUBLE_CLICK,
EVENT_LEFT_CLICK,
EVENT_LEFT_DOUBLE_CLICK
除此之外,还可以在程序里添加扩展的鼠标事件。
可以通过EnableExtendMouseEvents函数来响应
EVENT_MOUSE_MOVE,
EVENT_LEFT_MOUSE_UP,
EVENT_RIGHT_MOUSE_UP等事件。
然后使用DisableExtendedMouseEvents函数关闭该功能
四、回调函数类型
在CVI中完成软件交互的主要有控件,面板,菜单。对于不同的交互方式,CVI里对应了不同的回调函数。主要表现在回调函数的参数不一样。
控件回调函数:QuitCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
面板回调函数:Test(int panel, int event, void *callbackData,
int eventData1, int eventData2)
菜单回调函数:MenuCallback(int menubar,int menuitem,void *callbackData,int panel)
五、函数面板
CVI中另一个最大的优点就是为每一个函数都提供一个函数面板,用户可以利用函数面板进行交互式编程,从而避免了记忆很多函数和手工输入很多源代码。同时在函数面板中也提供了详细的在线帮助,大大方便了程序的编写,提高了编程效率。
六、结束语
我们通过对Labwindows/CVI的简单介绍,以及应用特点的介绍和讲解,使大家对Labwindows/CVI区别于其它C语言开发环境的特点,以及明显的编程优势有了初步的了解,从而对CVI的认识和学习提供了一个良好的开端。
参考文献
[1]张凤均等编著.Labwindows/CVI开发入门和进阶.北京航空航天大学出版.
[2]刘君华等编著.虚拟仪器编程语言:LabWindows/CVI教程.电子工业出版社.
[3]张毅刚 主编.虚拟仪器软件开发环境Lab Windows/CVI6.0编程指南.机械工业出版社
[4]zone.ni.com/devzone/cda/main.
[5]www.pansino.com.cn.

最新论文
热点论文
- [中等教育] 职专政治教育中的德育渗透
- 帮助学生树立正确的价值观和人生观,提升学生的个人品德与思想素质,是职专政治教育的主要目标与根本目的。但受限于传统政治教育的教学 [全文]
- [中国哲学] 传递“中国梦”正能量是记者的神圣使命
- 摘要:中国梦是中华民族伟大复兴的梦,是当今中华民族前进的动力,是当前中国最具影响力、最具感染力、最具普遍性的正能量。记者作为以 [全文]
- [财务控制] 论企业集团财务控制的对策
- 摘 要:市场经济飞速发展促使企业集团组织形式发生非常大的变化,那么企业集团需要有效利用自身发展优势,促进现代化经济发展。 改革逐渐 [全文]
- [财务控制] 中小企业的财务控制问题分析
- 摘 要:随着市场经济体制不断完善,我国中小企业进入快速发展阶段,其在国民经济发展中的作用被不断凸显出来。本文中笔者以中小企业财务管 [全文]
- [职业教育] 分析音乐课堂中的情感互动及学生体验
- 【摘要】针对音乐课堂中的情感互动及学生体验进行分析,基于学生的实际音乐学习需求、音乐学习目标等予以教学设计,以期能够不断提升音 [全文]
- [市场营销] 新时期下市场营销的演变趋势分析
- 摘要:随着全球经济互相影响,新市场格局的形成让新时期环境里市场营销不断发生变革。而本文主要是对当今市场新形势进行一个分析,找出对市 [全文]
- [国际贸易] 国际贸易融资创新及风险控制
- [摘 要] 国际贸易企业融资风险的主要表现有两种:一是国际贸易企业无法以自身的流动资金偿还债务,要通过集资的方式偿还债务本金和利息; [全文]
- [国际贸易] “互联网 +”时代下国际贸易发展策略研究
- 摘 要:随着网络技术和经济全球化的进一步发展,互联网关系到国际贸易领域的方方面面,并以全新的国际贸易形态,将分散在世界各地的市场, [全文]