labview调用动态链接库问题

2019-07-17 09:17发布

本帖最后由 ZHZJK 于 2014-7-15 11:07 编辑

本人使用动态链接库一直没成功过,这次准备调用读卡器的dll来读卡
用了其中 打开串口 和读取卡号 两函数总是有错
希望大家帮忙看看
下面是一些基本的图片。


newscreen9670377.jpg


newscreen9888840.jpg
newscreen9867702.jpg


newscreen9858358.jpg



下面为链接库的一些内容
设备号一般为0
newscreen10458353.jpg

这边波特率一般为9600
newscreen10445156.jpg


上传的VI是2012版本的,下面是一些最基本的资料。
VI是2012的,按下按钮打开串口
读卡.vi (12.83 KB, 下载次数: 57)

201Comm.dll (160 KB, 下载次数: 67)

201COMM.pdf (66.23 KB, 下载次数: 73)








newscreen9670377.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
ZHZJK
2019-07-17 20:49
zhou2sheng 发表于 2014-7-23 10:17
楼主能把解决办法分享一下嘛?

下面这地方有一个真正的陷阱
先来看一下读串口函数的函数原型
newscreen2147447.jpg

众所周知,labview里串口所有的函数都是直接用COM口的
串口打开后,直接用COM口读写
再调用C++编写的程序难免会直接用  COM 作为参数来读程序
如果这样做,就会步入一个天然的陷阱中
因为这程序中读取串口是用的句柄,而句柄是整形
当时我就在想,为什么COM口会输入的是整形
现在想想,在windows操作系统中,句柄就是代表的每一个窗体,同样可以用句柄好代表端口号

最后传上程序图片
newscreen2569508.jpg

希望个人的见解能给你与观看这篇帖子的人一些启发(虽然看我帖子的人很少^_^)

一周热门 更多>