LabVIEWwilliam hill官网
直播中

段云鹏

6年用户 15经验值
擅长:MEMS/传感技术 测量仪表 嵌入式技术
私信 关注
[问答]

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

首先是串口读取的前面板
1.png
串口读取的程序框图
串口框图.jpg
然后在另外一个VI中调用就没有数据了
调用前面板.jpg 调用框图.jpg
看了一些别的帖子,也没找到解决办法,而且有时候数据的顺序会错乱,在调用串口的VI时,串口VI是在运行的,可以收到数据,主要就是调用到别的程序里就没有数据。
探针显示的结果是VISA未执行,如下图所示
2.png

回帖(6)

老蜗牛

2018-4-25 11:05:29

最佳答案

你的这个子VI是包含一个循环结构的,只有循环结束后(即子VI结束)才会有数据流出该子VI。现在循环没有结束,当然没有数据流出来。重新考虑主程序架构,一个可行的解决方案:子Vi里面不要放while循环。
举报

zd870905

2018-4-25 12:14:38
正好相反,子vi不运行了才会有数据出来
举报

段云鹏

2018-4-25 20:25:56
引用: 老蜗牛 发表于 2018-4-25 11:05
你的这个子VI是包含一个循环结构的,只有循环结束后(即子VI结束)才会有数据流出该子VI。现在循环没有结束,当然没有数据流出来。重新考虑主程序架构,一个可行的解决方案:子Vi里面不要放while循环。

谢谢你啊,已经解决了
举报

段云鹏

2018-4-25 20:26:33
引用: zd870905 发表于 2018-4-25 12:14
正好相反,子vi不运行了才会有数据出来

非常感谢,自己逻辑没考虑周全
举报

更多回帖

发帖
×
20
完善资料,
赚取积分