labview通过匹配模式解析TCP命令后,传递下去的值会秒变成0
时间:10-02
整理:3721RD
点击:
问大家一个问题哇!
labview接收到TCP发送的数据后,通过“匹配模式”解析字符串会出现解析后的数据从一个值(比如12dBm),秒变成0.再变成13dBm,再秒变成0。按照如下所示变化:12 ->0
13 ->0
14 ->0
15 ->0
注:接收到TCP命令后会马上通过“匹配模式”解析出来。
这个问题不好上传代码,上传代码后必须要有相应的平台调试才可以看到这种结果。
有没有谁能大概给我指明下方向啊?
labview接收到TCP发送的数据后,通过“匹配模式”解析字符串会出现解析后的数据从一个值(比如12dBm),秒变成0.再变成13dBm,再秒变成0。按照如下所示变化:12 ->0
13 ->0
14 ->0
15 ->0
注:接收到TCP命令后会马上通过“匹配模式”解析出来。
这个问题不好上传代码,上传代码后必须要有相应的平台调试才可以看到这种结果。
有没有谁能大概给我指明下方向啊?
通过自VI传递下去的值会变成0,字VI传递的参数默认为0,所以总是会出现这种效果。
上传代码后必须要有相应的平台调试才可以看到这种结果
没有程序,猜测问题可能如下:
1、可能主机端是交替发送的两种数据的,导致你第一次能正确解析,第二次因为接收的数据不一样所以解析出为0。这个可以通过高亮+探针监测TCP接收到匹配之间的连线值来排除。
2、你TCP接收的设置有问题,可能没有等待主机端发送数据,而导致读取为空数据?比如TCP读取的字节数偏小、接收的模式选错等。同样可以用1中的方法排除。
3、你匹配模式的表达式有误,可能主机端发送过来的信号有两个符合你表达式,如果刚好你有循环,那么可能就导致拆分为三段了。
可以加探针看具体变化,把匹配模式输出的四条线全部接上显示控件看看
应该是超时引起的,加个超时判断就可以解决问题
不是超时引起的,我已经解决了!O(∩_∩)O谢谢
这个遇见的非常的少,不是很清楚。
这个我已经解决了 谢谢了哈
通过子VI传递会出现这种情况,然后我直接把子VI那段代码拿出来用就对了。
传递下去的值
