前言
上一篇搭建完成界面,本节开始进入代码篇。
一、代码分类
1.打开串口
2.关闭串口
3.串口发送
4.串口接收
5.数据解析
二、填写代码
我们先新建一个子VI界面,在项目中,我的电脑右键->新建->vi;
点击保存,保存我们新建的VI,最好是放到项目目录下(修改名称为open_serial_port.vi),点击确定。
1.打开/关闭串口功能
选择串口控件
创建链接,在左上角点的地方点击右键,选择创建->输入控件;
左侧的波特率,比特位,奇偶位依次按照上面操作创建输入控件,上方的终止符创建常量,为false(创建常量默认为TRUE,点击一下变为false)
最后打开框图是这样:
运行后,可以刷新出端口(自带aaa端口,可以手动删除),当选择对端口后,点击打开的bool按钮,可以发现state灯亮起。
想要外部使用此模块,还需要配置接口(如图,在右上角配置),正常为白色,有接口后不是白色
2.发送信息
新建一个VI,重命名为WirteMsg.VI
如图创建程序,使用VISA写入,创建输入控件。
3.接收信息
读取功能比较麻烦,我们使用了while循环,定期读取缓冲中的数据,读取到数据或者超过100ms就退出
新建一个VI,命名为ReadMsg.VI
如图所示,使用了结构中平铺式框图,while循环,当循环读取100ms内,如果没有数据就停止,有数据的话在数据读取完成停止。
上图中有个特殊的地方,instr一般不会操作,这是检测串口是否有数据的属性
这样读取就完成了,直接运行读取会报错,需要在前面板选择串口后才能运行。
4.组合代码
这个调用VI是自己选择的
结尾
通信内容大概完成,内部的细化功能需要根据实际情况添加,因内容太多不能详细介绍,后期做完会进行软件代码上传,有问题可以留言,可以介绍一下后续步骤。