使用MOS管搭建双向电平转换电路设计

描述

最近在设计中碰到一个简单,但是稍不注意就出错的问题,在此分享一下。

在电路开发过程中,我们经常遇到两个系统电平不一致的情况,比如IIC通信。使用MOS管搭建双向电平转换电路,是比较常见的做法,电路如图1中虚线框所示,MOS管的部分参数如图2所示。

三极管

图1

三极管

图2

电路原理很简单,分两种情况:

1. 从A到B

A为高电平时,MOS管关断,B端通过上拉,输出高电平;

A为低电平时,MOS管内的体二极管导通,使MOS管的S极被拉低,从而使Vgs=3.3V>Vgs(th)=1.6V,MOS管导通,B端被拉低,输出低电平;

A为高阻态时,MOS管关断,B端通过上拉,输出高电平。

2. 从B到A

B为高电平时,MOS管关断,A端通过上拉,输出高电平;

B为低电平时,Vgs=3.3V>Vgs(th)=1.6V,MOS管导通,A端被拉低,输出低电平;

B为高阻态时,MOS管关断,A端通过上拉,输出高电平。

一直以来使用这个电路没有出现过问题,所以这次也是不假思索的照搬过来,但结果是上电后,模块B无法正常启动工作。

出现该问题的原因也很简单,就是模块B的通信引脚除了通信之外,还有其他作用,如图1所示, 其在上电时需要通过下拉10K电阻R3到GND实现低电平,并维持一段时间,以确保模块B能正常启动。 但如果直接使用该转换电路,示波器测量到的模块B引脚电平,在上电瞬间的波形如图3所示,可以看到幅值在2.3V左右,已经达到了模块B的高电平标准,因此,模块B启动失败,之后该引脚一直输出为低电平。

三极管

图3

分析下工作过程, 上电瞬间,B点电压是3.3V通过R2和R3分压后得到 ,理论值等于2.2V,与实测波形接近。在该电路中,信号流是从B到A单向传输的,因此想到可以去掉电阻R2,那样B点在上电瞬间就不会有上拉电压,但是实际去掉R2后,模块B依旧无法启动。进一步分析,在上电瞬间B点电压确实为0,但是也因此导致Vgs=3.3V,MOS管导通,R3又和上拉电阻R1形成了分压关系,导致B点无法拉到低电平。

因此,如果想要继续使用该电平转换电路的话,必须加大上拉电阻R1和R2的值,使分压后的B点电位达到低电平标准,但是上拉电阻改的太大的话,A端高电平可能会有问题,所以最终选择使用两个三极管组成的电平转换电路,如图4所示,问题解决。

三极管

图4

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分