上边是我一直在用的485通信自动收发电路,不但要把电路送给你,还要把电路原理给你讲明白了。实测波特率9600不会有问题,但是,波特率115200的话,曾经出现过问题。
我们先看看普通的收发电路。
普通的485电路,除了“用RXD连接485芯片的RO引脚、用TXD连接485芯片的DI引脚”,还会用一个单片机的普通IO引脚连接到RE、DE引脚上。
当单片机要发送数据的时候,控制CTRL为高电平,数据通过TXD发送出去。
当单片机要接收数据的时候,控制CTRL为低电平,数据通过RXD接收回来。
然而,自动收发电路,就是不用单片机引脚CTRL,当数据进来的时候,数据会自动通过RXD到单片机,当需要发送数据时,自动通过TXD发送出去。也就是只需要连接单片机的RXD和TXD引脚就可以,无需用单片机引脚连接485芯片的DE RE引脚。
文章中第一张图,就是实现自动收发的电路,实际上,自动收发的电路,还有好几种连接方法。今天,我们只研究这一种我经常用的。
很多人,都会使用这个电路,但是不知道其中的原理。(是的,就是在说你呢!)
所以今天我来给大家解释一下其中的工作原理,详细到每个元器件。
电阻R1的作用: