输入输出

随着电子行业的迅猛发展,微控制单元(Microcontroller Unit;MCU,以下简称MCU)已经成为大多数电子产品上不可或缺的一部分。使用MCU,必然接触到IO(Input,Output)口,对于IO口的输入输出状态就要有所了解。什么是漏极开路输出?什么是推挽电路?什么时候要加上拉电阻?什么时候加下拉电阻。要学习IO口状态,首先要知道三极管及mos管是MCU内部电路的重要组成部分,漏极开路的漏指的就是mos管的漏极(Drain——D),所以首先我们要先搞清楚三极管及mos管的工作原理。

1、PN结

PN结是三极管以及场效应管中最基本的组成部分,要想彻底搞明白三极管以及场效应管的工作原理,必须先搞清楚PN结形成的原理和工作特性。

在纯净的硅晶体中掺入五价元素(如磷),使之取代晶格中硅原子的位置,就形成了N型半导体。在纯净的硅晶体中掺入三价元素(如硼),使之取代晶格中硅原子的位置就形成了P型半导体。采用不同的掺杂工艺,将P型半导体和N型半导体制作在同一片硅片上,他们的交界面就形成了PN结。对于PN结的理解需要注意几点:

(1)N型半导体和P型半导体都是电中性的,所谓的P和N不代表电性,代表的是多数载流子的电性。

(2)加入这些杂质元素后就会形成多余载流子(空穴或者自由电子)的根本原因在于在原子内部,负电荷可分(每个电子带一个负电荷),正电荷不可分(全部集中于原子核)。

(3)空穴本身无法运动,所以空穴作为载流子的根本还在于吸收电子。也就是说空穴传输电流的本质还是电子的移动产生的电流。

PN结具体单向导电性,当给PN结加正向电压(正向偏置),即与内电场方向相反的外加电场时,内电场被削弱,最终的结果是N区的电子不断的进入P区,且N区可以从外加的电源中源源不断的汲取电子,于是就形成了较大的正向电流,如下图所示。

“图1"
图1

如果反过来加反向电压(反向偏置),即外电场与内电场方向相同,导致的是多子难以扩散,少子的漂移运动加强。但是由于少子数量极少,所以无法形成持续不断的电流,此时PN结处于截止状态。

PN结外加正向电压时处于导通状态,PN结外加反向电压时处于截止状态。

2、三极管

晶体三极管中有两种带有不同极性电荷的载流子参与导电,故称之为双极型晶体管(BJT),又称半导体三极管,简称晶体管。根据掺杂方式的不同在同一硅片上制造出三个掺杂区域,并且形成两个PN结,这就构成了晶体管三极管。晶体管三极管根据PN结不同分为NPN和PNP型。采样平面工艺制成的NPN型硅材料晶体管位于中间的P区称为基区,它很薄切杂质浓度很低;位于上层的N区是发射区,掺杂浓度很高;位于下方的N区是集电区,面积很大;三个区引出的电极分别称为基极b、发射极e和集电极c。发射区与基区之间的PN结称为发射结,基区与集电区之间的PN结称为集电结。三极管的结构及符号如下图所示:

“图2"
图2

三极管的主要功能有:交流信号放大、直流信号放大和电路开关。同时三极管有三个工作区间,分别是:放大区、饱和区和截止区。

输出特性曲线描述基极电流Ib为一常量的时候,集电极电流Ic与管压降Uce之间的函数关系,对于每一个确定的Ib,都有一条曲线,对于某一条曲线,当Uce从零逐渐增大时,集电结电场随之增强,收集基区非平衡少子的能力逐渐增强,因而Ic也就逐渐增大。当Uce增大到一定数值的时候,集电结电场足以将基区非平衡少子的绝大部分收集到集电区来,Uce再增大,收集能力已经不能显著提高,表现为曲线几乎平衡于横轴,即Ic几乎仅仅决定于Ib。晶体管有三个工作区域,如图所示:

“图3"
图3

(1)截止区(发射极反向偏置,集电极反向偏置):其特征是发射结电压小于开启电压且集电结反向偏置。对于共射电路,Ube<=Uon且Uce>Ube。此时Ib=0,而ic非常小,对于小功率的晶体管Ic甚至在1uA以下,因而可以认为晶体管在截止时的Ic=0.

(2)放大区(发射极正向偏置,集电极反向偏置):特征是发射结正偏且Ube>Uon,并且集电结反相偏置,即对于共射电路Ube>Uon且Uce>Ube。由于发射结正偏,发射极的多数载流子(无论是P的空穴还是N的自由电子)会不断扩散到基极,并不断从电源补充多子,形成发射极电流Ie。由于基极很薄,且基极的多子浓度很低,所以从发射极扩散过来的多子只有很少一部分和基极的多子复合形成基极电流Ib(发射极和基极的极性一定是相反的,所以各自的多子极性相反)。而剩余的大部分发射极传来的多子会继续扩散到集电极边缘。由于集电结反偏,所以反偏电压会将在集电极边缘的来自发射极的多子拉入集电极,形成较大的集电极电流Ic。这个时候Ic几乎仅仅决定于Ib与Uce无关,表现出Ib对Ic的控制作用。

(3)饱和区(发射极正向偏置,集电极正向偏置):特征是发射结和集电结均处于正向偏置,对于共射电路,Ube>Uon且Uce<Ube.此时Ic不仅与Ib有关,而且明显随Uce增大而增大。

在上面的描述中无论是截止区还是放大区都相对容易理解,但是对于饱和区就不太容易理解了。首先三极管导电的原理是:射极和基极之间正偏,发射极有电子可以注入基极。其中极少部分与基极的多子复合后仍有大量的电子处于基极边缘。此时集电极和基极之间反偏,于是集电极有足够的吸引电子的能力。此时只要基极电流增大就意味着有更多的电子处于基极和集电极边缘,此时这些电子全部可以被集电极吸走。于是此时的Ic只受到Ib的控制。但是当Uce逐渐减小,吸引电子的能力逐渐下降。当在Ib的作用下注入基极和集电极之间的电子没有办法被集电极全部吸走的时候,也就是随着Ib的增大,Ic的增大量与对应放大区相比减小或者不再增大的时候,就进入了饱和区。所以所谓的饱和区指的是集电极的吸收电子能力的饱和。工程上近似认为Uce=Ube时为临界饱和,但饱和曲线的真正物理意义应该是要得到某一数值的Ic,至少需要加上多大的Uce。

3、场效应管

场效应管(FET)是利用输入回路的电场效应来控制输出回路电流的一种半导体器件,由于紧靠半导体中的多数载流子导电,又称单极型晶体管。场效应管分为结型和绝缘栅两种,因为绝缘栅型晶体管(mosfet,下面简称mos管)的栅源间电阻比结型大得多且比结型场效应管温度稳定性好、集成化时工艺简单,因而目前普遍采用绝缘栅型晶体管。

Mos管分为N沟道和P沟道两类,每一类又分为增强型和耗尽型两种,只要栅极-源极电压Ugs为零时漏极电流也为零的管子均属于增强型管,只要栅极-源极电压Ugs为零时漏极电流不为零的管子均属于耗尽型管,这样就形成了四种类型。但实际应用的只有增强型的N沟道MOS管和增强型的P沟道MOS管,所以通常提到NMOS,或者PMOS指的就是这两种。对于这两种增强型MOS管,比较常用的是NMOS。原因是导通电阻小,且容易制造。所以开关电源和马达驱动的应用中,一般都用NMOS。下面的介绍中,也多以NMOS为主。MOS管的三个管脚之间有寄生电容存在,这不是我们需要的,而是由于制造工艺限制产生的。寄生电容的存在使得在设计或选择驱动电路的时候要麻烦一些,但没有办法避免。漏极和源极之间有一个寄生二极管,叫体二极管,在驱动感性负载(如电机),这个二极管很重要。体二极管只在单个的MOS管中存在,在集成电路芯片内部通常是没有的。N沟道增强型MOS管如下图所示:

“图4"
图4

MOS管电路符号如下图所示:

“图5"
图5

N沟道增强型MOS管基本上是一种左右对称的拓扑结构,它是在P型半导体上生成一层SiO2 薄膜绝缘层,然后用光刻工艺扩散两个高掺杂的N型区,从N型区引出电极,一个是漏极D,一个是源极S。在源极和漏极之间的绝缘层上镀一层金属铝作为栅极G。当Vgs=0 V时,漏源之间相当两个背靠背的二极管,在D、S之间加上电压不会在D、S间形成电流。当栅极加有电压时,若0<Vgs<Vgs(th)(Vgs(th)称为开启电压)时,通过栅极和衬底间形成的电容电场作用,将靠近栅极下方的P型半导体中的多子空穴向下方排斥,出现了一薄层负离子的耗尽层;同时将吸引其中的少子向表层运动,但数量有限,不足以形成导电沟道,将漏极和源极沟通,所以仍然不足以形成漏极电流Id。

进一步增加Vgs,当Vgs>Vgs(th)时,由于此时的栅极电压已经比较强,在靠近栅极下方的P型半导体表层中聚集较多的电子,可以形成沟道,将漏极和源极沟通。如果此时加有漏源电压,就可以形成漏极电流Id。在栅极下方形成的导电沟道中的电子,因与P型半导体的载流子空穴极性相反,故称为反型层。随着Vgs的继续增加,Id将不断增加。在Vgs=0V时Id=0,只有当Vgs>Vgs(th)后才会出现漏极电流,所以,这种MOS管称为增强型MOS管,如下图所示:

“图6"
图6

整个MOS管从关闭到开通的过程比较复杂,后面介绍电机应用的时候会重点介绍MOS管导通和关断过程及米勒电容(Miller Capacitance)在开关过程中起到的作用。

Vgs对漏极电流的控制关系可用转移特性曲线描述,转移特性曲线如下图b所示,转移特性曲线的斜率的大小反映了栅源电压对漏极电流的控制作用。

“图7"
图7

上图a称为输出特性曲线,曲线中在Vgs=2V的曲线下方可以成为截止区,该区域的情况是Vgs还没有到达导电沟道导通电压,整个MOS管还没有开始导电。

可变电阻区又称为放大区,在Vds一定的的情况下Id的大小直接受到Vgs的控制,且基本为线性关系。注意三极管中的放大区和MOS管的放大区有很大区别,不能觉得是相似的。

恒流区又称为饱和区,此时Id大小只收到Vgs的控制,Vds变化过程中Id的大小不变。

4、开漏输出及推挽电路

经过前面的学习,我们对三极管及MOS管的工作原理已经有了大致的了解,下面开始介绍IO常用的模式,下图是某MCU公司的IO口模式配置表:

“图8"
图8

从上表中可以清晰看到IO的输入输出状态是有漏极开路和推挽输出区别的,并且还有是否增加上拉电阻或者下拉电阻。首先解释一下上拉电阻和下拉电阻的概念。如果一个线路中的电压处于不确定的状态(例如一个引脚不和任何其它回路连通时),那我们就说它的电压是浮动的,他会随着时间不断变化跳动,而且很容易受到外界环境的影响。处于这种不确定状态的电路会被随机解释为高或者低电平,这种现象也叫电子噪声。然而程序必须是严格准确的,所以电路的设计一定要避免线路电压处于浮动状态。可以使用上拉电阻或者下拉电阻将电路的电压在任何时候都保持在确定的状态下,这就是上拉电阻和下拉电阻的作用。下拉电阻的作用就是将一个未知的电平拉低到稳定的低电平状态。上拉电阻的作用就是将一个未知的电平拉高到稳定的高电平状态。

漏极开路:要理解漏极开路输出要先理解开集输出,开集的意思就是三极管集电极(collector)一端什么都不接,直接作为输出端口(如下图中C端与R1断开)。如果要用这种电路带负载,比如接一个LED,必须接一个上拉电阻。当Vin没有电流的时候(三极管基极没有电流流入),三极管Q5断开,LED灯亮;当Vin流入电流的时候,Q1导通,LED灯灭。开漏输出就是把三极管换成场效应管(Field effect transistor)。

“图9"
图9

推挽电路:如下图所示,上面的三极管是NPN型三极管,下面的三极管是PNP型,当Vin电压为Vf时,上面的三极管控制端有电流流入,上管Q6导通,于是电流从上往下通过,提供电流给负载,经过上面的NPN三极管提供电流给负载R2,这就叫做推;下表1为推挽输出和开漏输出对比:

“”

当Vin为GND时,下面的三极管有电流流出,Q7导通,有电流从Q7上往下导通,这个过程就叫做挽。

“图10"
图10

对于开漏(开集)输出,看一个更典型的经典应用,如下图所示:

“图11"
图11

上图电路为电机控制的一个驱动输出电路。MCU输出端能量级低,不足以驱动MOS管V1,这个时候就需要借助电路辅助输出。当PWM为低电平的时候,NPN三极管Q7(MMBT5551)由于Vbe=0V,所以属于关断状态,PNP三极管Q13(SS8550)的Vbe也为0V,所以Q13也在关断状态,MOS管的Vgs=0V,所以V1无法开通。

当PWM信号为高电平时(一般MCU输出为3.3V或5V),在Q7的发射结正向偏置且大于开启电压,此时Q7导通。由于Q7导通,R93、Q7及R87形成回路,Q13的的基极与发射极电压不再等电位,此时Vbe<0,Q13导通,15V电源通过R101给MOS管的栅极充电,MOS管逐渐开通。

5、单片机的并行口结构介绍

了解了IO口输入输出模式,下面先以8051单片机的IO口为例进行IO口模式解析。

1)P0口结构

P0口由一个输出锁存器、一个转换开关MUX、两个三态输入缓冲器、输出驱动电路和一个与门及反相器组成,如下图所示:

“图12"
图12

图中控制信号状态决定转换开关的位置。当控制信号为1时,开关处于图中所示位置;当控制信号为0时,开关拨向锁存器的反相输出端。

这里只讨论P0口作为通用IO使用的情况,此时单片机硬件自动的使控制信号为0,MUX多路开关接向锁存器的反相输出端,多路开关的控制信号同时与与门的一个输入端是相接的,与门的逻辑特点是“全1出1,有0出0”那么控制信号是0的话,这时与门输出的也是一个0(低电平),与门输出的“0”使输出驱动器的上拉场效应管V1处于截止状态。

P0口用作向引脚输出(即输出状态Output)的工作过程:当写锁存器信号CP 有效,数据总线的信号→锁存器的输入端D→锁存器的反向输出Q非端→多路开关→V2管的栅极→V2的漏极到输出端P0.X。当多路开关的控制信号为低电平0时,与门输出为低电平,V1管是截止的,所以作为输出口时,P0是漏极开路输出,当驱动上接电流负载时,需要外接上拉电阻。流程图如下:

“图13"
图13

P0口用作向引脚输入(即输入状态Input)的工作过程,数据输入时(读P0口)有两种情况:读引脚和读锁存器,这里只分析读引脚的情况,读引脚数时,读引脚缓冲器打开(即三态缓冲器的控制端要有效),通过内部数据总线输入,并被送入累加器。执行该类输入指令之前要先把锁存器写入“1”,目的是使场效应管V2截止,从而使引脚处于悬浮状态,可以作为高阻抗使用。否则,在作为输入方式之前曾向锁存器输出过“0”,V2导通会使引脚钳位在“0”电平,使输入电平“1”无法读入。请看下图:

“图14"
图14

2)P1口结构

P1口一般使8051单片机的唯一单功能口,只能作为通用的数据输入和输出。结构如下图所示:

“图15"
图15

由图可见,P1口由一个输出锁存器、两个三态输入缓冲器和输出驱动电路组成,内部设有上拉电阻。输出高电平的时候,能向外提供拉电流负载,不像P0那样需要上拉电阻。当用作读引脚的时候,控制器打开读引脚三态门,引脚上的数据经过三态门进入内部总线,并被送入累加器。同P0口一样,也需要注意先把锁存器写入“1”,使场效应管V2截止,从而使引脚处于悬浮状态,可以作为高阻抗使用。否则,在作为输入方式之前曾向锁存器输出过“0”,V2导通会使引脚钳位在“0”电平,使输入电平“1”无法读入。

6、M0内核的IO口模式

“图16"
图16

上图为某MCU的IO口基本结构。可以看到上图中的PMOS和NMOS组成了一个CMOS(互补金属氧化物半导体,Complementary Metal Oxide Semiconductor)。下面简述一下用CMOS组成的应用电路的工作过程(见下图)。

“图17"
图17

电路将一个增强型P沟道MOS管和一个增强型N沟道MOS场效应管组合在一起使用。当输入端为低电平时,P沟道MOS管导通,输出端与电源正极接通。当输入端为高电平时,N沟道MOS场效应管导通,输出端与电源地接通。在该电路中,P沟道MOS场效应管和N沟道MOS场效应管总是在相反的状态下工作,其相位输入端和输出端相反。通过这种工作方式我们可以获得较大的电流输出。同时由于漏电流的影响,使得栅压在还没有到0V,通常在栅极电压小于1到2V时,MOS场效应管即被关断。不同场效应管其关断电压略有不同。也正因为如此,使得该电路不会因为两管同时导通而造成电源短路。

通过上面分析的上拉电阻和下拉电阻的作用,结合图16可知,当我们需要读取IO端口状态的时候,为了将电路的电压在任何时候都保持在确定的状态下,可以使用上拉电阻或者下拉电阻;作为输出的时候,根据自己的需要,可以将IO口配置为漏极开路或推挽输出的模式。

7、小结

对于IO模式如果概念不清,很可能会错误的配置IO状态,轻点的可能达不到想要的效果,严重的后果可能会烧毁MCU,所以合理的配置IO模式对于使用MCU至关重要。相信经过本次学习,大家都可以合理的配置IO为自己想要的模式了。

来源:晟矽微电子
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 4255
订阅 RSS - 输入输出