您的位置 首页 报告

怎么根据RS485研讨总线集散式测控体系?

1引言RS-485由电子工业协EIA(Electronics?Industry?Association)于1983年制定。它具有了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同

1导言

RS-485由电子工业协EIA(Electronics?Industry?Association)于1983年拟定。它具有了多点、双向通讯才能,即答应多个发送器衔接到同一条总线上,一起增加了发送器的驱动才能和抵触维护特性,扩展了总线共模规模,后命名为TIA/EIA-485-A规范。

RS-485选用平衡发送和差分接纳,具有按捺共模搅扰的才能。其传输时的电气协议规则:当A线的电压低于B线时,传送的是信号1,当A线的电压高于B线时,传送的是信号0。A线和B线能接受的共模信号为 -7V~+12V,这儿讲的共模信号是指A线或B线对地的电压。一个规范发送器能够直接驱动几个接纳器,且发送器能够被封闭使其输出端变成高阻,因而只需 2条连线既可完成一个半双工的通讯网络。RS-485规范只对接口的电气特性做出规则,而不触及接插件、电缆或协议,在此基础上用户能够树立自己的高层通讯协议。

2硬件电路和通讯时序

由RS-485组成单主机-多从机的集散式操控体系的简图如图1所示。

图1RS-485总线的结构图

关于单片机异步通讯,除了直接衔接TX和RX端外,不同于RS-232通讯协议,RS-485必定要用单片机的一个I/O引脚担任数据接纳或发送方向的操控。用RS-485协议组成的主从通讯方法中,一切的通讯由一个主机掌控,其它一切从机平常处于接纳形式,一旦某一个从机被主机呼叫,就将其通讯状况改成为发送形式,待数据发送结束后又转为接纳形式。体系硬件衔接电路原理图如图2所示。

图2体系硬件衔接原理图

2.1上位机主控端

由于上位机上只需传统的9针D型串口,要和多个下位机节点组成数据通讯网络,需求将RS-232通讯协议转化,RS-485协议方法,需求用到MAX232和MAX485芯片各一块,其电路原理图如图3所示。

图3RS-232到RS-485的电平转化图

RS-232-485转化器首要包含了电源、RS-232电平转化、RS-485电平转化三部分。该电路的RS-232电平转化电路运用了市场上常见的MAX232集成电路,RS-485电平转化电路选用了MAX485集成电路。为了运用方便,电源部分规划成无源方法,整个电路的供电直接从PC机的RS232接口中的DTR(4脚)和RTS(7脚)取出。PC串口每根线能够供应大约9mA的电流,因而两根线供应的电流就满足供应本电路运用。经试验,本电路只运用其间一条线也能够正常作业。运用本电路需注意PC程序有必要使串口的DTR和RTS输出高电平,经过D3稳压后得到VCC,经过实践测验,VCC电压大约在4.7V左右。因而,电路中要说D3起的作用是稳压和限压功用。

MAX485是经过两个引脚RE(2脚)和DE(3脚)来操控数据的输入和输出。当RE为低电平常,MAX485 数据输入有用;当DE为高电平常,MAX485数据输出有用。在半双工运用中,一般能够将这两个脚直接相连,然后由PC或许单片机输出的凹凸电平就能够让 MAX485在接纳和发送状况之间转化了。由于本电路DTR和RTS都用于了电路供电,因而运用TX线和MAX232的别的一个通道及Ql来操控 MAX485的状况切换。平常MAX232的9脚输出高电平,经Ql倒相后,使MAX485的RE和DE为低电平而处于数据接纳状况。当PC机发送数据时,MAX232的9脚输出低电平,经Ql倒相后,使MAX485的RE和DE为高电平而处于数据发送状况。

2.2下位机从动端

PIC16F877单片机具有一个通用同步异步接纳发送器USART,又叫串行通讯接口(SCI),可作业于全双工异步作业形式和半双工同步作业形式,它是一种运用PORTC口的RC6和RC7两个引脚作为通讯的两线制串行通讯接口。为了把PORTC口的RC6和RC7两个引脚别离设置成串行通讯接口的发送(TX)脚和接纳(RX)脚,有必要要把USART的接纳状况和操控寄存器TCSTA的bit7(SPEN)位和TRISC寄存器的bit7置1,把TRISC寄存器的bit6置0。为了使USART别离作业于接纳或发送状况,就有必要设置相应的状况寄存器和操控寄存器。

USART发送器和接纳器在功用上是彻底独立的,要使USART作业在异步通讯方法,它们所用的数据格局和波特率就有必要是相同的。这儿运用常用的格局:波特率9600,无校验,8个数据位,1个中止位。

在编写程序时首先要设置好USART异步通讯模块作业形式及相关寄存器,首要有以下模块寄存器:TXSTA(数据发送操控及状况寄存器),RCSTA(数据接纳操控及状况寄存器),SPBRG(波特率操控寄存器),INTCON、PIEI、PIRI(相关的中止操控寄存器),TXREG(串行数据发送寄存器),TCTEG(串行数据接纳寄存器)。

在PIC单片机中,决议USART通讯波特率凹凸的,只需SPBRG寄存器和TXSTA寄存器中的BGRH位,不占用任何其它守时器资源。波特率发生器的作业时钟取自于单片机主振动器的振动频率输出,经过设置SPBRG寄存器和BGRH操控位对振动频率分频,最终发生所需的波特率值。

当BRGH=0时,为低速波特率发生方法;BRGH=1则发生高速波特率。这儿运用高速波特率,由于这样能够削减与规范波特率值的差错。异步通讯告知波特率的核算方法如下:若单片机的作业振动频率为fosc,,SPBRG寄存器值为X,则高速波特率的核算公式为:

(1)

在规划过程中,咱们一般是先选定需求得到的波特率,然后核算SPBRG的设定值X,改换式(1),即得:

(2)

异步通讯波特率设守时得注意事项:当选用规范波特率时,假如一味寻求一步通讯时波特率的准确度,那就应该挑选11.0592MHz作为单片机的作业振动频率。但其实大可不必如此计较。异步通讯答应波特率存在必定的差错,只需差错值在士3%之内就能够确保正常通讯,所以关于常用的1200bps~9600bps波特率的设定,可选的振动频率能够有很多种,用户彻底能够依据自己所规划体系的其他功用要求而统筹挑选振动频率。使得单片机的振动频率越低,功耗就越小,体系抗搅扰才能也越强。别的,关于所选的波特率假如既能够用低速方法又能够用高速方法时,在程序中应尽量挑选高速方法,这样得到的实践波特率差错相对较小。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/baogao/146946.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部