本帖最后由 正是河豚 于 2016-8-30 09:52 编辑
STC15W系列单片机工作电源范围比较宽,可以工作在5V电压下,此时,单片机IO口可以与5V电平的芯片相连,可以工作在3.3V电压下,此时,单片机IO口可以和3.3V电平芯片相连。但有些时候,无论单片机工作在5V还是3.3V,其外围电路可能既有5V的也有3.3V的,那如何实现电平兼容呢?下面我们就电平兼容问题给出一些可供参考的方案。
1、使用专门的电平转换芯片:市场上这类芯片也比较多,下面以74LVC4245为例进行简述,如下图,芯片是两路电源独立供电,通过控制DIR及OE两个引脚实现对电平是3.3V到5V还是5V到3.3V的电平转换。当然,如果转换方向固定,DIR及OE可直接接地或上拉到高电平实现转换功能。
注:市场还有16路等的电平转换芯片,根据需要选择,此类芯片的特点是性能稳定,但价格偏贵,要根据需要综合考虑。
2、使用电平兼容或耐压型逻辑芯片实现电平转换:3.3V电平转5V电平可以使用74xHCT系列芯片,5V电平转3.3V电平可以使用74AHC/VHC系列芯片。
注:这种方案的性价比应该是较高的,可以在设计电路时优先考虑。
3、搭建简易电路实现电平兼容:这种方法比较适合路数比较少的场合或者测试检验使用,下图是描述工作在5V电源的STC单片机和工作的3.3V模块间的串口通信电路部分,3.3V模块的TXD可以直接和STC单片机的RXD相连,不会损坏引脚,而STC单片机的TXD则通过下图电路和3.3V模块RXD相连。简单分析下原理,当STC单片机TXD引脚发送高电平时,二极管截止,3.3V模块RXD处电平也是高电平3.3V,当STC单片机TXD引脚发送低电平时,二极管导通,3.3V模块RXD处电平也是低电平,这样就有效的保护了3.3V模块的通信引脚。
注:这种方法对通信的波特率比较敏感,当频率要求较高时,可能无法达到通信要求,这时就需要考虑使用专门的准换芯片了。
|