串口通讯及其在VB平台下的实现

2016-01-29 12:06 51 1 收藏

串口通讯及其在VB平台下的实现,串口通讯及其在VB平台下的实现

【 tulaoshi.com - vb 】

  摘要:本文首先介绍串行通讯的基础知识,然后结合示例剖析在VB平台下的串口通讯的编程技巧。

  随着计算机系统的普及与外围设备技术的发展,计算机与外围设备之间的通讯就显得越来越重要了。由于串行通信是在一根传输线上一位一位的传送信息,所用的传输线少,并且可以借助现成的电话网进行信息传送,因此,特别适合于远距离传输。对于那些与计算机相距不远的人-机交换设备和串行存储的外部设备如终端、打印机、逻辑分析仪、磁盘等,采用串行方式交换数据也很普遍。在实时控制和管理方面,采用多台微机处理机组成分级分布控制系统中,各CPU之间的通信一般都是串行方式。所以串行接口是微机应用系统常用的接口,而相应的应用程序也成为今年来研究的热点。本文旨在阐述一般的穿口通讯的原理及其程序设计,希望借此能够抛砖引玉,为更深入的研究打下一定的基础。

  一、串行通讯的基本原理

  所谓"串行通信"是指外设和计算机间使用一根数据信号线,数据在一根数据信号线上按位进行传输,每一位数据都占据一个固定的时间长度。这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,当然,其传输速度比并行传输慢。相比之下,由于高速率的要求,处于计算机内部的CPU与串口之间的通讯仍然采用并行的通讯方式,所以串行口的本质就是实现CPU与外围数据设备的数据格式转换(或者称为串并转换器),即当数据从外围设备输入计算机时,数据格式由位(bit)转化为字节数据;反之,当计算机发送下行数据到外围设备时,串口又将字节数据转化为位数据。

  二、串口通讯的程序设计原理

  前面介绍了串行通讯的基本原理,那么如何在程序设计中实现它呢?事实上,这个过程并不复杂,一般有两种实现途径:其一就是使用MSCOMM控件,此控件提供很多方便操作的属性和方法,利用它们可以很方便地实现你的目的;另外一种途径就是使用Windows API,微软为开发者提供了很多相关的串行操作的编程接口,使用这些接口,可以很完成更为强大的功能。限于篇幅以及本文的宗旨,这里着重介绍第一种方法,第二种方法实际思路与第一种方法一样,不同的是它利用API函数代替了控件。

  无论使用哪一种途径,其基本的操作步骤大致一样的:首先初始化串口,比如端口号,波特率等属性,然后打开端口,通过接受缓冲区读上行数据,通过发送缓冲区来写下行数据。最后通过事件驱动来反映数据的到达与发送过程,另外在通讯过程中的错误的产生也可以通过CommEvent属性来管理。


来源:http://www.tulaoshi.com/n/20160129/1484614.html

延伸阅读
VB作为一种面向对象的Windows应用程序的开发软件,以其功能强大和简单易用的编程手段受到广大编程人员的喜爱。VB中提供了许多用于Windows程序设计的控件和大量的函数,本文就将告诉您怎样利用VB中的函数来实现邮件传输的功能。 首先我们在服务器上按照不同的帐号建立了不同的工作目录,采用NFS协议将多台PC终端连接到服务器。这样,邮件发送...
标签: 服务器
Windows平台下Git服务器搭建   第一步:下载Java 第二步:安装Java.安装步骤不再详述。 第三步:配置Java环境变量. 右键计算机 = 属性 = 高级系统设置 = 高级 = 环境变量 = 系统变量。 新建: 变量名:JAVA_HOME 变量值:D:/Program Files (x86)/Java/jdk1.6.0_21 2. 新建: 变量名...
应为工作需要自己编写的RS232通讯模块,该模块已经编写了蛮久,在实际使用中可能有没有考虑和不完善的地方。 //================================================================================= //如果使用该模块请保留该注释,如果被修改或编辑请将修改后的代码发送一份给我 //编写:戴琪英 //E_Mail:qiyingdai@...
在VB编程中,应用程序窗体的出现和关闭一般都是静态的,不过,我们利用下面的一个API函数AnimateWindow就可以轻松实现窗体的动态效果。 API函数AnimateWindow的声明如下: Private Declare Function AnimateWindow Lib "user32" (ByVal hwnd As Long, ByVal d...
串行通讯是目前计算机、通信和控制领域最基本的通信方式。在CSDN的“嵌入式开发/WINCE”社区中,经常有人提问该到哪找串口通讯类,其实这个问题我自己也问过。:)而一般的回答是给你提供一个Pocket PC 2002的SDK例子程序。但到底SDK的程序和MFC的结构有很大的不同,对于想用MFC编写通信程序的人来说也不是很便利。 另一方面,由于W...

经验教程

159

收藏

59
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部