主副机与串口助手通讯均正常,但设备间无通讯

问题描述

今天做485通讯时 发现一个问题,我用串口助手测试主副板功能时均正常,然后我将串口助手并联到485总线上,神奇的事情发生了事件描述
这让我百思不得其解,信息是相同的为什么和助手可通讯,但主从互相无法通讯呢?
我一开始以为是电路的故障,但是烧写了同事的老程序发现,主副板通讯正常。我就仔细看了下代码发现波特率设置的与之前不同,我的程序里是用115200进行通信的,而之前的程序同事使用的是9600可是从stm32芯片手册和MAX13487上来看115200不该是瓶颈啊,串口的速度也已经设置为最高了。

解决方法

将波特率换为9600,主副板通信正常
但是我还是没想通为什么电脑就可以接收正常而,互通就不行呢,如果是因为电脑的缓存大,不会丢失字节,那么他作为发端时板子也是接收正常的又该如何解释。但从debug的调试结果来看 主板发往副板的信号,经副板接收时已经失真,我现在唯一的解释就是usb转485模块具有一定的整形功能,在高频率下也可工作正常,而主副板的缺少整形电路,导致高频率下的信号无法正确采集,信号失真。

以下是我在搜索时找的类似问题,是232电路
串口问题——两个设备和电脑串口助手可以正常通信,但这两个设备不能通信

总结

多用示波器找问题,串口乱码最多的情况就是波特率问题

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值