搜档网
当前位置:搜档网 › 基于串口通信的实时数据采集

基于串口通信的实时数据采集

龙源期刊网 https://www.sodocs.net/doc/3f7828962.html,

基于串口通信的实时数据采集

作者:罗林

来源:《硅谷》2013年第01期

摘要:介绍一种用于简易天线近场测量诊断系统的实时数据采集方法。首先论述串口通信的基本原理,随后结合VB语言介绍基于轮询和事件驱动的两种编程方法,并给出编程实例,最后讨论用于实时采集系统的最佳串口通信方式。

关键词: MSComm;串口通信;轮询;事件驱动

0 前言

串口编程有很多种方法,如MSComm控件、Windows API函数、直接端口读写和DOS下的访问。Visual Basic由于编程功能强大,提供了专为串口通信定制的MSComm控件,实现串口通信更加简单。本文主要针对一套简易天线近场测量诊断系统采用VB6.0编程时,分别使用两种串口通信的查询方式进行了比较。

1 串口通信

串口通信由于使用简便灵活,且大多数的PC都至少有一个RS-232端口,因此在计算机

监控和数据传输等方面得到了广泛的应用。

目前,大多数的PC机串口使用一个9针插入式D-sub连接器,也称为DB-9,见图1所示。

图1 RS-232 DB-9连接器

表1 插针DTE使用的9个信号线

当采用两台PC机直接简单互联时,只需要TD、RD、GND 3个基本信号即可。但注意需要交换RD和TD,即连接电缆的DTE和DCE 2、3引脚要进行交换,否则无法进行发送/接收通信。引脚连接图见图2。

图2

2 Visual Basic中的轮询与事件驱动

在串行通信中,发送者或者驱动器依次每次只发送一位数据。串行传输中的数据位可以代表所有的信息,这些信息可以编码成文本数据、2进制、10进制和16进制ASCII码。在实际应用中,我们需要实时检测一个串行端口所引发的事件,从而判断这个事件所包含的信息。通

相关主题