点击按钮程序两次才能读取到正确输出指令

2019-07-18 05:31发布

求大神指导,本人学生,程序需要读取扫描模块SN号和设置扫描步长,参照书上的范例编出了一下程序,可是每次点击按钮程序都是读取上一次的串口返回值,需要点击设置两次才能读取到正确输出指令,下面是程序框图、前面板和通信协议,用串口调试助手运行正常,求大神们指点迷津!!!
通信协议.png

程序前面板.png

程序框图.png

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
haixu
1楼-- · 2019-07-18 08:30
 精彩回答 2  元偷偷看……
yangshuang12a
2楼-- · 2019-07-18 13:41
haixu 发表于 2014-11-19 15:40
典型的modbus协议通信,建议你去理解一下这个协议,然后直接用十六进制字符串去发送和接受。 ...

恩,是十六进制发送和读取的,然后协议已经看过很多遍了,然后串口调试助手发送读取没有问题,labview程序也能写入和读取正确的指定,只是读取的时候,每次都是读上一次指令的返回值。
740542742
3楼-- · 2019-07-18 19:40
把VISA Configure Serial Port函数termination char端口设置成F试试
740542742
4楼-- · 2019-07-18 21:17
我怀疑你接收字符里面有终止符导致接收不完全
mangoal
5楼-- · 2019-07-19 00:23
看不到你的设置按钮在哪里起作用啊?
同一个串口资源不应该让两个并行过程同时访问,所以SN部分和步长部分应该串联执行以免冲突
这种问题多半是执行顺序不对导致先读结果后发了新命令。
yangshuang12a
6楼-- · 2019-07-19 04:27
 精彩回答 2  元偷偷看……

一周热门 更多>