RS485调试不步骤

本文详细描述了在空调485通信中遇到的挑战,包括物理连线、通信配置、调试工具的使用,以及如何通过对比PC与自模块发送的数据、检测接收引脚来定位问题。最终,通过调整停止位延时时间,成功解决了通信不畅的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近调试空调的485通信。

(1)PC通过485能够正常的空调通信

(2)自己的模块485通信和PC通信正常。//PC收发的数据(小于2K),都能够正常显示

(3)自模块和空调通信失败。


1、物理上的连线

尽量是用双绞线

2、通信配置

波特率设置,停止位,校验位的设置。

3、调试工具

串口调试工具,usb转485串口工具。

4、自模块和空调通信在中间使用usb转485工具进行监控

(1)PC向空调发送控制指令,空调端能够正常返回数据。同时关键点返回的数据自模块也能够正常的接收。

(2)由上一步判断,推断硬件上没有问题。

(3)目前锁定的发送的数据是否存在差异。

5、检测空调端485接收引脚。

这里注意:别人的设计中,即使是在一个微电电路中也使用了电源的隔离。因此,我发现空调电路板上的GND,其实并不是实际的地。

(1)对比PC向空调发送的数据和自模块向空调发送的数据。 //在使用示波器取点的时候,进行采用485芯片的地,同时判断接收引脚的数据情况。

(2)自模块向空调端发送数据,使用PC监控发现数据是正常的;那问题可能出现在哪里????

(3)下一步:自模块向空调发送的数据在延时上的问题。

 PC
 高低电平 830 us
 起始位 800us
 停止位  900us
 
 自模块
高低电平延时 800 us
起始位 800 us
停止位 800us


延时停止位的延时相差100us,对于MCU处理性能较好的IC,那这方面是没有问题。是兼容的,所以就能够正常的通信。

6、最终问题的解决:

空调的电路设计上,输出的 并不是严格意义上的485信号,即使是我的模块似乎输出是行业内的标准也不整改正常的通信。

7、而且现在的问题是,为什么PC能够通信。

原因很简单,那就是PC首先输出的波形和理论上的延时是具有良好的兼容的。而空调就不能够实现。

8、从测试数据上看?

似乎没有问题,485上的总线数据都正常的。但是对于处理能够较为弱的空调IC来说,这就是本次问题的关键。

因此将停止位时间延长,便能够正常的通信。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值