LabVIEW与C语言的混合编程
- 格式:pdf
- 大小:163.53 KB
- 文档页数:3


0引言美国NI公司开发的LabVIEW软件是一种高性能的图形化虚拟仪器编程软件,主要用于开发数据监测、数据测量采集系统、工业自动控制系统、数据分析系统等领域,是虚拟仪器开发的主要工具之一。但其本身也有不足,例如不能完全提供用户所需的驱动程序和调用系统程序实现底层操作,不擅长完成大量数据处理的任务。Delphi语言是一种功能强大的编程语言,基于窗口和面向对象,并兼有VC的强大功能和VB的快速开发、易学易用的优点;具有开发效率高、界面制作美观方便、可实现各种操作功能等特点,已成为软件开发人员的首选工具。如果能够实现LabVIEW和Delphi的混合编程,就可弥补LabVIEW的上述不足,开发出功能更为强大的程序。本文以IIR数字滤波器设计程序为例,介绍在Delphi中调用LabVIEW制作的虚拟仪器,实现LabVIEW和Delphi混合编程的方法。1实现方法1.1概述本文依靠LabVIEW提供的ActiveX接口,实现对LabVIEW的调用。LabVIEW可以用作一个ActiveX客户程序,从而访问其它支持ActiveX应用程序的对象、属性、方法和事件。LabVIEW也可作为ActiveX服务器,在其它的应用程序中也可以访问LabVIEW的对象、属性和方法。在Delphi中调用LabVIEW时,应将LabVIEW作为ActiveX服务器。当激活LabVIEW,使它作为Activey服务器时,LabVIEW输出两个类(一个类和一个VI类),应用类可以打开VI类的一个实例,通过这个实例即可调用LabVIEW中制作的虚拟仪器。1.2使用LabVIEW制作虚拟仪器为实现IIR数字滤波器设计,首先要使用Lab-VIEW制作虚拟仪器(VI),其程序框图见图1。在这个VI中,首先使用一组控制器(Controls),包括2个
Enum和6个NumericControl,用来输入滤波器的设计参数,包括:滤波器的设计方法(Topology)、类型(Type)、阶次(Order)、上限频率(UFC)、下限频率(LFC)、通带波纹(PBR)、阻带衰减(SBA)、信号采样频率(Fs)等。而待滤波的信号,使用数组控制器(In-putArray)来输入。这在框图中,首先由输入采样频率和信号数据构造一个波形作为待滤波的信号。然后将滤波器的设计参数组合为一个簇后,传递给两个DigitalIIRFVI,由其中一个DIIRFVI根据给
将LabVIEW生成C代码C Generator工具包用法
•
• |
• 浏览:522
• |
• 更新:2014-02-20 10:26
下载安装LabVIEW 2012软件,下载LabVIEW工具包。下载地址,有个转换的小标志。
新建一个工程文件,并在文件中添加需要转换成C语言的vi文件。楼主要转换的是源代码转换.vi。就添加进工程就好。
在程序生成规范右键-----新建------C Code Generation。生成一个C文件。
将出现这个框,点击左侧Source Files
将需转换的vi选中并点击上面的导出vi
弹出对话框,点击ok导出vi点击生成
完成了C文件的转换。
在转换的过程中会出现转换失败的情况,是因为LabVIEW中有些模块不能转换成C语言。生成的C语言也不一定能运行,还要看各位追求的精度有多高。
龙源期刊网
C语言和汇编语言混合编程方法
作者:庞新法
来源:《价值工程》2014年第24期
摘要: C语言是一种高级的面向过程的开发语言,汇编语言是一种低级的面向机器的编程语言。两者在程序设计开发方面各有优劣,目前两者的混合编程得到了广泛的应用。本文通过具体的实例,说明了混合编程的基本方法,为C语言应用开发人员提供方便。
关键词: C 语言;汇编语言;混合编程
中图分类号:TP313 文献标识码:A 文章编号:1006-4311(2014)24-0231-02
0 引言
汇编语言是一种面向机器的语言,其优点是运行速度快,占用存储空间小,可直接对硬件进行控制。缺点是编写、调试困难、移植性差。C语言简洁、灵活、库函数丰富、调试方便、移植性好,目前已被广泛地应用于系统软件和应用软件的开发中,为了发挥各自优势,取长补短,采用混合编程。大部分程序,如界面、人机接口(外壳程序)、数据处理等用C语言编写,以提高程序的开发效率。而某些程序,如需要缩短程序的运行时间,或需要对硬件进行直接操作,或需要利用操作系统的某些功能模块,或频繁使用的程序、或需要占用内存空间少的程序(内核程序),则用汇编编写,以提高程序的运行效率。
1 嵌入式汇编
嵌入式汇编也称行内汇编,源程序中直接插入汇编语句。汇编语句可直接访问C程序中定义的常量、变量、函数。不必考虑二者之间的接口,方便编程。
1.1 嵌入式汇编语句的格式
格式:asm操作码 操作数[;或换行]
其中:操作数可以是汇编语句中的立即数、寄存器、表达式等还可以是C中的常量、变量、标号等。分号;是汇编语句结束符,并非注解,要用注解,用C的注解。如下例
所示。
1.2 汇编语句访问C的数据
基于LabVlEW直接读取C语言数据文件的研究
基于LabV l EW直接读取C语言数据文件的研究
nvestigation on Reading Data File of C Language by Directly Using LabVlEW
侯永强 马孝江 李宏坤 (大连理工大学振动工程研究所,辽宁大连116023)
摘 要 通过比较C语言与LabVIEW数据存储格式的差异,提出一种采用LabVlEW读写C语言二进制浮点数文件的有效方
法。该方法无需调用动态链接库,并且方便快捷,完全适合实时高速数据操作。
关键词:C语言,浮点数,LabVIEW,读写文件 Abstract I n this paper,a new effective method to read binary floating—point file formed by C language is put forward according to the comparison between storing format of C language and LabVlEW.Compared with traditional method of calling dynamic link library.this method is very simple and efficiency It is very suitable to high speed and real—time data operation. Keywords:C language,floating-point number,LabVlEW,read and write file
在应用LabVIEW编程时,一些使用过C/C++的工程师们
要面对这样一个问题,那就是在用LabVIEW的读取以前C语
言编写的数据文件,不能正确读取文件数据。如何在LabVlEW