RS-485通信卡及其应用

发布者:创新火花最新更新时间:2006-05-07 来源: 电子产品世界 手机看文章 扫描二维码
随时随地手机看文章

    摘要:本文介绍了RS-485通信卡方式的特点、使用方法以及在实际中采用VB5编程实现微机与单片机通信的方法和应注意的问题。

    关键词:RS-485通信  微机串行通信  VB通信编程

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

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

微机标准通信适配器满足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标准;链路层采用面向字符型规程;本例采用笔者在现场实际使用的字符型通信规程,具体数据(16进制)格式如表1所示。

表1

字头 命令代码 数据1 数据2 校验 字尾
FCH 00H~FEH 00H~FEH 00H~FEH 校验字 FFH
8位 8位 8位 8位 8位 8位

其中命令代码中含有"数据重发"命令(校验出错时),连续3次校验出错,系统应告警。

特别提到的是,本例程序是完成微机与单片机系统之间的串行通信,微机端采用的是VB软件平台,在WINDOWS95环境下编程。由于VB在WINDOWS环境下是以字符(ANSI码)方式进行通信,而单片机系统则采用16进制代码,因此VB在实现通信过程中,对数据须进行特殊的转换,才能与单片机系统进行通信。

程序中所输出的数据只有用CHR()函数转换,才能使VB输出16进制数据,才能使VB输出16进制数据,单片机系统才能正常接收。具体程序见程序清单。

结语

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

引用地址:RS-485通信卡及其应用

上一篇:带PCI接口的ISDNS/T收发器
下一篇:单信道用户线接口电路

小广播
最新应用文章

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved