当前位置:首页 > 通信技术 > 通信技术
[导读]串口通信在系统控制的范畴中一直占据着极其重要的地位,在规格上越来越完善,应用也越来越广泛,使用串行通信的方式可以达到系统控制的目的。以往,要实现计算机的串口通信需要做大量复杂的工作,如今,Visual Basic

串口通信在系统控制的范畴中一直占据着极其重要的地位,在规格上越来越完善,应用也越来越广泛,使用串行通信的方式可以达到系统控制的目的。以往,要实现计算机的串口通信需要做大量复杂的工作,如今,Visual Basic 6.0(VB 6.0)在开发可视化环境下的监控系统时有其独特的优势,VB 6.0提供了串行通信控件,可以轻松实现串口数据的交换。本文介绍了基于VB 6.0的ActiveX控件——Microsoft Communication(MSComm)通信控件,实现了PC机对气压测高系统的串行通讯功能,完成了对多台气压测高设备进行数据采集

1 气压测高测试系统的基本构成

气压测高系统的基本构成如图1所示,由PC机、气压测高基准站以及气压测高接收机三部分组成。PC机通过RS 232接口以及USB-RS 232接口与一个气压测高基准站和多个气压测高接收机相连接。气压测高基准站和每个气压测高接收机通过选用不同的串口端口来区分,这样PC机就可以对基准站和每个接收机进行通信,实现对气压测高基准站以及接收机的数据采集。


采集到的数据主要用于以下分析:

(1)分析不同地点的气压值、温度值以及大地高度值。

(2)比较同一地点不同气压测高接收机测量的气压值、温度值以及大地高度值。

2 气压测高接收机的简介

气压测高接收机采用主要器件为:瑞士Intersema公司生产的集成压阻式压力传感器和ADC接口的SMD混合集成模块——MS5534C,微控制器选用ATmega8L单片机。气压测高接收机的硬件示意图如图2所示。其工作流程为:气压测高基准站将气象资料(基准站的气压、温度和高度)发送给ATmega8L,同时,ATmega8L采集MS5534C测得的接收机所在位置的气压和温度,利用相关的公式,解算出当地的大地高度,并发送给PC机。



3 VB 6.0中MSComm通信控件

VB 6.0增加了面向对象程序设计功能,它不仅可以方便快捷地编制适用于数据处理、多媒体等方面的程序,并且提供了一个ActiveX控件——Microsoft Communication Control,Version 6.0,称为MSComm控件,可以方便地开发出使用计算机串口的计算机通信程序。MSComm控件提供了两种处理通信的方式:一种为事件驱动方式,该方式相当于一般程序设计中的中断方式。当串口发生事件或错误时,MSComm控件会产生OnComm事件,用户程序可以捕获该事件进行相应处理。另一种为查询方式,在用户程序中设计定时或不定时查询MSComm控件的某些属性是否发生变化,从而确定相应处理。

利用MSComm控件实现计算机通信的关键是理解并正确设置MSComm控件众多属性和方法。以下是MSComm控件的常用属性和方法:

Commport:设置或返回串口号,类型short。

Settings:以字符串的形式设置或返回串口通信参数。

Portopen:设置或返回串口状态。

InputMode:设置或返回接收数据的类型。

Inputlen:设置或返回一次从接收缓冲区中读取字节数,类型short。

Input:从接收缓冲区中读取数据并清空该缓冲区,该属性设计时无效,运行时只读。

Output:向发送缓冲区发送数据,该属性设计时无效,运行时只读。

Rthreshold:当接收缓冲区中字符数达到该值时,MSComm控件设置Commevent属性为ComEvReceive,并产生OnComm事件。

Sthreshold:当发送缓冲区中字符数小于该值时,MSComm控件设置Commevent属性为ComEvSend,并产生OnComm事件。若Sthreshold属性设置为0,则不产生OnComm事件。

CommEvent:串口事件,该属性设计时无效,运行时只读。一旦串口发生通信事件或产生错误,依据产生的事件和错误,MSComm控件为CommEvent属性赋不同的代码,同时产生OnComm事件。用户程序就可在OnComm事件处理程序中针对不同的代码,进行相应的处理。
4 利用VB 6.0实现数据采集的串行通信

在VB 6.0编程环境下,新建工程并引用MSComm控件,在窗体中添加所需控件,构建一个合理的收发界面。在窗体中还需要添加以下几个基本控件:

(1)MSComm控件,主要用于软件对串口的访问。由于需要实现多台气压测高接收机的测试,需要添加多个控件。

(2)定时器控件,用于使PC机定时向各气压测高接收机发送命令,使其定时回传实时数据。

(3)非周期命令发送按钮,用于非周期性指令的传送启动。

(4)数据保存按钮,用于将采集到数据保存为文本文件,便于数据后处理。

(5)用于数据接收数据和发送数据的文本框。

首先,应对窗体中MSComm控件初始化设置:



每个气压测高接收机回传数据时即可以在PC机上引发各自的OnComm()事件,相互之间不存在数据干扰问题,数据采集后分别保存为文本文件,为后期数据处理提供原始数据。

5 结  语

本文介绍了VB 6.0的串行通信控件,分析了串口通信系统硬件构成和主要程序解决过程,有效提高了气压测高系统的测试效率,确保了数据采集的实时性和正确性。通过应用表明,数据采集准确,系统性能稳定,数据后处理方便。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭