微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > RS232和RS485转换问题

RS232和RS485转换问题

时间:10-02 整理:3721RD 点击:
最近在做一个51单片机和PC通讯的小实验,因为想学学RS485所以买了两个RS232/RS485转换器,转换方式是(RS232-RS484-RS485-RS232),但是发现PC和单片机根本无法通讯,而PC和PC之间又是可以的,485转换器有源无源的都试了就是没反应,怎么解决这个问题呢?

RS-232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。RS-232-C总线标准设有25条信号线,包括一个主通道和一个辅助通道。
  在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。
  RS-232-C标准规定的数据传输速率为50、75、100、150、300、600、1200、2400、4800、9600、19200波特。
  RS-232-C标准规定,驱动器允许有2500pF的电容负载,通信距离将受此电容限制,例如,采用150pF/m的通信电缆时,最大通信距离为15m;若每米电缆的电容量减小,通信距离可以增加。传输距离短的另一原因是RS-232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。
1. RS-485的电气特性:逻辑“1”以两线间的电压差为+(2—6) V表示;逻辑“0”以两线间的电压差为-(2—6)V表示。接口信号电平比RS-232-C降低了,就不易损坏接口电路的芯片, 且该电平与TTL电平兼容,可方便与TTL 电路连接。
  2. RS-485的数据最高传输速率为10Mbps 。
  3. RS-485接口是采用平衡驱动器和差分接收器的组合,抗共模干扰能力增强,即抗噪声干扰性好。
  4. RS-485最大的通信距离约为1219M,最大传输速率为10Mb/S,传输速率与传输距离成反比,在100Kb/S的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。RS-485总线一般最大支持32个节点,如果使用特制的485芯片,可以达到128个或者256个节点,最大的可以支持到400个节点。
RS232,RS422,RS485是电气标准,主要区别就是逻辑如何表示。
  RS232使用12V,0,-12V电压来表示逻辑,(-12V表示逻辑1,12V表示逻辑0),全双工,最少3条通信线(RX,TX,GND),因为使用绝对电压表示逻辑,由于干扰,导线电阻等原因,通讯距离不远,低速时几十米也是可以的。
  RS422,在RS232后推出,使用TTL差动电平表示逻辑,就是两根的电压差表示逻辑,RS422定义为全双工的,所以最少要4根通信线(一般额外地多一根地线),一个驱动器可以驱动最多10个接收器(即接收器为1/10单位负载),通讯距离与通讯速率有关系,一般距离短时可以使用高速率进行通信,速率低时可以进行较远距离通信,一般可达数百上千米。
  RS485,在RS422后推出,绝大部分继承了422,主要的差别是RS485可以是半双工的,而且一个驱动器的驱动能力至少可以驱动32个接收器(即接收器为1/32单位负载),当使用阻抗更高的接收器时可以驱动更多的接收器。所以现在大多数全双工485驱动/接收器对都是标:RS422/485的,因为全双工RS485的驱动/接收器对一定可以用在RS422网络。来源:北京伟纳鑫盛电气设备有限公司www.bjwnxs.com

你首先确认PC和单片机的232串口能通讯,剩下的就好解决了,只是透明转换而已。

已经弄出来了,不过还是谢谢你。PC和单片机是可以通讯,但是用RS485中转(RS232-RS485-RS232)后就不行了。不过这几天不断的试验,终于发现其实只要把单片机端TXD和RXD反接,再共地就好了。

串口通信要共地,否则会出现不通讯或者断断续续。摸索出来的才叫经验。

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

网站地图

Top