RS232实现主单从多通讯


提示:本文属于技术的交流,如有抄袭请联系删除。

概要

众所周知,485通信可以悬挂多个设备进行通信,而RS232通讯一般用于两个设备之间的通讯,因此本文主要实现单个MCU通过一个RS232芯片同时与多个设备进行通讯。
`

硬件部分

  1. 无法通讯的原因
    硬件端的修改主要是在RS232芯片的TX与单片机的RX连接中添加一个上拉电阻,若不添加该电阻,RS232在进行多个设备通讯中TX端向单片机发送数据信号会被拉低导致单片机无法接受到下端设备发送的数据,信号如图1。不加电阻TX端信号
    图1
  2. 修改后的原理图
    在这里插入图片描述

软件部分

软件部分以STM3为例,默认中的USART1的Pin工作模式一般使用复用推挽输出( GPIO_Mode_AF_PP ),而使用该模式数据段无法将下位机的数据进行接收,需要更改为复用开漏输出 ( GPIO_Mode_AF_OD )。两个模式的区别如图2和图3
在这里插入图片描述

图2 (GPIO_Mode_AF_PP)
在这里插入图片描述

图3 (GPIO_Mode_AF_OD)

小结

本文主要分享只使用单个RS232芯片进行多个设备通信的方法,实验只测试了3个从设备与一个主设备的通讯,且通讯是必须要对从机进行编号以识别是哪个设备,至于悬挂多个设备时传输的数据是否稳定,还需进一步的测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宅博士yc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值