单片机/MCUwilliam hill官网
直播中

1653381192.695200

11年用户 283经验值
擅长:EDA/IC设计
私信 关注
[问答]

请教一个关于串口通讯的故障问题

设计的串口在初始通讯时是正常的,运行1-2天后就无法通讯了。发送的数据幀是标准的RTU 8个字节。芯片用的是SP3485,不过因为布线偷懒逻辑电平没有改成3.3,还是5V。现在无法判断是硬件还是软件的问题。我自己的判断如下:1.数据帧不是很长,波特率误差在0.2% 应该不会造成这种问题。
2.软件初始化没有问题,在通讯中断的时候示波器上的D和R端还有数据波形,这个波形对不对搞不清。
3. SP3485逻辑端查看了手册后是支持最大6V的,所以我没有改,这个不清楚会不会造成这种问题。
4.我用STC的串口工具和modbus调试精灵在中断的时候都测试过,都没有应答,不是上位机软件的问题。

最终分析了一下,觉得最大的问题还是在SP3485上。可能是这个5V的逻辑电平造成SP3485不稳定了。

最后忘了一个重要的部分,就是重新上电后一切正常,现在想的有点迷糊,大神来帮忙捋一下,万分感谢! QQ截图20180110114140.png

回帖(5)

人中狼

2018-1-10 19:33:12
试试下面的方法吧,也不确定是否可以:
一,芯片电压最好改成3.3伏
二,三极管改成非门芯片,考虑三极管开关速度的问题
三,R1,R7两个10K电阻去除
四,R2,R4两个20欧电阻或者也可以去除
举报

1653381192.695200

2018-1-28 18:01:16
引用: 人中狼 发表于 2018-1-10 19:33
试试下面的方法吧,也不确定是否可以:
一,芯片电压最好改成3.3伏
二,三极管改成非门芯片,考虑三极管开关速度的问题

问题依然没有解决,还是会出现故障,运行一段时间后不通讯了,重启后恢复。没有死机,我接了一个液晶显示,传感器显示变化都正常,在回传数据程序中装了一个BUG等,通讯正常时会闪,现在不闪了。我现在把灯装在接收中断里去试试。
举报

1653381192.695200

2018-3-2 11:39:44
问题已经解决了,是程序接收地方有bug,修正后正常。感谢大家。硬件没问题,有需要的朋友可以借鉴。
举报

1653381192.695200

2018-3-2 11:40:03
问题已经解决了,是程序接收地方有bug,修正后正常。感谢大家。硬件没问题,有需要的朋友可以借鉴。
举报

alonggege

2019-7-22 08:30:12
不错,很好的经验分享,辛苦麻烦了,欠缺这方面的资料,非常感谢。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分