VB数据采集模块的应用程序设计(3)
时间:2022-04-17 17:39 来源:毕业论文 作者:毕业论文 点击:次
1。2 设计目的 本次设计通过研究 Visual Basic 编程语言下的串口通讯编程技术,对使用 Visual Basic 实现串口通讯、数据采集等方面功能进行了初步的掌握,使用 API 函数实现了基于 PC 机串口的应用程序设计。部分掌握了泓格系列数据采集模块 工作原理、相关命令格式与参数,并以泓格系列中的两个数据模块为例,编写出 了具有通讯端口设置、模块检索、模块设置等功能的程序。 本科毕业设计说明书 第 3 页 2 串口通讯与实现方法 2。1 串口简介 串口通讯(Serial Communication)是指通过数据信号线、地线等,将数据在外 设与计算机之间按位进行传输的一种通讯方式,其在系统控制工程中一直占据着 极其重要的地位。通讯端口按位(bit)对字节进行发送和接收,这就使得串口通讯 较之并行通信的传输速率有着较大的降低,但是串口通讯较为简单,抗干扰能力 强,也能够实现较远距离的通信。串口通讯端口多用 ASCII 码传输字符,且是 异步的,使其能够在一根线上发送数据的同时通过另一根线接收数据。用于串口 通讯的端口有许多参数,但只有以下参数互相匹配时,端口之间才能正常通信: (1) 波特率:指单位时间内载波参数的变化次数,即每一秒钟串行接口所传 送的数据位数,单位为 bps(bit/s)。波特率越高通信距离越短,高波特率 只能用于距离较近的通信场合,工业场合常用 9600 bps; (2) 数据位:工业场合常用的字符码为 ASCII 与 JIS 两种字符码。标准的 ASCII 码表使用 0 至 127 分别表示一个字符,所以只需 7 位二进制数即 可将整个 ASCII 码表一一对应起来;扩展后的 ASCII 码表使用了 0 至 255 表示字符,故需要 8 位。一般来说工业场合使用的 PLC 只需传送文字码, 故只需 7 个数据位即可,但也应根据实际情况选定; (3) 起始位与停止位:异步串口通讯中由于不存在同步时钟,故需要对数据 的起始与终止进行明确,接收端才能正常接收传送的指令。起始位固定 为 1 位,停止位可选 1、1。5、2 位三种,一般在不需要连续传输数据的 场景可以不设置起始位; (4) 校验位:串口通信中有奇校验、偶校验两种校验方式,其作用是检查发 送数据的完整性与准确性。如果设定了串口的校验位,则经由串口发送 的数据将在最后一位多出一位校验位用以进行奇、偶校验,接收设备只 需校验校验位即可判断所传数据的完整性与准确性。 第 4 页 本科毕业设计说明书 2。2 实现方法 2。2。1使用 MSComm 控件 在 Visual Basic 中,对串口通讯端口的控制是较为简便的,开发人员可以轻 松地使用 Windows 自带的驱动程序。串口通讯控件 MSComm32。ocx 封装了进行 串口通讯所需的所有必要函数,使用这一控件可以实现数据采集模块、通信模块 同计算机之间的通信与数据交换。这一控件的使用主要有以下两种方式: (1) 事件驱动方式:在大部分情况中,通信端口产生特定事件时,程序能够 通过这一控件对这些事件以及通信错误进行检测,并通过预先输入的事 件处理代码在事件发生时对通信事件与错误进行处理; (2) 轮询方式:这一控件可以对其 CommEvent 属性值进行轮询,以此方式获 知通信事件与错误。这一方式适用于体积较小、功能较为简单的应用程 序,同时其功能较为单一。 (责任编辑:qin) |