急急急!串口接收数据做了一个VI,VI本身可以读取到数据,但是在别的程序上调用就没有数据了,求教

2019-07-17 12:35发布

首先是串口读取的前面板
1.png
串口读取的程序框图
串口框图.jpg
然后在另外一个VI中调用就没有数据了
调用前面板.jpg 调用框图.jpg
看了一些别的帖子,也没找到解决办法,而且有时候数据的顺序会错乱,在调用串口的VI时,串口VI是在运行的,可以收到数据,主要就是调用到别的程序里就没有数据。
探针显示的结果是VISA未执行,如下图所示
2.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
老蜗牛
1楼-- · 2019-07-17 13:40
你的这个子VI是包含一个循环结构的,只有循环结束后(即子VI结束)才会有数据流出该子VI。现在循环没有结束,当然没有数据流出来。重新考虑主程序架构,一个可行的解决方案:子Vi里面不要放while循环。 最佳答案
zd870905
2楼-- · 2019-07-17 18:52
 精彩回答 2  元偷偷看……
段云鹏
3楼-- · 2019-07-17 23:58
老蜗牛 发表于 2018-4-25 11:05
你的这个子VI是包含一个循环结构的,只有循环结束后(即子VI结束)才会有数据流出该子VI。现在循环没有结束,当然没有数据流出来。重新考虑主程序架构,一个可行的解决方案:子Vi里面不要放while循环。

谢谢你啊,已经解决了
段云鹏
4楼-- · 2019-07-18 05:12
zd870905 发表于 2018-4-25 12:14
正好相反,子vi不运行了才会有数据出来

非常感谢,自己逻辑没考虑周全
竹笋tt
5楼-- · 2019-07-18 07:23
串口初始化不能一直用,初始化一次就可以了
竹笋tt
6楼-- · 2019-07-18 11:04
串口初始化不能一直用,初始化一次就可以了

一周热门 更多>