完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
VISA端口 就以串口举例 状态转移
A情况: 比如只有一个COM1 方法: 1.初始化COM1后 直接连线 地球人都知道 2.初始化后写入功能全局变量(其实就是未初始化的移位寄存器),下次调用的时候读出该COM1即可 这个方法避免了连线 (当然局部或是全局变量 不讨论有一定labview经验的人都知道) 不知道其他朋友是否有别的办法?仔细想想似乎只有这一种不连线的方式,这样的好处是想不一定要连续使用COM口 B情况: 比如有好多COM口 或者 你也不知道有多少COM口,假设有COM1-COM5 那如何做转移呢? 方法: 1.当然同A情况一样,对每个COM做独立的功能全局变量12345 这样需要好多个(验证过 当然是可行的) 2.设置一个数组 数组里修改成COM1-COM5 设置成一个功能全局变量,但修改状态的时候,把修改好的COM口 对应替换掉功能全局变量中这个数组的对应COM口(没验证过 不知道是否可行,我觉得不行) 3.同2 可以设置一个簇,后面就不说了 类似数组的方式 但是只是没有索引(没验证过 不知道是否可行,我觉得行) 对于B情况,其实本人也是求教来的,不知道是否有别的办法, 我的想法是,先用枚举预设好COM1-COM5 然后正好调用数组的COM1-COM5(或簇) 但是试验结果 不行? 所以想问下是否有知道的,类似VISA状态数据转移 该如何办法不直接连线,可以供下次使用的时候调用(肯定是不同VI之间的) PCB打样找华强 http://www.hqpcb.com 样板2天出货 |
|
相关推荐
7个回答
|
|
没有明白,是不是这样,有一个com口,楼主想要不同的VI都可以读取这个com口的数据,加入有两个VI A和B,一个com1,那么A和B都可以读取com1的值,不知是不是这样理解的
|
|
|
|
呵呵,版主的理解方式也對 假如被初始化后的COM口线不继续连接下去, 设想:我要用到它的时候调用它,所以目前我想到的办法是功能全局变量。缓存在移位寄存器里,当需要的时候直接读出。 所以这样的方式可以如同版主的理解一样,只是一种可能的需求情况 那么两个VI都可以通过这个功能变量读取COM状态后继续使用它 只是存在一个先后,谁先调用了,那状态肯定是转移下去了,第二个VI调用的时候可能不行了或者还是可行,我没试验过~ 为什么我存在这样的想法, 1.因为假如有COM1 COM2 我初始化COM1后不发送命令,而我对COM2做操作,完了再对COM1操作,但是每次操作COM1 期望是不连续的,因为不同VI之间调用,当然得靠累死缓存的办法,所以i功能全局变量就很当然想到并运用到了。 2.但是COM口可以人为设置的 可是设置到几十, 对于软件本身而言,要么在使用COM的直接通过VISA搜所,但是这个办法暂时不考虑,也不切需求,不解释。 预先通过枚举设置好字符型的COM1-COM5(假设),通过数组或是簇来调用已经安放好的COM1-COM5 但是预先被安放好的不管是COM几都是没有被初始化的,所以这样就产生问题了,用户可以选着这个枚举任何一个, 但是程序得一一对应其被选用的COM口状态。 所以这样的状态如何转移就成为问题了。 我目前开发的一个软体就是按步骤执行的可自定义序列测试,每个步骤都是可以设置的,也可自定义逻辑循环 并且计算 笔者人为没有正真的同步技术,所谓的同步都是相对的,CPU四核多线程,能同步处理吗,偶然吧,这跟误差是一个道理。只是几乎是在纳秒级内已经做计算处理了,相对独立有可能同步, 所以若是单线程处理程序的时候,按步骤执行那是必然的, 那以上这个问题就产生了,一些数据不是必须得靠连线必须得执行下去,可以缓存执行。 作为一些状态信息,是没有数据体现给开发者的,就比如说是VISA初始化后的状态 如何转移使用,除了功能变量或是直接连线以为LABVIEW是否还有别的简单办法,否则真的有多少COM口得设置多少COM功能变量才符合这样的需求 这样的需求不知道是否有遇到过? |
|
|
|
好吧,小白没看懂,但VISA最后不是可以用VISA CLOSE来关闭吗,再次调用的再次初始化不就行了吗?这样其它VI调用时不会有冲突啊,呵呵,小白知识浅溥,不对之处请海涵! |
|
|
|
呵呵 不在需求内 不过 谢谢发言 |
|
|
|
作为一些状态信息,是没有数据体现给开发者的,就比如说是VISA初始化后的状态 如何转移使用,除了功能变量或是直接连线以为LABVIEW是否还有别的简单办法,否则真的有多少COM口得设置多少COM功能变量才符合这样的需求 这样的需求不知道是否有遇到过? 假如程序开始运行时就初始化COM1--COM5,然后放入移位寄存器里面(簇里面),想调用某个COM口,解绑出来就行了 不用全局变量也是可以实现的 还没有使用过COM口, |
|
|
|
呵呵,我在文字中已经有说了,簇也有可能没验证过, 你这么一说 就太好了,我就不去想别的了,我回头直接用了。非常感谢 不过数组式的类似的VISA无法转移状态哦 数组只是存储数据的吧? |
|
|
|
用强制转换类型com口连接
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
用udl里的字符串信息在局域网内其他电脑连接sql数据库为什么为出现连接失败拒绝访问?
1778 浏览 2 评论
为什么同一个队列引用的全局变量,运行在两个子vi中发现队列数据丢失了
1389 浏览 0 评论
1593 浏览 0 评论
关于labview2024版本的lvanlys.dll出错的问题
3381 浏览 3 评论
1511 浏览 2 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 12:36 , Processed in 0.591617 second(s), Total 89, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号