VB编写上位机(MSComm控件)

VB编写上位机(MSComm控件)

ID:40550098

大小:331.79 KB

页数:7页

时间:2019-08-04

VB编写上位机(MSComm控件)_第1页
VB编写上位机(MSComm控件)_第2页
VB编写上位机(MSComm控件)_第3页
VB编写上位机(MSComm控件)_第4页
VB编写上位机(MSComm控件)_第5页
资源描述:

《VB编写上位机(MSComm控件)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、上位机可方便地实现与单片机之间进行信息传递交互,能够更加容易对机械手臂进行控制,实现操作可视化,更加直观,保存重要数据等功能。我们利用VisualBasic6.0(以下简称VB)来编制上位机,VB是一种功能强大、简单易学的程序设计语言。它不但保留了原先Basic语言的全部功能,而且还增加了面向对象程序设计功能。它不仅可以方便快捷地编制适用于数据处理、多媒体等方面的程序,而且利用ActiveX控件MSComm还能十分方便地开发出使用计算机串口的计算机通信程序。本实验涉及控制六路舵机,所以需要编制上位机实现一次向下位机传输含有六个数据的数组,同时接受来自下位机的数组,并显示。整个过程

2、可分为如下几个过程:一:VB是面向对象的语言,首先需要绘制程序界面该上位机大致分为左边的功能部分与右边的可视化调节部分。功能部分有端口选择,用以选择合适的端口进行串口通信,波特率选择,打开与关闭端口,动作设置等。为了便于布局,应用frame控件建立区域,再将控件拖到frame区域中,对于功能相同的控件来说,建立控件组的方式会使编程避免重复繁琐,例如HScrollbar控件,先向frame区域内拖入一个HScrollbar控件,再复制,粘贴到frame区域内部,则提示是否建立控件组,点击确定即可。这样便为后续编程带来很大的方便。调节部分运用Hscrollbar控件来粗略调节度数,设

3、定按钮与文本框配合来精确调节输出度数。用右列文本框实时读取舵机当前角度。用optionbutton控件来选择hscrollbar的步进精度,这里分为0.1度与1度两个不同的选项。由于一组optionbutton中在程序运行中只能有一个处于选中状态,根据本程序要求,每一横列的两个optionbutton为一组,这样就需要frame控件,在同一个frame区域里的optionbutton默认为一组。这样就可以如上图所示的状态显示,否则真能选中其中的一个。端口与波特率的选择应用combobox控件。指示灯部分则用picturebox控件添加两个图片,分别为红灯与黑灯,用以显示端口的开关

4、状态。每个MSComm控件对应于一个串行端口。使用多个串行口时,要使用多个MSComm控件。MSComm控件的主要属性及说明如下。“工程”——“部件”,选中MicrosoftCommcontrol6.0,“确定”,完成MSComm控件的添加。二:在完成了界面的绘制后,就需要对部分的控件的初始属性进行设置。并输入相应的程序代码。属性说明CommPort设置并返回通信端口号以字符串的形式设置并返回波特率、奇Settings偶校验、数据位、停止位设置并返回通信端口的状态。也可以打PortOpen开和关闭端口Input从接收缓冲区返回字符Output向传输缓冲区写一个字符有两种处理通信的

5、方式:(1)事件驱动。利用OnComm事件捕获并处理通信事件,所有的通信事件和通信错误列表都包含在控件的CommEvent属性中。(2)查询方式。在程序关键功能之后,通过检查CommEvent的值来查询事件和错误。添加MScomm控件,并在窗体装入时进行初始化PrivateSubForm_Load()MSComm1.CommPort=1’端口选择1MSComm1.Settings="9600,N,8,1’定义数据传输协议,与下位机要保持一致。波特率9600,无奇偶验证,8个数据位,一个停止位。MSComm1.InputMode=1'数据传输为二进制方式MSComm1.InBuff

6、erCount=0'清空接受缓冲区MSComm1.RThreshold=1'产生MSComm事件IfMSComm1.PortOpen=FalseThenMSComm1.PortOpen=True'打开串口EndIfEndSub为随时判断端口是否开启,并用黑红等来显示当前状态,运用timer控件,将interval设置为100,双击控件并输入如下代码。则程序每隔100ms执行一次下面的程序。PrivateSubTimer2_Timer()IfMSComm1.PortOpen=tureThenPicture1.Visible=TruePicture2.Visible=False’对应

7、红灯图片显示,黑灯图片不显示。ElsePicture2.Visible=TruePicture1.Visible=False’对应黑灯图片显示,红灯图片不显示。EndIfEndSub运用combobox控件来选择端口,波特率等MSComm的setting值,双击控件后输入如下代码PrivateSubCombo1_Click()IfCombo1.Text="COM1"ThenMSComm1.CommPort=1ElseIfCombo1.Text="COM2"ThenMSComm1.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。