串口作为主程序的子VI,数据传输不出来。

2019-07-17 14:39发布

1.我按照小草视频自己做了一个串口助手(图1),我现在想用这个串口助手作为子VI,因为我要多次传输命令,读取下位机发回来的指令。这个字VI单独运行好使,但是作为主程序运行时,数据只停留在子VI里,主程序接收框没有,为什么?
2、我现在主要发送一帧数据(7字节组成),首先先收到的是一模一样的发送数据,然后紧接着收到一帧数据的帧头,接着我再发送帧头,收到的第一个有用的数据,我再发送刚才收到的这个数据,接收到第二个有用的数据,依次类推,直到帧尾。OVER ,我就要用全校验的方式解决收回来的有用的数据进行处理
举例:发 FA 15 00 00 00 00 F5  收 FA 15 00 00 00 00 F5 FA
          发 FA                                收 FA 15 00 00 00 00 F5 FA 3D
          发 3D                                收 FA 15 00 00 00 00 F5 FA 3D  EF
    。。。。。。
不知道如果不用串口子VI,朋友们有没有好的方法解决,我现在只能到第一步,我用了VISA读写控件多次使用,好像没成功。
TIM截图20171214225656.jpg 图片1.png

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
↑♂§宇☆
2019-07-18 08:56
Nimalaji 发表于 2017-12-15 10:24
因为你这里面有个while循环,做子vi的时候while循环停止运行,数据才会传出来,,你可以全局变量代替,或者while循环只运行一次,或者不用while循环。

第一,我现在将外面的大循环去除了,第二,我现在采用了全局变量,数据传送到全局变量里面,但是却从全局变量里面传出出来。

一周热门 更多>