I2C电平转换电路_双向电平转换电路工作原理

I2C电平转换电路_双向电平转换电路工作原理本文分享下I2C双向电平转换电路的设计原理,以及需要注意的事项。在I2C主从设备对接时,需要考虑主从设备的电平情况,常规的主要有3种:5V,3.3V,1.8V。如果电平相同,比如都是3.3V,那么可以直接对接。如果电平不同,一个高电平是3.3V,另外一个是1.8V,那么就需要接入其它的器件来做一下电平转换,通常是接入NMOS管。如上图,此图来源于I2C官方协议,协议标准文件里…

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

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

本文分享下I2C双向电平转换电路的设计原理,以及需要注意的事项。

在I2C主从设备对接时,需要考虑主从设备的电平情况,常规的主要有3种:5V,3.3V,1.8V。如果电平相同,比如都是3.3V,那么可以直接对接。如果电平不同,一个高电平是3.3V ,另外一个是1.8V,那么就需要接入其它的器件来做一下电平转换,通常是接入NMOS管。
 

I2C电平转换电路_双向电平转换电路工作原理

如上图,此图来源于I2C官方协议,协议标准文件里面已对此作了一些说明。扫描下方二维码,回复“I2C”,可以获取I2C协议的英文版源文件和中文版本。

下面解释下这个电平是如何双向工作的,即不论是低压那边还是高压那边主动发生电平变化,都是可以正常通信的。

工作原理:
—当总线上没有数据发送时,两边都没有主动去拉低总线,因此MOS管也不导通,都因为各自的上拉电阻存在,左边为高电平3.3V,右边为高电平5V。
—当左边需要发送数据1到右边时,即SDA1/SCL1为高电平3.3V,MOS管的Vgs=0,不导通,右边因为上拉电阻的存在,SDA2/SCL2电平保持为5V。即可看作左边正常将数据1发送到右边。
—当左边需要发送数据0到右边时,即SDA1/SCL1为低电平0V,Vgs=3.3V,MOS管导通,右边电压就跟左边电平一样了,SDA2/SCL2为低电平0V。即可看作左边正常将数据0发送到右边。
—当右边需要发送数据1到左边时,即SDA2/SCL2为高电平5V,左边SDA1/SCL1因为没有主动拉低总线,所以MOS管不导通,左边保持上拉电平3.3V。即可看作右边将数据1正常发送到左边。
—当右边需要发送数据0到左边时 ,即SDA2/SCL2为低电平0V时,因为MOS管体二极管的存在,体二极管导通,MOS管的S极被拉低,Vgs接近3.3V,MOS管导通,进一步导致左边和右边电平一样,为0V。即可看作右边正常将数据0发送到左边。

由上可知,不论I2C的主设备(Master)接在上面电路的左边(低压电源)还是右边(高压电压),都是能够正常通信的。

以上是电路的工作说明,实际应用中,有以下两点需要注意:
注意事项:
–MOS管的接入方法—MOS管的S极要接到低电源那边,不能接反
–MOS管的选型—MOS管的导通电压需要注意。MOS管导通电压门限(Vgsth里面的最大值)需要小于低电源电压
 

I2C电平转换电路_双向电平转换电路工作原理

如上图是2N7002K的MOS管,1V<Vgs<2.5V。如果5V和3.3V之间的互转,那么可以用这个管子。但如果是3.3V和1.8V之间的互转,那么是不能用的。因为导通门限电压是1-2.5V,因为可能会用到导通电压大于1.8V的器件,那么MOS管就可能永远无法导通了。这个需要特别注意,因为一旦没注意选用了,可能就是有的板子功能OK,有的板子NG。

获得硬件资料,欢迎关注微信公众号:硬件工程师炼成之路
 I2C电平转换电路_双向电平转换电路工作原理

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

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


相关推荐

  • Java Web和Java后端开发的学习路线

    Java Web和Java后端开发的学习路线基础:比如计算机系统、算法、编译原理等等Web开发:主要是Web开发相关的内容,包括HTML/CSS/JS(前端页面)、Servlet/JSP(J2EE)以及Mysql(数据库)相关的知识。它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面),这部分内容你可以去上面的那个runoob网站上找。J2EE:你需要学习的是Servlet/JSP(J2EE)部分,…

    2022年7月8日
    21
  • svn 配置文件_svn环境配置

    svn 配置文件_svn环境配置SVN配置文件说明svnserve是SVN自带的一个轻型服务器,SVN用户端通过使用以svn://或svn+ssh://为前缀的URL来访问svnserve服务器,实现远程访问SVN版本库。svnserve可以通过配置文件来设置用户和口令,以及按路径控制版本库访问权限。本文详细分析了svnserve配置文件格式,并说明如何使用配置文件控制版本库访问权限。一、svnserve配置文件概述svnserve配置文件通常由以下3个文本文件组成:svn服务配置文件,该文件版…

    2022年9月13日
    0
  • #从源头解决# 自定义头文件在VS上出现“无法打开源文件“XX.h“的问题

    #从源头解决# 自定义头文件在VS上出现“无法打开源文件“XX.h“的问题自己编写了一个头文件,在主函数中通过#include引用时出现了无法打开源文件的问题,通过网上查阅,发现是自己混淆了#include<>和#include””的用法。问题完美解决!…

    2022年6月16日
    42
  • 【动画教程】真封神南极服务端2.52架设第三集[通俗易懂]

    【动画教程】真封神南极服务端2.52架设第三集[通俗易懂]官方网站www.zfs2014.com动画名称:真封神南极服务端2.52架设第三集主讲人:diablo2208教程下载地址:http://pan.baidu.com/s/1c0GfyMk

    2022年7月24日
    8
  • Centos7安装nginx教程

    Centos7安装nginx教程安装Nginx并解压:wget-chttps://nginx.org/download/nginx-1.18.0.tar.gztar-zxvfnginx-1.18.0.tar.gz这里复制到usr/local目录下:cp-a./nginx-1.18.0//usr/local/在/usr/local/nginx-1.18.0/目录下使用默认配置:./configure执行编译并安装:makemakeinstall查找进入安装目录:whereisnginx

    2022年5月29日
    56
  • phpstudy安装好之后mysql无法启动(亲测可行)

    phpstudy安装好之后mysql无法启动(亲测可行)

    2021年10月29日
    39

发表回复

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

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