您当前的位置: 核心期刊论文发表咨询网理工论文》基于VB6.0的MSComm通信方法设计评职称论文发表

基于VB6.0的MSComm通信方法设计评职称论文发表

来源:核心期刊论文发表咨询网 所属分类:理工论文 点击:次 时间:2013-09-26 13:55

  摘要:本文介绍了基于VB6.0的MSComm串行通信设计方法,并给出了计算机与智能采集模块进行通信的程序设计的框架。

  关键词:串行通信,vb6.0,MSComm,理工职称论文发表范文参考

  1 前言

  在工业控制领域,我们经常需要进行计算机与其他设备之间的通信,而串行通信作为一种灵活、方便、可靠的通信方式被广泛采用。在开发串行通信程序的过程中,利用微软的MSComm通信控件则相对较简单,该控件具有丰富的与串行通信密切相关的属性及事件,提供了对串口的各种操作。MSComm控件在串口编程时非常方便,程序员不必花时间去了解较为复杂的API函数,而且在VB中容易使用。

  2 用visual basic 6.0进行串行通信程序设计的方法

  (1) 用visual basic 6.0进行串行通信程序的设计有两种方式,一是直接调用Windows API,另一种方式是使用通信组件,但后一种方式实际上是通过通信组件间接的调用了Windows API函数,其过程要比直接调用API要复杂,但是在程序的实现上要比前一种方式简单的多。在操作系统方面,Windows使用通信驱动程序Comm.drv,以便于应用程序能够使用标准的Windows API函数来传递和接收数据。串行外围设备的制造商则提供硬件驱动程序,以便让其硬件能与Windows连接。使用MSComm控件时,实际上就是使用了API函数,API函数将被Comm.drv解释并传送给外围设备驱动程序,使用MSComm的用户只需要关心如何使用MSComm所提供的属性或事件,以驱动API函数的接口完成工作。

  串行通信程序的执行过程

  (2) MSComm提供了两种处理通信问题的方法,一是事件驱动方法,一是查询法。

  ①事件驱动法

  在使用事件驱动法设计程序时,每当有新字符到达或端口状态改变,或发生错

  误时,MSComm控件将触发OnComm事件,而应用程序在捕获该事件后,通过检查MSComm控件的CommEvent属性可以获知所发生的事件或错误,从而采取相应的操作。这种方法的优点是程序响应及时,可靠性高。

  ②查询法

  查询法适合于较小的应用程序,在这种情况下,每当应用程序执行完某一串行口操作后,将不断检查MSComm控件的CommEvent属性,以检查执行结果或检查某一事件是否发生。

  (3) 串行通信的两种格式

  进行串行通信时有两种传输方式:

  ①字符形式:通常以小于ASCII码128的字符码来传递,通常用于传送指令。

  ②二进制形式:将数据以二进制编码的方式传递,它可能含有ASCII码128以上的字符码,通常用来传送数据,以提高速度。

  3.串行通信实例

  下面给出在Win2000下利用VB6.0的MSComm控件开发计算机与一智能采集模块进行串行通信的程序实现。在工控领域内,智能采集模块有着相当重要的地位,它可以通过串口通讯协议(RS232、RS485等)或其他通讯协议与PC机相连,并与外界现场信号直接相连或与由传感器转换过的外界信号相连,由PC机中的程序控制并实现采集现场的模拟信号,并处理采集到的现场信号并输出模拟控制信号、开关量输入输出等功能。因此,智能采集模块在工业控制领域内有着极其广泛的应用。本例子中的智能采集模块与计算机进行通信时,采用一位开始位、一位停止位、7位数据位、偶校验方式,波特率为9600bps.

  (1)在窗体中添加名为MyComm的MSComm控件,并设置空间的属性,如下:

  .CommPort=2 ‘使用COM2

  .Setting=”9600,e,7,1” ‘波特率9600,偶校验,7个数据位,1个停止位

  .InBufferSize=40 ‘设置MyComm接收缓冲区为40个字节

  .OutBufferSize=2 ‘设置MyComm发送缓冲区为2个字节

  .InputMode=comInputModeBinary

  ‘设置接收数据模式为二进制模式

  .InputLen=1 ‘设置一次从接收缓冲区读取字节数为1

  .Sthreshold=1 ‘设置一次从发送缓冲区读取字节数为1

  .PortOpen=True ‘打开通信口

  ‘其他属性设置省略

  (2)下面是响应Mycomm_OnComm事件的处理程序,对数据库采集的处理程序采用MSComm事件驱动方式。

  Private Sub MyComm_OnComm()

  With MyComm

  Select case .CommEvent

  Case .comEvReceive

  ‘ 接收数据

  ‘ 对数据进行处理

  case .comEVSend

  ‘发送数据

  case .comEventRxParity

  ‘对奇偶校验错误进行处理

  end select

  end with

  end sub

  4.结束语

  本文结合实例介绍了基于VB6.0的MSComm串行通信设计方法。

  参考书目:

  1、 范逸之等.利用Visual Basic 实现串并行通信技术

  清华大学出版社 2001.3

  2、 黄淼云等.Visual Basic控件高手

  北京希望电子出版社 2001.1

  3、 范逸之等.Visual Basic与RS-232串行通信控制最新版

  中国青年出版社 2002.1

转载请注明来自:http://www.lunwencheng.com/lunwen/lig/1761.html

各行业核心期刊快速入口

医学类核心期刊汇总
口腔核心期刊
卫生核心期刊
药学核心期刊
眼科核心期刊
儿科核心期刊
医学核心期刊
兽医核心期刊
外科核心期刊
护理核心期刊
临床核心期刊
教育类核心期刊汇总
小学教育核心期刊
中学教育核心期刊
高等教育核心期刊
职业教育核心期刊
成人教育核心期刊
人文教育核心期刊
科学教育核心期刊
教育核心期刊
教学核心期刊
教育管理核心期刊
学科类核心期刊汇总
语文核心期刊
数学核心期刊
外语核心期刊
化学核心期刊
物理核心期刊
历史核心期刊
政治核心期刊
体育核心期刊
艺术核心期刊
法律核心期刊
经济类核心期刊汇总
市场经济核心期刊
经济核心期刊
金融核心期刊
财经核心期刊
审计核心期刊
旅游核心期刊
统计核心期刊
会计核心期刊
农业类核心期刊汇总
畜牧核心期刊
农业核心期刊
林业核心期刊
工业类核心期刊汇总
机械核心期刊
冶金核心期刊
电力核心期刊
铁路核心期刊
电气核心期刊
工业核心期刊
石油核心期刊
环境类核心期刊汇总
电力核心期刊
水利核心期刊
能源核心期刊
地质核心期刊
化工核心期刊
环境核心期刊
气象核心期刊
地理核心期刊
建筑类核心期刊汇总
测绘核心期刊
测量核心期刊
建筑核心期刊
交通类核心期刊汇总
铁路核心期刊
公路核心期刊
交通核心期刊
运输核心期刊
汽车核心期刊
轨道核心期刊
科技类核心期刊汇总
电子核心期刊
科技核心期刊
计算机核心期刊
其他类核心期刊汇总
管理核心期刊
档案核心期刊
心理核心期刊
政法核心期刊
文学核心期刊