UART单线半双工电路

    有时候由于需要,需要用到UART的单线半双工模式,比如一个从设备只有一根信号线进行收发,主设备希望使用UART来进行通信,或者就是单纯的为了减少走线数量,虽然只减少了一根,我也不知道这有多大的意义?

UART单线半双工模式速度最高只有14400(根据Microchip的AN2658文档),以下是文档中的电路(为了好分析,照着样子重新画了下,使其有位号)。

 

 

 

 

 

工作分析:

  1.  RXD为单总线的数据线,即两个设备之间的通信线。

  2.  当发送数据时,TXD为高,Q1导通,Q2截止,从而RXD为高,发送1;反之TXD为低时,发送0.

  3.  当接受数据时,TXD需要设置为开漏输出高,即Q1导通,Q2截止,这时RXD的状态受对方控制,即对方发送0,则RXD被拉低,这时接收0;对方发送1,RXD被拉高,这时接收1.

 

 

  另外还有使用一个三极管的电路,从单个原理上可以通信(未考虑设备IO口的内部电路),但是不知道会不会烧芯片,因为AN2658文档提到了H桥,所以这里需要去尝试才行,本人后续有时间再搭建环境进行验证,这里只是给自己一个记录。

 

 

以上VCC需要根据IO口的Vih来权衡使用多大的电压?是否能把管子打开?

 

 

 

 

posted @ 2020-08-19 22:10  秋水寒林  阅读(7656)  评论(0编辑  收藏  举报