电子说
在使用labview的过程中,必不可少的用到与设备进行串口通讯,然而一旦串口号选择错误就会导致设备连接不上,每次需要人为的去选择对应的串口号,那么如何能让软件自动识别不同仪器所对应的串口号呢?今天就简单的给大家分享一个方法。
在labview的程序面板里有一个VISA查找资源的函数如图所示,该函数查询系统,定位与指定接口相关的设备:
我们使用该函数就可以查找出电脑所有的串口资源:
拿到了所有的串口资源后,接下来要做的工作就是如何与对应的设备进行匹配了。拿到串口资源后我们使用for循环索引出每个串口,使用强制类型转换,将字符串转换为串口类型,然后配置串口,比如我们的开发板波特率设置为115200。设置超时时间为20ms是为了更快的找到对应的串口,然后打开VISA资源,清空缓冲区:
接下来我们就使用这个VISA资源给仪器发送握手指令,如果仪器能够正确回传信号,那么说明我们的串口号匹配成功,匹配成功后我们需要重新配置一下串口资源,因为后面与仪器通讯进行数据收发,如果超时时间太短会导致读不到采集的数据。
如果匹配失败,我们就关闭串口:
但是在这里我们的程序还是会出现bug,就是仪器如果第一次发送的数据丢失,容易造成我们不能正确的匹配到串口,为了防止这种情况的发生,我们在外面再加一个循环,设置循环次数为2次,并且设置如果匹配成功我们直接退出循环。
就这么简单的一个程序就可以让我们的软件自动识别设备连接的串口号了,需要的下载
链接:https://pan.baidu.com/s/1FNIWFGnIqfsPdX3SU6H_rA
提取码:8658
责任编辑:YYX
全部0条评论
快来发表一下你的评论吧 !