0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

三极管是怎样提高单片机IO口驱动LED的能力

零是起源 来源:零是起源 作者:零是起源 2022-02-22 09:23 次阅读

学过单片机应该都知道。单片机的IO口可以输出三种状态:高电平、低电平、高阻。一般不同封装和颜色的驱动电压和电流都有些许差异,具体要参照使用LED规格书。这里演示为2V/20mA就可额定工作条件的LED。

那么利用IO口的低电平状态可以设计如图方式1的驱动LED方法(这个也是不用三极管情况下常用的方式),利用IO口的高电平状态可以设计如图方式2的驱动LED方式。

poYBAGITeaKATyWeAAEdnaYrxgg550.png

那么大家实际搭好电路和载入驱动程序后,方式1可以完美运行,但是方式2的灯却不能亮。为什么呢?这就要引入灌电流和拉电流的概念来解释了。

1、灌电流:图中第(1)个连接方式中,单片机输出低电平时,电流方向由外部进入单片机,称为灌电流,电流由外部电源提供。

2、拉电流:图中第(2)个连接方式中,单片机输出高电平时,电流方向由单片机输出到外部,称为拉电流,电流由单片机提供,可理解为“外部元件从单片机取电”。

如果你查看单片机的规格书,你会发现IO口允许外部灌入电流可以达到几十mA,但是对所有IO口合计的总灌入电流是有限制的,所以你需要同时驱动几个LED亮,可能是行不通的。而再来看单片机的拉电流是uA级别的,根本无法驱动外部LED。那么为什么高电平状态,驱动能力这么弱呢?原因是IO口内部集成了较大的上拉电阻,而到GND是有一个开关管(阻抗非常低、可以忽略)控制的。

pYYBAGITebqALdMbAABHsmF6xAM198.png

上面仅仅讲述了单片机IO口的情况,那么举一反三,很多IC的GPIO口都会有灌入电流和拉电流的限制,所以在使用的时候要注意这个电流的限制。

可以知道使用方式1驱动LED对LED数量是有限制的。另外如果LED发生损坏短路,也会有电流直接流入IO口,可能造成单片机损坏。就有人引入了三极管来解决这些问题,IO口只负责控制三极管通断即可。应尽可能选三极管饱和后Vce压降小的。这里饱和后Vce=0.1V。LED 2V/20mA驱动,那么三极管Ic=20mA。限流电阻R1=(5-2-0.1)V/20mA=145Ω,145不是标称值,那么实际选择150Ω的电阻,实际Ic=(5-2-0.1)V/20mA=19mA。

poYBAGITeciAdow0AAB4tH-aJWU282.png

然后确认三极管的放大倍数Hfe,假设是100,那么三极管B极电流是19mA/100=0.19mA。

poYBAGITeeaARwA9AAAj4qRPXuI702.png

也就是说如果IO口需要驱动这个LED,必须支持的最小输出电流至少为0.19mA。这个电流非常小,多个串口同时驱动多个LED,压力也没那么大。

但是假如你用的这个ICIO口最大输出电流只有0.1mA,还是无法满足怎么办,那么就需要NPN+PNP两个三极管组合来解决了。

pYYBAGITefaACVe0AACKgMm8kUs541.png

参照上图,如果只用一个NPN管来驱动LED,那么Ic电流=25mA,那么KRC103S 基极电流Ib=Ic/Hfe=25mA/150=0.167mA,很明显驱动不了。那么再加入一个PNP管KRA102S,PNP管基极电流Ib=Ic/Hfe=25mA/100=0.25mA,然后NPN管导通其Ic=0.25mA,那么IO口的电流就只有0.25mA/150=0.002mA。这样一来控制IC就能驱动LED了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    242

    文章

    23306

    浏览量

    661537
  • 三极管
    +关注

    关注

    143

    文章

    3616

    浏览量

    122086
  • 单片机
    +关注

    关注

    6039

    文章

    44575

    浏览量

    636384
  • NPN
    NPN
    +关注

    关注

    11

    文章

    2643

    浏览量

    47465
  • GPIO
    +关注

    关注

    16

    文章

    1206

    浏览量

    52175
收藏 人收藏

    评论

    相关推荐

    为什么大家都用三极管来配合单片机IO驱动负载

    上一篇推文中我们已经说了,驱动继电器的时候,通常我们会采用三极管来配合单片机IO。至于为什么不直接用
    的头像 发表于 12-19 16:02 3478次阅读

    来唠唠为啥单片机I/O驱动一般都选三极管而非MOS

    电路中的部分图,主要是表示下晶体和MOS。 针对以上两个问题,一般我们从单片机手册上可以得知IO的电流很小,可以有带负载
    的头像 发表于 08-01 13:56 6909次阅读
    来唠唠为啥<b class='flag-5'>单片机</b>I/O<b class='flag-5'>驱动</b>一般都选<b class='flag-5'>三极管</b>而非MOS<b class='flag-5'>管</b>

    8050NPN三极管IO有上拉电阻时基极电压的电平问题

    图中三极管为8050三极管,是电流控制型的。如果单片机io有个200K的上拉,基极的电压是高电平还是低电平?
    发表于 01-09 11:09

    三极管单片机中担任的“角色”,不可小看

    推荐直接接 IO 了。那么我们如果要用单片机控制多个 LED 小灯该怎么办呢?除了三极管之外,其实还有一些
    发表于 08-07 18:30

    使用三极管提高单片机IO驱动LED能力的设计

    LED。那么利用IO的低电平状态可以设计如图方式1的驱动LED方法(这个也是不用三极管情况下
    发表于 03-04 07:00

    单片机系统中三极管的妙用

    要跟一个 12V 的系统对接,如果 IO 直接接 12V电压就会烧坏单片机,所以我们加一个三极管三极管的工作电压高于单片机
    发表于 11-29 19:27

    怎样单片机IO来控制三极管的开关特性使共阳极的LED点亮?

    怎样单片机IO来控制三极管的开关特性使共阳极的LED点亮
    发表于 10-15 06:02

    单片机驱动能力不足的提高方法

    单片机的GPIO驱动能力有限,不能直接驱动较大功率的负载,如果负载的功率较大必须要考虑采用驱动功率器件的方式,比如说
    的头像 发表于 09-30 11:17 2.5w次阅读

    如何提高单片机驱动能力

    单片机只是一个控制中心,IO驱动能力是很弱的,只能用于信号处理或者信号控制,最多是驱动一个LED作为指示灯。
    的头像 发表于 10-21 17:42 1.1w次阅读

    小白学单片机(22) IO:蜂鸣器的使用/三极管的工作原理介绍资料下载

    电子发烧友网为你提供小白学单片机(22) IO:蜂鸣器的使用/三极管的工作原理介绍资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指
    发表于 04-19 08:47 6次下载
    小白学<b class='flag-5'>单片机</b>(22) <b class='flag-5'>IO</b><b class='flag-5'>口</b>:蜂鸣器的使用/<b class='flag-5'>三极管</b>的工作原理介绍资料下载

    三极管单片机中的应用!

    三极管在数字电路里的开关特性,最常见的应用有 2 个:一个是控制应用,一个是驱动应用。我们可以通过单片机控制三极管的基极来间接控制后边的小灯的亮灭,用法大家基本熟悉了。还有一个控制就是
    发表于 12-20 19:13 6次下载
    <b class='flag-5'>三极管</b>在<b class='flag-5'>单片机</b>中的应用!

    8050三极管发射驱动继电器电路图

    一个采用单片机IO输出的5V电压通过8050三极管的发射驱动一个工作电流为400~450mA
    发表于 08-29 14:30 2.2w次阅读
    8050<b class='flag-5'>三极管</b>发射<b class='flag-5'>极</b><b class='flag-5'>驱动</b>继电器电路图

    单片机I/O驱动选用三极管的原因

    单片机io驱动选用三极管的原因。
    的头像 发表于 12-03 14:27 5244次阅读
    <b class='flag-5'>单片机</b>I/O<b class='flag-5'>口</b><b class='flag-5'>驱动</b>选用<b class='flag-5'>三极管</b>的原因

    为什么单片机I/O驱动MOS时,不是直接驱动,而是经过三极管

    为什么单片机I/O驱动MOS时,不是直接驱动,而是经过三极管
    的头像 发表于 01-16 11:14 3412次阅读

    单片机I/O驱动的选择中,为什么都选用三极管而不是MOS呢?

    单片机I/O驱动的选择中,为什么一般都选用三极管而不是MOS呢? 在单片机的I/O
    的头像 发表于 03-27 15:33 1578次阅读