完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
如附件图所示,读取本地文件夹里的文件,然后通过采集卡发送出去,输入量是文件地址的字符串和while循环的停止标志位(1表示停止循环,0表示无限循环)。 labview生成DLL,在PYTHON环境中调用DLL。但是调用该DLL的函数,signal trans("D:TESTVF",0),可以将文件夹中的一个个文件读取出来并形成波形由采集卡发送出去,可是该DLL函数就再也退出不while循环,就不能再给函数赋值signal trans("D:TESTVF",1),使其停止while,不再发送数据。 觉得这样的程序结构导致的这样的问题,各位有没有好的办法解决,多谢!
|
|
相关推荐
8个回答
|
|
你把“停止标志位”放在while循环里面就行了
|
|
|
|
试过了,不行。在考虑用类似生产者消费者的模式,做一个多线程的,开始和停止不陷在循环里。 目前还没有想到合适的方法 |
|
|
|
既然你是在PYTHON环境中调用这个DLL,那个这个VI你就不应该放个循环进去,你的循环应该写在PYTHON中,然后在PYTHON的循环中调用这个DLL。
|
|
|
|
sszx2007 发表于 2018-2-26 20:43 这个方法可以试试是否可行,多谢。 |
|
|
|
sszx2007 发表于 2018-2-26 20:43 这个方法也试过了,如果LABVIEW只负责读取文件输出文件,python自己调用DLL去开始和停止读取文件,发现PYTHON也不能实现停止,因为Labview适度去一个文件夹,然后一个个的去读取里面的文件,还是得等到文件都读取完了才会停止FOR循环,循环中间不可能去读取外界输入的参数去停止。 |
|
|
|
sszx2007 发表于 2018-2-26 20:43 其实就想知道,LABVIEW在while循环运行起来后,是否可以给while循环里输入一个参数,使其停止循环。实际操作时是,做成DLL函数后,while循环运行,相当于函数被占用,不能再别调用,就不能给其赋值了。 |
|
|
|
呼呼721 发表于 2018-3-6 10:37 我觉得你就是为了应付项目才学的LABVIEW,你基础都不打好就强行上项目了 |
|
|
|
首先感谢你给予的这些帮助,也感谢你提出的建议; 其次,目前使用LABVIEW主要是公司研发部临时需要做一些自动化的测试要求,公司这么要求,只因我在大学那会有这门课,而其他同事没人学过用过,这本就不是我本职工作,所以LABVIEW也完全是自己看书,现学现用,肯定有很多不足之处。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
578 浏览 1 评论
NI Vision有个图片打不开其他图都能打开(用NI Vision Assistant也打开不了)
1039 浏览 1 评论
labview2015使用Excel报表程序打包生成后打开程序要选一个vi才能使用,否则软件就会报错,这是什么问题?
1616 浏览 2 评论
LabVIEW与单片机无法串口通信 提示串口打开错误 端口设置有问题吗?
1553 浏览 3 评论
1828 浏览 2 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 19:24 , Processed in 0.703276 second(s), Total 57, Slave 49 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号