前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >TTL反相器、OC门、TS门、推挽输出、开漏输出

TTL反相器、OC门、TS门、推挽输出、开漏输出

作者头像
WuShF
发布2023-04-22 19:18:58
6100
发布2023-04-22 19:18:58
举报
文章被收录于专栏:笔记分享笔记分享

TTL反相器

这是一个TTL反相器,这是经过了很多工程师多种设计最终沉淀出来的电路,这个电路是比较成熟的。我们只需要对这个电路进行解析即可,不需要再去研究当初是如何设计出来的。

学过CMOS应该知道,右侧的输出级其实也是个推挽输出,因为长得像图腾柱,因此也有人称呼它为图腾柱。推挽输出的好处就是T4和T5是独立的,要么T4导通T5截止、要么T4截止T5导通。

对于输入级,比较简单,就是从T1的发射极传入,往后传。

对于倒相级,叫这个名字,是跟集电极和发射极电压的变化有关系的。T2集电极电压升高时,发射极电压降低。发射极电压升高,集电极电压就降低,这是一个相反的过程,所以叫做倒相级。

通常情况下,我们讲数字电路的时候用的是一个定性的说法,就是高低电平。而对于这个电路来说,我们需要用定量的方法来分析一下。

我们假设:

  • Vcc=5V
  • Vpn=0.7V
  • Vce=0.1V
  • ViH=3.4V
  • ViL=0.2V

当A输入0.2V时,因为T1接了4k电阻拉到了Vcc,T1的PN结就被打通了,因为Vpn=0.7V,所以T1的基极会被钳位在0.9V(0.2+0.7)。

T1的集电极就是T2的基极。要了解这个点的电压,我们要知道T1的工作状态。T1的集电极电阻恰好等于1.6k加上一个反向PN结的阻值。这个节电阻会非常大。有这么大的电阻,饱和电流就会非常低,就非常容易进入饱和状态。T1进入饱和之后,Vce之间的压差通常在0.1V左右,所以此时T1的集电极为0.3V。

T2的基极如果是0.3V,那么T2是截止的状态,如果T2截止,那么T4基极的电位就是高电平。那么T4导通。

那么电流就从R4、T4、D2、Y流出来了。

当输入3.4V时,R1被上拉到5V,T1的PN结还是能打通,打通的话,T1集电极的电压应该是4.1V(3.4+0.7),T1的等效电阻还是非常大,进入深度饱和,那么T2的基极就是3.5V(3.4+0.1),如果是3.5V的话,T2的管子就可以导通了,如果T2基极是3.5V的话,T2就可以导通,T2的E极应有2.8V,那么T5的管子也就导通了。

现在开始倒推,如果T5导通,BE之间被锁定在0.7V,所以T5的基极现在是0.7V。如果T5的基极是0.7V,T2的基极就不会是3.5V,它也被钳位了,就会变成1.4V。因为T1是一个NPN的半导体,那么基极就是一个P型半导体,集电极就是一个N型半导体。P型半导体有4.1V,N型半导体有1.4V,相当于一个二极管又被打通了。那么这个4.1V也无法保持,它会掉到2.1V。

此时T1发射极是3.4V,基极是2.1V,集电极是1.4V。

有两个需要注意的地方,首先是T1:因为基极是P型半导体,集电极是N型半导体,PN结被打通,那么1.4V和4.1V的压差保持不住,一定会往下掉。只要这个二极管导通,那么压降就是固定的,就会钳位在2.1V。

还有就是T2的集电极:如果T2达到深度饱和,那么T2的集电极应该是0.8V左右,如果是0.7V以上,按道理T4的BE之间就能导通,但我这里多了一个D2,如果D2也想要导通的话,那么T2就垫起来一个0.7V。也就是说,T4的基极要达到1.4V,才能让T4的CE导通。而现在0.8V,T4是没办法导通的。

T5和T2导通时,T4就截止了。因为T5是导通的状态,所以此时Y输出的就是接地,接近于0的信号。由于D2的存在,会让T4可靠地截止。如果没有D2,那么T4也会导通,T4,T5都导通的话,Y电压就不固定了。

输入级的D1的作用是保护T1这跟管子。如果电压扰动的话,A点电压可能出现负值,流经T1的电流会非常大。为了保护T1管子,我们接入了D1这个二极管。如果A点电压太低的话,尤其是到了-0.7V以下。D1这个管子会有电流从下往上流过去,就可以保护T1的管子。

OC门

这个TTL电路存在一些局限:

  • 高电平电压不够高:R4、T4、D3都会分压。
  • 不能直接线与:电流太大,会对三极管造成损伤。

为了解决第两个问题,我们将上面的电路和下面的电路的反相器都给去掉一部分,此时的电路只能输出低电平,我们需要再额外给它挂一个电阻和Vcc',Vcc'就可以给它提供高电平了。

在上面的电路中,Vcc和Vcc'是独立的,我们不需要Vcc提供高电平,Vcc'可以是5V,也可以更高。通过这样一个改变方式,我们甚至可以用TTL电路来推动CMOS电路,因为TTL和CMOS电压是不匹配的,而我们现在电压是可以外置的,我们可以让Vcc'高一点,也可以让它低一点,就看我们后面电路的需要了。这样,第一个问题也就被解决了。

这样的电路结构有一个专有名词,叫OC门。OC就是Open Collector集电极开路。与OC对应的还有一个OD,也就是Open Drain漏极开路,功能与OC门类似。

OC门指的是框起来的这一部分。

OC门只是习惯上的叫法,如果搜索Open Collector Gate,基本上是搜不到的。因为OC门对应的是Open Collector Output,就是OC输出。虽然叫OC门,但不属于门电路,和与或非门不是一个东西。

在此灵感基础上,飞利浦公司发明了I2C协议:

TS门

上一小节出现了线与,这一节说一下线或的接法。

必须使用OC门和外接电压来实现线与。线或的实现比较简单粗暴。只要加两个二极管,保证1来了不能从另一条路跑回去就可以。

如果使用TTL电路,左边的应使用OC门搭建,但右边的线或不能使用OC门,因为TTL电路输出时只有三点几伏,又要过一个二极管,可能只剩二点几伏。尽管仍在TTL电路对高压的识别范围内,但还是很少有人会用到这种接法。

对于上一节末尾提到的I2C总线协议。很多个从机仅仅是物理上连接在一起的,主机很难判断信息是从哪台设备发过来的,如果此时有一个开关,可以指定某台设备发送信息,其他的设备都不能开,就可以解决这个问题。

我们知道,多发射极之间是一个与门的关系,我们通过新增加的橙线来控制设备的输出状态。只有当橙线输入为0时,理想状态是设备将不起作用。而事实是输入0时,T4是可以导通的,Y将输出1。我们再加一部分电路,就可以使T4停止导通。

此时T1的集电极将是0,T4和T5都处于截止状态,Y既不是1也不是0,处于一个断路的状态,这就起到了一个开关的作用。

此时控制端输入0,能使设备停止工作,但如果将0改为1,T4和T5都将导通,如果外接电压过大,还有可能烧坏T2,解决方法就是加一个二极管,在使能信号为1时不去干扰T4。

EN是使能端,通常传递取反后的信号,传入时需要再取一次反。

GPIO输出模式

GPIO(英语:General-purpose input/output),通用型之输入输出的简称。

这是一个GPIO配置为输出时的内部示意图,我们要关注的其实就是这两个MOS管的开关状态。排列组合一下,一共就只有四种状态:

  • 上面的MOS管打开,下面的MOS管关闭时,输出高电平。
  • 上面的MOS管关闭,下面的MOS管打开时,输出低电平。
  • 两个MOS管都关闭时,输出处于一个浮空的状态,此时他对其他点的电阻时无穷大的,所以这个状态也被称为高阻态。
  • 当两个MOS管都打开时,电源直接对地短路,MOS管就被烧毁了。所以这种个状态并不存在。

当GPIO输出高电平时,电流流出去,给右边的MOS管的栅极充电,这个过程被称为“推”,把电流推出去。

当GPIO输出低电平时,电流流进来,给右边的MOS管的栅极放电,这个过程被称为“挽”,把电流挽回来。

所以所谓的推挽,其实就是描述了MOS管输出高低电平时电流的一个动作而已

我们再把下面两种状态拿出来组成一个组合。在这个组合里,上面的MOS管始终是关闭的,所以可以认为它就是不存在的,那么这个时候,下面的MOS管的漏极就等于啥也没接,处于一个开路状态,所以这个模式被称为开漏模式。

如果我们想用这个GPIO去控制一个芯片的引脚,但是这个GPIO输出的是5V,而后面的芯片的enable只支持3.3V输入。如果用推挽的话

复用输出

如果我们要点亮一颗LED灯,只需要单片机内部输出高电平即可,那么单片机内部如何控制引脚输出高电平呢?

右侧的两个二极管只是起保护作用,为了便于理解,我们暂时不理它。

它一共有4种输出模式:

  • 推挽输出
  • 开漏输出
  • 复用推挽输出
  • 复用开漏输出

推挽输出

如果它处于推挽输出模式,则可以控制PMOS和NMOS,如果要输出高电平,则PMOS导通、NMOS不导通;如果要输出低电平,则NMOS导通、PMOS不导通。

开漏输出

当处于开漏输出时,PMOS永远都是截止的,当NMOS导通时,输出低电平。当NMOS截止时,它输出的是高阻态。

这是因为这两个晶体管都处于截止状态,它的电阻可以看作无穷大,此时它的引脚就相当于连着一个无穷大的电阻,所以此时对外呈现的是高阻态。它正常工作时必须接一个上拉电阻,一般工作在电平不匹配的场合。比如STM32输出的是3.3V,如果要输出5V,就要接一个5V的上拉电阻。

当NMOS截止时,它就会输出5V高电平。这是因为内部阻抗无穷大,而这个上拉电阻阻值有限,所以引脚上输出的就接近5V。它还具有“线与”的特性。比如多个开漏输出引脚连接在一起,只有他们都输出高电平,也就是开漏输出的高阻态,最终才能输出高电平。但凡有一个开漏输出低电平,所有的引脚电压都被这一个拉低了

因为MOS管的漏极相当于开路,所以被称作“开漏输出”,与OC门的命名方式相同:OC门是集电极开路。

复用推挽/开漏输出

我们的推挽输出和开漏输出通过的是上面的那条线。我们直接对这跟线编程,就可以控制它输出高低电平了。

而复用推挽输出和复用开漏输出用的是下面那条线。它连接的是单片机和内部外设,比如PWM、USART、I2C,因为这些通信的频率很高,每秒钟电平变化上万次。如果使用推挽或者开漏输出的话,那我们就需要通过对上面的引脚编程,来控制它的输出。而如果我们使用它的复用功能,它的这些模块直接控制它的引脚输出,方便了我们的编程。

具体看哪一个工作模式,要看它的工作方式。

如果是I2C这种需要线与的场合,就需要用到单片机的复用开漏输出,而PWM、串口通讯这些,则需要用到它的复用推挽输出模式。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-04-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • TTL反相器
  • OC门
  • TS门
  • GPIO输出模式
  • 复用输出
    • 推挽输出
      • 开漏输出
        • 复用推挽/开漏输出
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档