下面是我自己找的电路,但是始终觉得有点问题。当发送数据时没问题,但是接收时,会不会受到发送脚的影响?当为接收状态时,TXD无论为1或是0都对A有影响,感觉有点问题,求高手指教,或给一个更好的电路。谢谢
上面字打错了一个 是求MAX485自动切换控制“方”向电路,只用RXD和TXD两个单片机引脚就能控制的。
首先要感谢你对我的信任。下面我谈一下我的看法,供参考。
从电路上看,这是一个半双工通信的接法,(红线)就是收时不能发,发时不能收,其收发状态的控制应由DE、RE 非完成。但此图RE 非接地,使电路始终处在了接收状态,A、B总线上只要有数据,RXD 端就有接收。
文中对于发送数据时的分析有一定道理,可行。可以由D 端接零,TXD 接,及上拉电阻的配合,实现1、0 数据的发送(注:发送的数据同时会被接收)。但这时必需要保证对方不可发送数据,否则,总线上的数据必受影响,出现错误。
结论:51端发送数据时必需要让对方停止发送,这也算是个协议吧。
建议:若从安全角度出发,是否可将反向器和4.7K电阻去掉,D端接TXD,将DE和RE非相联后接入一常低电位,使电路处于接收状态,用一开关控制进行高低电平切换,从而实现安全的收发转换。
若有错误之处,请斧正。
就算是TXD=1,发送器关闭,接收器始终打开,但是A线是上拉4.7k,始终都是高电平,感觉会对接收有影响!
追答单片机接收的数据是看A、B间的电压差,如果A - B >200mv 单片机接收就是“ 1 ”,反之则为“0”