logo资料库

vs上位机开发教程.pdf

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
一、准备工作
二、串口通信常识
常用属性和方法
三、开发步骤(仅供参考)
四、源代码
五、程序中用到的几个函数解释:
HUBEI UNIVERSITY OF ARTS AND SCIENCE VB.NET 上位机开发 湖北文理学院物理与电子工程学院 10 自动化 胡志强
HUBEI UNIVERSITY OF ARTS AND SCIENCE 目录 一、准备工作.....................................................................................................................3 二、串口通信常识.............................................................................................................3 常用属性和方法.................................................................................................3 三、开发步骤(仅供参考)..................................................................................................4 四、源代码.........................................................................................................................9 五、程序中用到的几个函数解释:.................................................................................13
HUBEI UNIVERSITY OF ARTS AND SCIENCE 一、准备工作 一台装有 VS2010 的计算机,用于测试的虚拟串口软件。同时你必须具有 VB 基础知识, 这个 VB 上位机开发是入门级的,仅将 VB.NET 通信基础方法稍作介绍。 二、串口通信常识 在串口通信中,通过编写单片机程序知道,我们应对如下参数进行设置:波特率、数据 位和停止位、奇偶校验位。如果自己编写上位机的时候,我们考虑的不能仅仅是这些了,下 面介绍上位机开发过程中需要特别注意的知识点。 MSComm 控件提供了两种处理通信的方式:一种为事件驱动方式,该方式相当于一般程 序设计中的中断方式。当串口发生事件或错误时,MSComm 控件会产生 OnComm 事件,用户程 序可以捕获该事件进行相应处理。 常用属性和方法 利用 MSComm 控件实现计算机通信的关键是理解并正确设置 MSComm 控件众多属性和方 法。以下是 MSComm 控件的常用属性和方法: ●Commport:设置或返回串口号。其值从 COM1 到 COM16。 ●Settings:以字符串的形式设置或返回串口通信参数。 ●Portopen:设置或返回串口状态。 ●InputMode:设置或返回接收数据的类型。有文本和二进制两种类型。 ●Inputlen:设置或返回一次从接收缓冲区中读取字节数。 ●InBufferSize:设置或返回接收缓冲区的大小,缺省值为 1024 字节。 ●InBufferCount:设置或返回接收缓冲区中等待计算机接收的字符数。 ●Input:从接收缓冲区中读取数据并清空该缓冲区,该属性设计时无效,运行时只读。 ●OutBufferSize:设置或返回发送缓冲区的大小,缺省值为 512 字节。 ●OutBufferCount:设置或返回发送缓冲区中等待计算机发送的字符数。 ●Output:向发送缓冲区发送数据,该属性设计时无效,运行时只读。 ●Rthreshold:该属性为一阀值。当接收缓冲区中字符数达到该值时,MSComm 控件设置 Commevent 属性为 ComEvReceive,并产生 OnComm 事件。用户可在 OnComm 事件处理程序中进 行相应处理。若 Rthreshold 属性设置为 0,则不产生 OnComm 事件。例如用户希望接收缓冲 区中达到一个字符就接收一个字符,可将 Rthreshold 设置为 1。这样接收缓冲区中接收到 一个字符,就产生一次 OnComm 事件。 ●Sthreshold:该属性亦为一阀值。当发送缓冲区中字符数小于该值时,MSComm 控件设 置 Commevent 属性为 ComEvSend,并产生 OnComm 事件。若 Sthreshold 属性设置为 0,则不 产生 OnComm 事件。要特别注意的是仅当发送缓冲区中字符数小于该值的瞬间才产生 OnComm 事件,其后就不再产生 OnComm 事件。例如 Sthreshold 设置为 3,仅当发送缓冲区中字符数 从 3 降为 2 时,MSComm 控件设置 Commevent 属性为 ComEvSend,同时产生 OnComm 事件,如 发送缓冲区中字符始终为 2,则不会再产生 OnComm 事件。这就避免了发送缓冲区中数据未 发送完就反复发生 OnComm 事件。 ●CommEvent:这是一个非常重要的属性。该属性设计时无效,运行时只读。一旦串口发 生通信事件或产生错误,依据产生的事件和错误,MSComm 控件为 CommEvent 属性赋不同的 代码,同时产生 OnComm 事件。用户程序就可在 OnComm 事件处理程序中针对不同的代码,进 行相应的处理。
HUBEI UNIVERSITY OF ARTS AND SCIENCE 三、开发步骤(仅供参考) 1. 运行 VS2010,新建一个 Visual Basic 的 Windows 窗体应用程序项目。将窗体的 StartPosition 属性改为 CenterScreen,运行程序时,窗体在屏幕中央显示。
HUBEI UNIVERSITY OF ARTS AND SCIENCE 2. 由于默认情况下,通信所需的“Microsoft Communications Control,version 6.0” 组件不在工具箱里面,所以我们需要手动添加。单击左侧的工具箱,并在控件栏单击鼠 标右键,在弹出的菜单中选中“选择项”,在弹出的对话框中单击“COM 组件”并选中 “MicrosoftCommunications Control,version 6.0”,单击确定即可完成添加。
HUBEI UNIVERSITY OF ARTS AND SCIENCE 此时移动鼠标到窗体上时,鼠标箭头就会变成电话的形状,在窗体任意位置单击放置该控件。
HUBEI UNIVERSITY OF ARTS AND SCIENCE 3. 单击工具箱,在窗体上添加 5 个 Label,并在属性里将 Text 属性依次改为:串口号、波 特率、校验、数据位、停止位。再向窗体上添加 5 个 ComboBox,从上到下依次排列。 4. 向窗体添加一个 OvalShape 和一个 Button。将 OvalShape 的 size 属性改为“24,24”, FillStyle 改为 Solid。 5. 向窗体添加一个 CheckBox、一个按钮 Button 和一个 TextBox,将 CheckBox 的 Text 属 性改为“十六进制发送”将这个按钮的 text 属性改为“发送”。 6. 向窗体添加一个 Label 和一个 TextBox。更改 Label 的 Text 属性为“接收区”。 7. 向窗体添加一个 CheckBox,将其 Text 属性改为“十六进制显示” 界面布局 下面将要对部分控件进行设置,这样可以减少代码的长度 将波特率一栏 ComboBox 的 Item 属性中添加如下内容:
HUBEI UNIVERSITY OF ARTS AND SCIENCE 将校验一栏 ComboBox 的 Item 属性中添加如下内容 将数据位一栏 ComboBox 的 Item 属性中添加如下内容 将波特率一栏 ComboBox 的 Item 属性中添加如下内容
分享到:
收藏