Mbus从站使用TSS721芯片通讯问题

Mbus从站使用TSS721芯片搭建,原理图(百度的后附链接)大概如下:
TSS721A芯片原理图
光耦隔离输入输出部分
原图链接:http://bbs.elecfans.com/jishu_910531_1_1.html

在调试过程中遇到问题如下

  1. 上位机通过Mbus主站给从站发送信息,从站可以正常接收。从站向主站发送反馈数据时,无论如何主站都无法收到信息。
  2. 正常通讯后只能收到16个字节,并且波特率只最高4800。9600时会出现读写错误。

第一个问题是因为对串口通讯的基础不够了解。从该文章了解到

PC 机的RS-232 口为9 芯针插座。一些设备与PC 机连接的RS-232 接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据TXD”、“接收数据RXD”和“信号地GND”。双向接口能够只需要3根线制作是因为RS-232的所有信号都共享一个公共接地。非平衡电路使得RS-232非常的容易受两设备间基点电压偏移的影响。
对于信号的上升期和下降期,RS-232也只有相对较差的控制能力,很容易发生串话的问题。RS-232被推荐在短距离(15m以内)间通信。由于非对称电路的关系,RS-232接口电缆通常不是由双绞线制作的。
————————————————
版权声明:本文为CSDN博主「不脱发的程序猿」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_38106923/article/details/98615747

也就是说我的串口与从机模块只连接了TX、RX,没有连接公共地。导致主站给从站发送的数据,从站转为TTl信号可以被串口RX收到。而串口TX输出的数据则无法通过从站发给主站。连接公共地后可以正常收发。

第二个问题初步怀疑为隔离光耦使用的不是高速光耦导致波特率局限在4800。可以尝试使用上边百度的原理图中光耦。待后续研究再做补充。
水平有限,仅做为个人记录。

串口外接的时候一定要接TX、RX、公共地。单工通讯可以不接TX/RX,但一定要接公共地、公共地、公共地。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值