• |
  • 三极管在单片机数字电路里的应用

    2020-02-27 16:10:20
    1155
    来源:

    三极管在数字电路里的开关特性,最常见的应用有 2个:一个是控制应用,一个是驱动应用。所谓的控制就是如图3-7里边介绍的,我们可以通过单片机控制三极管的基极来间接控制后边的小灯的亮灭,用法大家基本熟悉了。还有一个控制就是进行不同电压之间的转换控制,比如我们的单片机是5V系统,它现在要跟一个12V的系统对接,如果IO直接接12V电压就会烧坏单片机,所以我们加一个三极管,三极管的工作电压高于单片机的IO口电压,用5V的IO口来控制12V的电路,如图3-8所示。

    图3-8三极管实现电压转换

    图3-8中,当IO口输出高电平5V时,三极管导通,OUT输出低电平0V,当IO口输出低电平时,三极管截止,OUT则由于上拉电阻R2的作用而输出12V的高电平,这样就实现了低电压控制高电压的工作原理。

    所谓的驱动,主要是指电流输出能力。我们再来看如图3-9中两个电路之间的对比。

    图3-9 LED小灯控制方式对比

    图3-9中上边的LED灯,和我们第二课讲过的LED灯是一样的,当IO口是高电平时,小灯熄灭,当IO口是低电平时,小灯点亮。那么下边的电路呢,按照这种推理,IO口是高电平的时候,应该有电流流过并且点亮小灯,但实际上却并非这么简单。

    单片机主要是个控制器件,具备四两拨千斤的特点。就如同杠杆必须有一个支点一样,想要撑起整个地球必须有力量承受的支点。单片机的IO口可以输出一个高电平,但是他的输出电流却很有限,普通IO口输出高电平的时候,大概只有几十到几百uA的电流,达不到1mA,也就点不亮这个LED小灯或者是亮度很低,这个时候如果我们想用高电平点亮LED,就可以用上三极管来处理了,我们板上的这种三极管型号,可以通过500mA的电流,有的三极管通过的电流还更大一些,如图3-10所示。

    图3-10三极管驱动LED小灯

    图3-10中,当IO口是高电平,三极管导通,因为三极管的电流放大作用,c极电流就可以达到mA以上了,就可以成功点亮LED小灯。

    虽然我们用了IO口的低电平可以直接点亮LED,但是单片机的IO口作为低电平,输入电流就可以很大吗?这个我想大家都能猜出来,当然不可以。单片机的IO口电流承受能力,不同型号不完全一样,就STC89C52来说,官方手册的81页有对电气特性的介绍,整个单片机的工作电流,不要超过50mA,单个IO口总电流不要超过6mA。即使一些增强型51的IO口承受电流大一点,可以到25mA,但是还要受到总电流50mA的限制。那我们来看电路图的8个LED小灯这部分电路,如图3-11所示。

    图3-11 LED电路图(一)

    这里我们要学会看电路图的一个知识点,电路图右侧所有的LED下侧的线最终都连到一根黑色的粗线上去了,大家注意,这个地方不是实际的完全连到一起,而是一种总线的画法,画了这种线以后,表示这是个总线结构。而所有的名字一样的节点是一一对应的连接到一起,其他名字不一样的,是不连在一起的。比如左侧的DB0和右侧的最右边的LED2小灯下边的DB0是连在一起的,而和DB1等其他线不是连在一起的。

    那么我们把图3-11中现在需要讲解的这部分单独摘出来看,如图3-12所示。

    图3-12 LED电路图(二)

    现在我们通过3-12的电路图来计算一下,5V的电压减去LED本身的压降,减掉三极管e和c之间的压降,限流电阻用的是330欧,那么每条支路的电流大概是8mA,那么8路LED如果全部同时点亮的话电流总和就是64mA。这样如果直接接到单片机的IO口,那单片机肯定是承受不了的,即使短时间可以承受,长时间工作就会不稳定,甚至导致单片机烧毁。

    有的同学会提出来可以加大限流电阻的方式来降低这个电流。比如改到1K,那么电流不到3mA,8路总的电流就是20mA左右。首先,降低电流会导致LED小灯亮度变暗,小灯的亮度可能关系还不大,但因为我们同样的电路接了数码管,后边我们要讲数码管还要动态显示,如果数码管亮度不够的话,那视觉效果就会很差,所以降低电流的方法并不可取。其次,对于单片机来说,他主要是起到控制作用,电流输入和输出的能力相对较弱,P0的8个口总电流也有一定限制,所以如果接一两个LED小灯观察,可以勉强直接用单片机的IO口来接,但是接多个小灯,从实际工程的角度去考虑,就不推荐直接接IO口了。那么我们如果要用单片机控制多个LED小灯该怎么办呢?

    除了三极管之外,其实还有一些驱动IC,这些驱动IC可以作为单片机的缓冲器,仅仅是电流驱动缓冲,不起到任何逻辑控制的效果,比如我们板子上用的74HC245这个芯片,这个芯片在逻辑上起不到什么别的作用,就是当做电流缓冲器的,我们通过查看其数据手册,74HC245稳定工作在70mA电流是没有问题的,比单片机的8个IO口大多了,所以我们可以把他接在小灯和IO口之间做缓冲,如图3-13所示。

    图3-13 74HC245功能图

    从图3-13我们来分析,其中VCC和GND就不用多说了,细心的同学会发现这里有个0.1uF的去耦天庄国际登录哦。

    74HC245是个双向缓冲器,1引脚DIR是方向引脚,当这个引脚接高电平的时候,右侧所有的B编号的电压都等于左侧A编号对应的电压。比如A1是高电平,那么B1就是高电平,A2是低电平,B2就是低电平等等。如果DIR引脚接低电平,得到的效果是左侧A编号的电压都会等于右侧B编号对应的电压。因为我们这个地方控制端是左侧接的是P0口,我们要求B等于A的状态,所以1脚我们直接接的5V电源,即高电平。图3-13中还有一排电阻R10到R17是上拉电阻,这个电阻的用法我们在后边介绍。

    还有最后一个使能引脚19脚OE,叫做输出使能,这个引脚上边有一横,表明是低电平有效,当接了低电平后,74HC245就会按照刚才上边说的起到双向缓冲器的作用,如果OE接了高电平,那么无论DIR怎么接,A和B的引脚是没有关系的,也就是74HC245功能不能实现出来。

    从下面的图3-14可以看出来,单片机的P0口和74HC245的A端是直接接起来的。这个地方,有个别同学有个疑问,就是我们明明在电源VCC那地方加了一个三极管驱动了,为何还要再加245驱动芯片呢。这里大家要理解一个道理,电路上从正极经过器件到地,首先必须有电流才能正常工作,电路中任何一个位置断开,都不会有电流,器件也就不会参与工作了。其次,和水流一个道理,从电源正极到负极的电流水管的粗细都要满足要求,任何一个位置的管子过细,都会出现瓶颈效应,电流在整个通路中细管处会受到限制而降低,所以在电路通路的每个位置上,都要保证通道足够畅通,这个74HC245的作用就是消除单片机IO这一环节的瓶颈。

    图3-14单片机与74HC245的连接

    标签: 单片机
    相关阅读
    单片机的清0方式有什么区别

    阅读单片机文档的时候一般寄存器是rw类型,还有一些是r或者w,对于一些特殊寄存器的置1是由硬件自动实现的,这两种方式有什么区别呢?在硬件实现上有什么不同?

    单片机晶振电路的原理及作用

    晶振是晶体振荡器的简称,在电气上它可以等效成一个天庄国际登录和一个电阻并联再串联一个天庄国际登录的二端网络。

    热门产品
    • CL05A106MQ5NUNC
      描述:10uF ±20% 6.3V X5R 0402
      品牌:SAMSUNG(三星)
      价格:0.027878
    • CL10B104KB8NNNC
      描述:100nF ±10% 50V X7R 0603
      品牌:SAMSUNG(三星)
      价格:0.01431
    • LMK105BJ474KV-F
      描述:470nF ±10% 10V X5R 0402
      品牌:Taiyo Yuden(太阳诱电)
      价格:0.01007
    • CL05A105KP5NNNC
      描述:1uF ±10% 10V X5R 0402
      品牌:SAMSUNG(三星)
      价格:0.008268
    • TCC0402X7R103K500AT
      描述:10nF ±10% 50V X7R 0402
      品牌:三环
      价格:0.003495