收藏 分享(赏)

labview__串口通信实现过程.doc

上传人:weiwoduzun 文档编号:2891198 上传时间:2018-09-29 格式:DOC 页数:28 大小:2.60MB
下载 相关 举报
labview__串口通信实现过程.doc_第1页
第1页 / 共28页
labview__串口通信实现过程.doc_第2页
第2页 / 共28页
labview__串口通信实现过程.doc_第3页
第3页 / 共28页
labview__串口通信实现过程.doc_第4页
第4页 / 共28页
labview__串口通信实现过程.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、Labview 实现串口通信步骤1.在程序面板上添加 VISA 配置接口2.添加后,开启帮助文档的显示。菜单的Help-show context help,如下图鼠标选择目标则会显示帮助框。如下图所示。3.创建相应的配置在程序面板中鼠标移动到对应的引脚上,点击鼠标右键-create-control,创建后,界面面板上会出现对应的控制框。如下图所示,创建个 VISA resource name。图 0-1 创建窗口选择控件前面板显示如下:图 0-2 前面板显示控件选择4 依次创建,波特率、停止位、数据位等如下图所示。5.创建个 while 循环,用于放置发送的程序鼠标移动到循环条件控制的引脚上,

2、创建个 control。用于调试,不对条件处理,会报错。6 前面板放置个按钮,用于控制数据的发送7.创建个事件,用于响应发送按钮鼠标移动到 timeout 的位置,鼠标右键选择 edit events如下图所示。操作上面后,出现如下界面:选择需要响应的控件,这里选择“ok button”,选择鼠标按下。点击 ok 后,事件的名称也变化了。如下图所示。如果鼠标点击按键,则会进入事件处理。8 创建 VISA 写函数9 连接端口和写函数10 添加个关闭函数11.创建字符串控件,传递给写函数,用于发送选中 VISA Write 的 write buffer,右键 create-control,12 界

3、面如下所示13.安装虚拟串口,提供一个下载地址http:/ Add pair。14 运行串口工具,提供一个下载地址http:/ VI,发送数据我的电脑配置的是 COM12 和 COM13,vi 选择 COM12.运行 VI,在 write buffer 里面填写 test,点击 OK 发送。每点击一次,发送一次。16.建立接收模块添加个 while 循环,创建 while 循环,用于接收。创建 VISA Read,在 Read buffer 引脚上点击鼠标右键create-indicator,建立个显示控件。使能串口事件,添加个 VISA Enable Event.17 在 VISA Enab

4、le Event 的 event type,创建个常量然后在常量的下拉列表中选择 Serial Character。这个表示串口接收到数据,可以进入帮助文档查看详细的说明。18.创建事件等待19.连接事件,等待事件的类型直接连接在 VISA Enable Event 的 Event type 即可。20.添加个属性节点,Visa Bytes at serial port,获取串口中的字节数连接字节数,这样告诉需要读取的字节数。也能保证每次都把串口中的数据读完。21.添加个 case 结构如果字节数大于 0,那么读取数据并显示。事件的超时时间设置为 1000ms。22.运行效果23.调整下界面2

5、4 程序无法结束按理说,点击两个 stop 按键,程序应该结束才对,但是事实不是这样的。点击之后会卡住哪?发送循环中,事件是一直等待按键的时间处理。即使点击 stop 后程序也会等待按键的处理,现象是:点击两个结束按钮后,还需要点击一次发送“ok 按钮”才能结束程序。处理办法:在发送按钮事件创建个超时处理。1. 如下图所示,中事件的超时时间设置 1000ms 的常量2. 将鼠标放置在图中的红框中,点击鼠标右键,选择 Add Event Case3. 添加应用超时判断,如下图所示。选择点击 ok添加后如下:这样运行程序中,点击两个 STOP 按钮后就可以结束程序了。25.使用一个按钮来结束程序删

6、除 stop 和 STOP2 按钮,在界面面板上添加个结束按键,如下图所示。鼠标移动到按键上,右键,创建 stop 按钮的 value 属性节点,如下图所示。创建两个结束按键的 value 属性节点,连接在循环条件上。但是注意上面图中,连接线后,是错误的。处理办法如下:修改按键的行为,默认是第二排第二个,修改为上面第一个即可。26 优化 1 后的结果运行程序后,点击一下 stop,程序就结束了。27.优化显示框28 将接收的字符追加显示添加一个移位寄存器,将鼠标移动到 while 循环的左右边界上,点击鼠标右键,选择addshift Register 如下图所示。添加一个字符串连接函数,如下图

7、所示。连接线路,如下图所示:这样程序是错误的:点击下图所示,可以查看错误的地方,提示。问题是在,添加了移位寄存器,然后两边的值连接经过 case 结构,我们只连接了 True 情况,False 情况还没处理。连接 false 下面的线路,如下图所示。29 优化 2 运行效果30.添加滚动条鼠标移动到显示框上右键,选择属性。界面如下。选中 Show Vertical scroll bar,显示框的滚动条就出来了,点击 ok。31 还有一问题,接收数据中,滚动条不会跟着动处理办法是,设置滚动条的位置。创建滚动条位置属性节点,Scroll Position.鼠标移动到属性节点上,右键,选择 Chan

8、ge to Write。那么控制的引脚方向转到前面了。然后创建个常量 1000,如下图所示。这样呢,接收的字符显示的行数在 1000 以内,那么都会定位刚接收的字符位置。32 点击 stop 后,再运行程序的时候,stop还是那个状态处理办法是在初始化过程中,对 stop 的按键值进行初始化。创建 stop 的 value 属性节点。如下图所示。33.累加接收的字符数并显示创建个移位寄存器,连接 VISA Read 的 Return count,与上一次的值相加,再传给移位寄存器,作下一次使用,并显示相加的数字。34 优化 3 后35 可以对接收字符数判断,超过多少字符数后就清空显示框,重新开始显示处理办法是:对字符数做个判断,如果超过多少,加个 case 结构,超了就赋值个空字符串,未超就追加。这个是初学做的记录,也希望能帮助到大家。有疑问或建议可以发送到,大家交流下。.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 经营企划

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报