当前位置:文档之家› RS485总线通信协议的设计与实现

RS485总线通信协议的设计与实现

————————————

作者简介作者简介::冯子陵(1987-),男,硕士研究生、CCF 会员,主研方向:嵌入式系统设计,物联网;俞建新,副教授 收稿日期收稿日期::2011-11-24 修回日期修回日期::2012-02-16 E-mail :fzl_7@

RS485总线通信协议的设计与实现

冯子陵冯子陵,,俞建俞建新新

(南京大学计算机科学与技术系,南京 210046)

摘 要:针对目前接口标准的RS485总线通信协议不统一问题,设计一个高效稳定的通信协议。介绍RS485总线网络的组网方式,给出RS485总线通信协议的设计方法。借鉴CSMA/CD 协议,提出一种简单高效的冲突处理方法。在ARM7、ARM9、DE2-70 3种嵌入式开发平台,以及µC/OS 、Linux 、VxWorks 3种操作系统上进行实验和测试,结果表明,该通信协议在通用性、稳定性、实时性和可扩展性等方面均符合接口标准技术要求。

关键词关键词::RS485总线;通信协议;嵌入式系统;冲突处理;帧结构

Design and Implementation of RS485 Bus Communication Protocol

FENG Zi-ling, YU Jian-xin

(Department of Computer Science and Technology, Nanjing University, Nanjing 210046, China)

【Abstract 】Because there is not normal communication protocol for RS485 bus network, a fast and steady communication protocol is designed. This paper introduces the method of creating the RS485 bus network and a detailed design of communication protocol for RS485 bus network. A simple and efficient conflict processing method is proposed with special reference to CSMA/CD protocol. The communication protocol is implemented and tested on ARM7, ARM9 and DE2-70 embedded development platforms with uC/OS, Linux or VxWorks operating systems. Experimental results show that this communication protocol meets the technical requirements in terms of versatility, stability, real-time and scalability aspects.

【Key words 】RS485 bus; communication protocol; embedded system; conflict processing; frame structure DOI: 10.3969/j.issn.1000-3428.2012.20.056

计 算 机 工 程 Computer Engineering 第38卷 第20期

V ol.38 No.20 2012年10月

October 2012

·工程应用技术与实现工程应用技术与实现·· 文章编号文章编号::1000—3428(2012)20—0215—04 文献标识码文献标识码::A

中图分类号中图分类号::TP273

1 概述

RS485是由RS232发展而来的接口标准,能用于组 建点到多点或者多点到多点的网络,解决了RS232接口标准的联网问题。RS485总线网络凭借组建成本低、可靠性高、分布范围较大等特点,在智能家居、远程监控、远程控制、远程抄表等领域得到广泛应用。

RS485网络的通信方式分主从式和总线式2种。如今在工业控制中一般采用主从式的通信方式,而总线通信方式有更好的扩展性、通用性,在总线通信协议上也容易搭建主从式RS485通信网络。RS485总线网络组网方式很简单,组建成本低廉,但至今没有统一的总线通信协议。目前国内在开发基于RS485总线网络的应用系统时,往往临时设计RS485总线通信协议,导致系统在可移植性和高效稳定性方面存在一定的问题。综上所述,很有必要设计一个高效稳定的RS485总线通信协议作为统一的协议标准。

本文在研究RS485接口标准的基础上,设计一个高 效稳定的通信协议,并对测试结果进行比较和分析。

2 RS485介绍

一般的PC 和嵌入式开发板串口都是RS232接口标

准。该接口标准有如下特点:RS232采用负逻辑,即用 “−5 V~−15 V ”电压表示逻辑“1”,“+5 V~+15 V ”电压表示逻辑“0”;RS232驱动器最大允许2 500 pf 的电容负载,因此RS232的最大通信距离仅为15 m 左右;RS232采用共地的单端信号传输方式,所以抗噪声干扰性弱;传输速率较低,在异步传输时波特率为20 Kb/s 。

RS485是由美国电子工业协会在RS422的基础上制订并发布的串口标准。RS485接口标准解决了联网问题,并且各方面性能比RS232接口有较大的提高。因此, RS485接口替代RS232接口广泛用于中小型集散系统中。RS485接口标准的具体参数如表1所示。

表1 RS485接口标准的具体参数

性能指标 RS485总线 工作模式

差分传输(平衡传输)

允许的收发器数目 32

最大电缆长度 4 000英尺(1 219 m)

最大数据速率 10 Mb/s 最小驱动输出电压范围 ±1.5 V 最大驱动输出电压范围 ±5 V 驱动器输出阻抗 54 Ω 接收器输入灵敏度 ±200 mV

接收器输入电压范围

−7V ~+12V

相关主题