RS485通信遇到怪现象

2020-01-26 13:07发布

在调试RS485通讯时,单片机向计算机串口软件发送 0x99 ,但是串口软件上收到并显示的却是0x99,0x00;如果连续发送多位数据,串口软件接收到的数据总是多一字节(0x00),,哪位高手指导下啊。我使用的单片机是恩智普的51增强型系列里的P89LPC936
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
22条回答
haolaishi
1楼-- · 2020-01-28 04:48
MARK
lichking
2楼-- · 2020-01-28 08:52
把12M 换成11.0592 在修正波特率看看
xue2003265029
3楼-- · 2020-01-28 12:28
回复【10楼】whj19860123
-----------------------------------------------------------------------
(1)光耦的发光二极管导通压降一般在1.2V左右,而导通电流也在7mA-10mA左右。
如果VCC为5V的话,本人经常将接光耦1脚的电阻的阻值为定470欧姆左右;接光耦4脚的电阻的阻值设为4.7K(或10K)。一直用着没有问题。像这样完全的情况完全可以用PC410替代。

(2)U5光耦的接法,感觉有点问题,当P1.0为低电平时,REDE的电平无法确定(跟流过发光二极管电流以及光耦的电流传输系数比有关)楼主这种接法估计是想达到REDE与P1.0反相的效果。其实不需要反相,P1.0和REDE(接485芯片的2、3脚)可以同相,这样P1.0=1时,表明485芯片发送,反之,表明485芯片接收。

(3)485芯片的A、B输出要加TVS管以及GDT管,防雷或防静电。

(4)在复位电路的电阻R2并联一个IN1418。

就这些了,图看不清,也不知道这电路也是干啥的。原理图对了,还得看PCB布局布线呢。
woshixiaozhou
4楼-- · 2020-01-28 15:04
 精彩回答 2  元偷偷看……
zwg0106
5楼-- · 2020-01-28 15:53
Mark 学习
tianyaxtutianya
6楼-- · 2020-01-28 16:44
你这是多了个一个数据,我的是出现了丢数据的现象,也不知道怎么搞的,明明发送了5个数据,接收的时候只有三个数据被收到了

一周热门 更多>