使用LabVIEW遇到结构体对齐问题

发布者:hzx312895379最新更新时间:2015-10-26 来源: eefocus关键字:LabVIEW  结构体  对齐问题 手机看文章 扫描二维码
随时随地手机看文章
在LV和VC的WIN32 DLL之间传递下面结构体。
typedef struct  npm_axis
{
    int  axis_select;
    int     sv;//初始速度
    int     v;//驱动速度
    //int    acc;//直线加速度
    //int    dec;//直线减速度
    int    sacc;//s曲线加速区间
    int     sdec;//s曲线减速区间
    int    tacc;//加速时间
    int    tdec;//减速时间
    char     line_s;//加速模式   
    int limit_speed;//速度限制
    int    pos;//绝对
    int    dis;    //增量
    int center;
    //int    speed;//启动指令
} uAXIS;

结果char下面的数据全都错误。网上查找到了原因是:LV是采用一个字节对齐的方式,也就是说,LV的簇是无缝隙存储的,占用空间的大小就是这个元素占用空间大小之和。而通常DLL中采用的是整形量对齐(与编译器有关)。

可以把char改为int来应付急用。建议参考LV中的CALL DLL.VI的例子。

使用LabVIEW遇到结构体对齐问题


关键字:LabVIEW  结构体  对齐问题 引用地址:使用LabVIEW遇到结构体对齐问题

上一篇:基于LabVIEW的Modbus协议两种校验码的实现方法
下一篇:解码labview读写二进制文件格式

推荐阅读最新更新时间:2024-03-30 23:07

LabVIEW中用时间命名文件方法解析
早上为了用系统时间给采集的数据文件进行命名而弄了老半天,所以现在整理一下,既为以后不时之需,又为具有同样问题的同仁提供参考! 程序的截图如下: 图中, 基本路径 是用来提取所要存放的文件位置的,我这里选择了桌面。后面的 1.txt 当然是随便选的,因为路径必须选到具体文件才能点确定。当然,我们也可以将文件存储在当前vi的位置,用的是 Current VI's Path (见下图)。 图中的 ..\files 是要新建的文件夹的名字,如果直接保存的话这一步就可以省略了,不过一般生成的文件还是分文件夹保存比较好(要养成好的编程习惯哦O( _ )O~)。 下面的 .txt 当然就是要保存的文件
[测试测量]
<font color='red'>LabVIEW</font>中用时间命名文件方法解析
LabVIEW数据流控制方法研究
0 引言    Labview (Laboratory Virtual Instrument Engineering Workbench)是 虚拟仪器 概念的首创者,是世界上最优秀的 虚拟仪器 软件开发平台 。它使用图形化 数据流 编程语言,这种新兴的编程方式给编 程人员带来了新的困难,主要体现于对 数据流 的控制上。 LabVIEW 编程人员遇到困难往往求助于C语言 。随着 虚拟仪器 的广泛应用,为提高编程效率, 真正理解并灵活掌握 LabVIEW 数据流 语言是必要的。 1 数据流 编程的特点    数据流 语言的每个节点在执行之前需要提供其所有输入端口的有效数据, LabVIEW 允许用户在一个图表上拥有任意数量的不同节
[测试测量]
<font color='red'>LabVIEW</font>数据流控制方法研究
LabView学习笔记(2)图形的绘制
本例中设计采用独立的X、Y数组产生圆环,前面板如下: 程序框图如下: 总结:波形Graph指示器常用来显示数组中的数据,其可以自定义曲线显示格式,实现方法是在Graph或其组件上弹出菜单进行设置。
[测试测量]
labview编程技巧-----强行破解VI密码的一种方法
NI的很多代码都是可以跟踪的,跟踪到最后,基本出现三种情况:CIN调用、DLL调用和密码锁定的VI,很多人都在寻找解码的方式,时至今日,未发现能有破解VI密码的办法,当然,如果容易破解,也就不能称之为密码了。 不过,VI的一个方法节点的确是给用户提供了强行破解的可能性: 当密码不对的时候,该方法节点会返回错误,如果有错误,循环继续进行,当无错误时,记录密码,并退出循环。 基本思路是构造一个字典(数组CHARS),包括所有的数字和字符,然后计算机自动一个个组合形成密码字符串,上面的图中是破解四个以下字符或者数字组成的密码。如果多于四个,增加INDEX NEXT CHAR VI就可以了。 字典包括了94个各类字符和数字
[测试测量]
<font color='red'>labview</font>编程技巧-----强行破解VI密码的一种方法
学习LabVIEW(一)——调用ZXing.NET
最近要做一些和软件无线电方面的研究,所以得学习一下LabVIEW的基本用法。虽然很久以前也用过NI的采集设备,但是当时的G语言程序都是NI帮我们做好的,所以什么也没学会。 今天我试着编写了一个简单的程序,用LabVIEW调用ZXing.NET实现二维码的生成。由于ZXing.NET生成的二维码是.NET的Bitmap对象,所以在LabVIEW程序界面上,需要用一个.NET的PictureBox来呈现图像,如下图所示: 而在G语言程序中,则可以使用互连接口提供的各种工具来实现ZXing的调用 其中: 构造器节点可以用来创建一个类的实例。创建一个构造器节点时,对于.NET自带的类,可以直接进行选择
[测试测量]
使用LabVIEW 与 NI FlexRIO实现基于FPGA的单原子反馈控制
图1. 用于研究光与物质基本相互作用的激光系统的一部分。系统包括多种透镜,镜面,以及光学模块。 "使用NI FlexRIO,我们定制了自己的高性能硬件设备。基于LabVIEW FPGA,我们能够快速开发FPGA代码,因为它具有很高程度的概括性,同时适当地集成了VHDL IP" – Christian Sames, Max-Planck Institute of Quantum Optics The Challenge: 开发一种定制的时域数字转换器来研究光与物质相互作用的基本量子性质。 The Solution: 使用NI公司的 FlexRIO 与 LabVIEW FPGA模块来创建强大的,多功能的定制仪器,从而使我
[测试测量]
使用<font color='red'>LabVIEW</font> 与 NI FlexRIO实现基于FPGA的单原子反馈控制
开发自定义的LabVIEW插件
插件能够丰富一种工具的功能,使之能够被应用于更多的领域。对LabVIEW而言,它既是一种程序设计语言,同时也是一个程序设计环境。从后者的角度来看,LabVIEW提供了一系列接口供第三方的插件调用。NI通常把这种用于专业的附加于LabVIEW开发环境的插件称为工具包(Toolkits),并且往往价格不菲。如Report Generation Toolkit就是将LabVIEW与Microsoft Office结合起来,使程序员能够使用它更方便地生成doc或者xls格式的报表。由于LabVIEW并没有完全的开放,NI对第3方开发的工具包(插件)也进行了比较严格的管制,只有经过NI核查并且认证的工具包才能够在NI的产品目录中发布出去。 尽
[测试测量]
开发自定义的<font color='red'>LabVIEW</font>插件
新款NI LabVIEW工具包可自动测试软件
      2009年2月,美国国家仪器有限公司近日推出了新的LabVIEW图形化开发环境的软件工程工具——LabVIEW单元测试工具包(LabVIEW Unit Test Framework)和LabVIEW桌面执行追踪工具包(LabVIEW Desktop Execution Trace toolkits)。它们与新推出的NI 需求管理软件(NI Requirements Gateway 1.1)在功能上是完全一致的。这使得工程师们在利用LabVIEW软件开发大型或复杂应用时,可以利用这些工具包有效验证系统,并根据需求改进软件性能和测试编码。       软件调试和测试对于开发人员来说是一个复杂、昂贵且耗时的工作。随着软件
[测试测量]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved