微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 浅谈RS-485通信卡及其应用

浅谈RS-485通信卡及其应用

时间:11-30 来源:互联网 点击:
  本文介绍了RS-485通信卡方式的特点、使用方法以及在实际中求用VB5编程实现微机与单片机通信的方法和应注意的问题。

  在工业控制领域,数据采集与传输是经常性的工作,RS-485协议通信由于采用差分方式接收,对共模干扰抑制能力强,故广泛应用于工业控制领域。

  实现RS-485通信的两种方法

  智能仪表是随着80年代初单片机技术的成熟而发展起来的,现在世界仪表市场基本被智能仪表所垄断。究其原因就是企业信息化的需要,企业在仪表选型时其中的一个必要条件就是要具有联网通信接口。最初是数据模拟信号输出简单过程量,后来仪表接口是RS232接口,这种接口可以实现点对点的通信方式,但这种方式不能实现联网功能。随后出现的RS485解决了这个问题。

  微机标准通信适配器满足RS-232C协议标准,在波形畸变小于10%的条件下,最大传输距离为50英尺(约15.24米),最高传输速率小于20kbps,无法满足工业现场数据较远距离和较高速率传输的要求。微机要实现RS-485协议通信可以采用两种方法:第一种是采用RS-232C与RS-485转换接口装置;第二种是采用RS-485通信卡,插在微机主板扩展槽上。采用第一种方法的优点是硬件装置安装简单,软件编程相对简单;缺点中通信速率仍然限制在20kbps以内(RS-232C协议的限制)。第二种方法的优点是通信速率较高,可达921.6kbps;缺点是通信卡需安装在微机扩展槽上,软件需安装通信卡的驱动程序及进行必要的设置。

  RS-485通信卡的特点和连接方式

  RS-485通信卡的通信波特率由50bps至921.6kbps可选;通常每卡有两个通信口,各支持32个节点,共64个节点;软件环境支持DOS、WINDOWS95、WINDOWS NT。通信联接方式可以采用点对点半双工方式、点对点全双工方式、多点半双工方式和多点全双工方式。

  RS-485通信卡的应用

  安装驱动程序

  RS-485通信卡随卡带有驱动程序,第一次使用通信卡时须首选安装驱动程序,设置通信卡的I/O地址、中断号、通信口号等内容,以后系统运行时无需再次设置。

  VB通信软件的特性

  本例通信软件是采用VB5.0在WINDOWS95平台下实现的,数据以随机文件的形式存放。由于WINDOWS不支持对系统I/O端口的直接访问,因此在WINDOWS下实现串行通信的简便方法就是利用VB提供的通信软件MSComm。MSComm软件中几个最重要和最常用的属性是:CommPort 设置或返回通信端口的编号;其格式为:MSComm.Comm Port=n,其中no 1~99中的任何整数值。若这个端口不存在,当用PortOpen属性打开端口时,就会产生错误。

  Settings设置或返回波特率、数据位、停止位等参数。例如:MSComm1.Settings="9600,N,8,1"

  其中等号右边的参数中,每一部分表示通信波特率。第二部分为校验方式,N表示不校验;E表示偶校检;O表示奇校验;S表示空格校验;M表示符号校验。第三部分为数据位数。最后是停止位位数。

  PortOpen设置或返回通信口的状态,若为TRUE,打开通信口;若为FALSE,则关闭通信口。

  Input从接收缓冲区取出并返回字符串。

  Output向发送缓冲区写入字符。

  InBuffSize设置或返回接收缓冲区字节值。

  InputLen设置或返回从缓冲区读字符串时每次读出的字符串个数;若设置InputLen为0, 则读缓冲区时,一次读出整个缓冲区内容。

  结语

  RS-485通信卡以其具有较高的通信速率(921kbps)、较强的抗干扰能力和较低的价格,在工业控制领域具有较强竞争力,极具实用价值。笔者将RS-485通信卡成功地应用于微机与单片机数据采集系统的串行通信,微机侧采用VB编制通信及数据处理软件,单片机侧采用汇编语言编程。VB中采用CHR()函数进行数据转换是微机与单片机实现16进制数据通信的关键。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top