MOS管电平转换电路学习

MOS管电平转换电路学习一个MOSFET电平转换电路引发的问题

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

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

在电路开发过程中,我们经常遇到两个系统电平不一致的情况,比如IIC和UART通信等。使用MOSFET搭建双向电平转换电路,是比较常见的做法,电路如图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为低电平时,MOS管不导通,但是它有体二极管!MOS管里的体二极管把A端拉低到低电平,此时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
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180077.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java连接sqlserver(Java项目sqlserver)

    java相对于其他语言(例如c,c++等)连接数据库要方便得多,那么,如何连接呢?1.java与SQLserver连接具体代码如下:importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql…

    2022年4月12日
    44
  • 廖雪峰Python练习题

    廖雪峰Python练习题今天主要学习了python中filter的用法。Python内建的filter()函数主要用于过滤序列,和map()类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。做了两道练习题,第一道是用filter求素数。第二道是用filter()筛选出回数。@Pyt…

    2025年7月20日
    5
  • excel中html批量转化为pdf文件,如何将大量的Excel转换成PDF?

    excel中html批量转化为pdf文件,如何将大量的Excel转换成PDF?大家都知道Excel表,最怕别人修改了,尤其是数据。一旦修改,可能就会有麻烦。那如何是好呢?有一个最简单的办法就是把Excel转换成PDF文件,这样别人只能阅读不能编辑,就不用担心被修改了,哈哈~下面就随小编一起来看下Excel转PDF的办法有哪些吧?方法一:需要一份份文件手动处理。1、创建PDF文件a、打开需转成PDF的文件,譬如本例的表格:成本数据b、单击工具栏上的“文件”标签,点击“保存并发…

    2022年5月18日
    58
  • 很震撼的HTML5视频播放器,电影院的感觉建议收藏

    效果很震撼!有电影院的感觉了。呵呵。看了下代码,依然是在一个canvas里嵌入然后getImageData点击这里查看效果代码:varcanvas=document.createElement

    2021年12月20日
    47
  • 极智开发 | ubuntu源码编译opencv

    极智开发 | ubuntu源码编译opencv本教程详细记录了在ubuntu1804中源码编译opencv的方法。

    2022年7月20日
    10
  • Stimulsoft Ultimate Reports 2022.2.6

    Stimulsoft Ultimate Reports 2022.2.6Publishedon27May2022

    2022年7月26日
    18

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号