labview串口通信实现过程文档格式.docx

上传人:b****2 文档编号:5345541 上传时间:2023-05-05 格式:DOCX 页数:25 大小:2.14MB
下载 相关 举报
labview串口通信实现过程文档格式.docx_第1页
第1页 / 共25页
labview串口通信实现过程文档格式.docx_第2页
第2页 / 共25页
labview串口通信实现过程文档格式.docx_第3页
第3页 / 共25页
labview串口通信实现过程文档格式.docx_第4页
第4页 / 共25页
labview串口通信实现过程文档格式.docx_第5页
第5页 / 共25页
labview串口通信实现过程文档格式.docx_第6页
第6页 / 共25页
labview串口通信实现过程文档格式.docx_第7页
第7页 / 共25页
labview串口通信实现过程文档格式.docx_第8页
第8页 / 共25页
labview串口通信实现过程文档格式.docx_第9页
第9页 / 共25页
labview串口通信实现过程文档格式.docx_第10页
第10页 / 共25页
labview串口通信实现过程文档格式.docx_第11页
第11页 / 共25页
labview串口通信实现过程文档格式.docx_第12页
第12页 / 共25页
labview串口通信实现过程文档格式.docx_第13页
第13页 / 共25页
labview串口通信实现过程文档格式.docx_第14页
第14页 / 共25页
labview串口通信实现过程文档格式.docx_第15页
第15页 / 共25页
labview串口通信实现过程文档格式.docx_第16页
第16页 / 共25页
labview串口通信实现过程文档格式.docx_第17页
第17页 / 共25页
labview串口通信实现过程文档格式.docx_第18页
第18页 / 共25页
labview串口通信实现过程文档格式.docx_第19页
第19页 / 共25页
labview串口通信实现过程文档格式.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

labview串口通信实现过程文档格式.docx

《labview串口通信实现过程文档格式.docx》由会员分享,可在线阅读,更多相关《labview串口通信实现过程文档格式.docx(25页珍藏版)》请在冰点文库上搜索。

labview串口通信实现过程文档格式.docx

鼠标移动到循环条件控制的引脚上,创建个control。

用于调试,不对条件处理,会报错。

6前面板放置个按钮,用于控制数据的发送

7.创建个事件,用于响应发送按钮

鼠标移动到timeout的位置,鼠标右键选择editevents…如下图所示。

操作上面后,出现如下界面:

选择需要响应的控件,这里选择“okbutton”,选择鼠标按下。

点击ok后,事件的名称也变化了。

如果鼠标点击按键,则会进入事件处理。

8创建VISA写函数

9连接端口和写函数

10添加个关闭函数

11.创建字符串控件,传递给写函数,用于发送

选中VISAWrite的writebuffer,右键create->

control,

12界面如下所示

13.安装虚拟串口,提供一个下载地址

用虚拟串口配置两个端口,配置好后,这两个串口之间是自动连接上,模拟硬件上两个串口对接上的。

如上图,指定好端口,点击Addpair。

14运行串口工具,提供一个下载地址

15.运行串口工具,打开串口,运行VI,发送数据

我的电脑配置的是COM12和COM13,vi选择COM12.

运行VI,在writebuffer里面填写test,点击OK发送。

每点击一次,发送一次。

16.建立接收模块

添加个while循环,

创建while循环,用于接收。

创建VISARead,在Readbuffer引脚上点击鼠标右键create->

indicator,建立个显示控件。

使能串口事件,添加个VISAEnableEvent.

17在VISAEnableEvent的eventtype,创建个常量

然后在常量的下拉列表中选择SerialCharacter。

这个表示串口接收到数据,可以进入帮助文档查看详细的说明。

18.创建事件等待

19.连接事件,等待事件的类型直接连接在VISAEnableEvent的Eventtype即可。

20.添加个属性节点,VisaBytesatserialport,获取串口中的字节数

连接字节数,这样告诉需要读取的字节数。

也能保证每次都把串口中的数据读完。

21.添加个case结构

如果字节数大于0,那么读取数据并显示。

事件的超时时间设置为1000ms。

22.运行效果

23.调整下界面

24程序无法结束

按理说,点击两个stop按键,程序应该结束才对,但是事实不是这样的。

点击之后会卡住哪?

发送循环中,事件是一直等待按键的时间处理。

即使点击stop后程序也会等待按键的处理,现象是:

点击两个结束按钮后,还需要点击一次发送“ok按钮”才能结束程序。

处理办法:

在发送按钮事件创建个超时处理。

1.如下图所示,中事件的超时时间设置1000ms的常量

2.将鼠标放置在图中的红框中,点击鼠标右键,选择AddEventCase..

3.添加应用超时判断,如下图所示。

选择点击ok

添加后如下:

这样运行程序中,点击两个STOP按钮后就可以结束程序了。

25.使用一个按钮来结束程序

删除stop和STOP2按钮,在界面面板上添加个结束按键,如下图所示。

鼠标移动到按键上,右键,创建stop按钮的value属性节点,如下图所示。

创建两个结束按键的value属性节点,连接在循环条件上。

但是注意上面图中,连接线后,是错误的。

处理办法如下:

修改按键的行为,默认是第二排第二个,修改为上面第一个即可。

26优化1后的结果

运行程序后,点击一下stop,程序就结束了。

27.优化显示框

28将接收的字符追加显示

添加一个移位寄存器,将鼠标移动到while循环的左右边界上,点击鼠标右键,选择addshiftRegister如下图所示。

添加一个字符串连接函数,如下图所示。

连接线路,如下图所示:

这样程序是错误的:

点击下图所示,可以查看错误的地方,提示。

问题是在,添加了移位寄存器,然后两边的值连接经过case结构,我们只连接了True情况,False情况还没处理。

连接false下面的线路,如下图所示。

29优化2运行效果

30.添加滚动条

鼠标移动到显示框上右键,选择属性。

界面如下。

选中ShowVerticalscrollbar,显示框的滚动条就出来了,点击ok。

31还有一问题,接收数据中,滚动条不会跟着动

处理办法是,设置滚动条的位置。

创建滚动条位置属性节点,ScrollPosition.

鼠标移动到属性节点上,右键,选择ChangetoWrite。

那么控制的引脚方向转到前面了。

然后创建个常量1000,如下图所示。

这样呢,接收的字符显示的行数在1000以内,那么都会定位刚接收的字符位置。

32点击stop后,再运行程序的时候,stop还是那个状态

处理办法是在初始化过程中,对stop的按键值进行初始化。

创建stop的value属性节点。

33.累加接收的字符数并显示

创建个移位寄存器,连接VISARead的Returncount,与上一次的值相加,再传给移位寄存器,作下一次使用,并显示相加的数字。

34优化3后

35可以对接收字符数判断,超过多少字符数后就清空显示框,重新开始显示

处理办法是:

对字符数做个判断,如果超过多少,加个case结构,超了就赋值个空字符串,未超就追加。

这个是初学做的记录,也希望能帮助到大家。

有疑问或建议可以发送到,大家交流下。

tangbinjob@.

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

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2