独闷闷网

 找回密码
 立即注册
搜索
查看: 3600|回复: 4
收起左侧

[原创] 当需要用到RS232和RS485两个模块时?如何才能自动切换?已解答?

[复制链接]
发表于 2015-6-10 22:37:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
最近做了一个项目,需要用到RS232RS485(单片机只用一个串口),一般情况下,都是用两个跳线冒或者是拨码开关作硬件切换就可以了,但是,不能打两个芯片的输出接在一起,所以这次这个比较特殊,板子是放在一个盒子里面,手动切换就不方便,只有想办法要么通过软件,要么通过硬件切换。我还是打算在硬件上面动手,就实现一个简单的功能,硬件自动切换。后来就想起我当初在做电视机维修用到的音视频通道切换芯片74HC4052
功能:当DB9端口有线连接时,这个时候选择用RS232
      当RS485端口有连接时,选择用RS485
所用到的主要器件:
1、RS32323.3V芯片)
2、RS34853.3V芯片)
3、74HC4052
上面12两种基本上都使用过了,就不需要说了,主要说明一下74HC4052
74HC4052:是一个双刀四掷模拟双向开关。

   
引 脚 图
74HC4052.PNG
引脚功能:
A0~A3A通道通道输入/输出端
B0~B3B通道通道输入/输出端
AN:   A通道公共输出/输入端
BN:   B通道公共输出/输入端
S0S1:地址端
E:使能端(低电平有效,一般和地接在一起)
VEE:模拟信号接地端(一般和数字地接在一起)
GND:数字信号接地端
VCC:电源+
74HC4052相当于一个双刀四掷开关,具体接通哪一通道,由输入地址码S0S1地址端来决定。其真值表如下
真值表.PNG

电路图如下:
串口—RS485自动切换.PNG
工作原理:高电平接通RS232,低电平接通RS485
RS232的输出接在74HC4052A3B3,因为当S0S1是高电平的时候就接通这两路。
RS485的输出接在74HC4052A0B0,因为当S0S1是低电平的时候就接通这两路。
这里需要注意的是,一定不要把串口通信的两根线弄反了,也就是RXDTXD两根线。
S0S1我是接在DB9针的4脚,因为我的串口线这个引脚是高电平,当这个线接上后,4脚会有一个5V的电平(ON_RS232),经过R97下拉电阻,提供74HC4052开关地址选择信号。就能够进行通道选择。

限于能力和水平有限,如有不对之处,请大家指出。。。。。。


乐于分享,勇于质疑!
发表于 2015-6-12 01:02:19 | 显示全部楼层
你分享的都是很实用的电路,非常感谢。
乐于分享,勇于质疑!
 楼主| 发表于 2015-6-13 11:52:27 | 显示全部楼层
jianhong_wu 发表于 2015-6-12 01:02
你分享的都是很实用的电路,非常感谢。

不客气                     

点评

很有分享价值,也很实用;问一下,既然是双线切换,并且是高速数字信号通信,为何不用不用双刀双掷继电器呢?  发表于 2015-6-25 21:26
乐于分享,勇于质疑!
 楼主| 发表于 2015-6-26 08:46:33 | 显示全部楼层

用继电器也是可以的,有一种信号继电器,我没有选用它,因为用继电器是第一时间都能想到,所以,我分享的是以另一种方式,来达到相同的功能,目的,就是能够多一种方法。
乐于分享,勇于质疑!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|独闷闷网 ( 粤ICP备12007667号-2 )

GMT+8, 2024-3-29 22:27 , Processed in 0.186311 second(s), 21 queries .

快速回复 返回顶部 返回列表