当前位置: 首页 > news >正文

一个IO口控制两个LED

    今天在公众号“芯片之家”看到一篇推文, 介绍使用单片机 的一个IO端口,分别控制两个发光二极管各自独立的点亮与熄灭 ,总共四个状态。为了控制两个LED的目的,需要应用到MCU的IO端口的四个工作状态:输出高电平、输出低电平、高阻状态以及输出连续对称方波这四种状态。

  在下面的面包板上,演示了使用一条IO控制线控制l两个LED 分别点亮和熄灭的四种状态。
▲ 一个个单片机IO端口分别控制两个LED

 ▲ 一个单片机IO端口分别控制两个LED

为了理解其中的工作原理,则需要熟悉LED的两个工作特性:

  1. 单向导电特性;

  2. 导通阈值特性;

  正如发光 二极管名字所说,LED只能向二极管那样单向导电发光。如果施加电压极性反了,LED则不工作。

  导通阈值特性是指,只要施加的正向电压超过一定阈值之后,LED才能够导通。这一点可以从下面这支红色LED的正向V-A特性曲线看出。

▲ 红色LED的V-A特性

 ▲ 红色LED的V-A特性

       上面曲线表明,只有当正向电压超过大约1.5V之后,电流才会出现快速增加。在此之前,正向导通电流很小。

  不同颜色的LED由于所使用的半导体材料不同,导通阈值电压会有所区别,如果LED发射光谱中包括更短的光谱成分,则相应的导通电压阈值会更高。:

  • 黄色LED的正向导通电压超过了1.7V。
  • 下面的绿色和蓝色LED的正向导通电压的阈值都已经超过了2.5V了。

 

▲ 绿色LEDV-A特性曲线

▲ 绿色LEDV-A特性曲线 

▲ 蓝色LED的V-A曲线

▲ 蓝色LED的V-A曲线 

        将不同LED的V-A特性曲线绘制在一起,可以凸显出不同LED的阈值电压的差异。值得说明的是,当电压小于阈值电压的时候,LED并不是不导电,只是电流极小。比如在2.5V,虽然还没有超过蓝色LED的阈值电压,但在LED灯芯处还是能够隐约看到发光。

  一旦电压超过阈值电压,LED正向导通电流便会迅速增加到1mA以上。之后虽然电流增加很快,但看起来,在正向导通电流2 ~ 10mA之内,LED都显示为点亮状态,亮度倒是看起来差不多。

▲ 不同颜色LED的伏安特性

▲ 不同颜色LED的伏安特性

        合理的 应用LED的单向导电和导通阈值特性,便可以在一条单片机IO口的四种工作状态下,来控制两个LED的点亮和熄灭了。

  比如利用LED管的单向导通特性,将两个LED正反向并联在一起,分别连接在分压电阻中心和单片机的IO口上,就可以实现单个IO口控制两个LED的目标。在下图中,显示了在一个工作在5V电压下的单片机IO控制两个LED(红色,黄色)的四中状态。
▲ 两个LED正反并联连接在MCU的IO口与分压电阻中点

▲ 两个LED正反并联连接在MCU 的IO口与分压电阻中点 

        当IO口为高阻状态,两个LED都熄灭;当IO端口为高电平时,红色LED点亮;当IO端口为低电平的时候,黄色LED点亮;当IO输出方波信号时(通常要求频率大于100Hz),两个LED交替点亮,根据人眼色视觉 暂留特性,看起来两个LED都点亮了。

  下面动图显示了IO口的四种状态对应两个LED的点亮与熄灭。
▲ 对应两个LED四个状态的IO输出波形

▲ 对应两个LED四个状态的IO输出波形 

        上面的LED并联方案是利用了LED的单向导通特性。如果考虑到LED的阈值特性,这种方案就会受到一定限制。比如,控制的LED绿色或者蓝色时,由于它们的导通阈值电压超过了2.5V,因此绿色和蓝色LED就很难被点亮。

  下面动图显示,绿色和蓝色LED只能发出微弱的光线。

▲ 对于两个LED四种状态的IO波形

▲ 对于两个LED四种状态的IO波形 

        如果当单片机和LED的供电电压为3.3V时,情况将会更加严重。比如在3.3V供电情况下,使用并联LED方案,对于红色的LED还可以勉强工作,但对于绿色和蓝色LED则无法点亮了。

▲ 对于两个LED四种状态的IO波形

 ▲ 对于两个LED四种状态的IO波形

        在前面推文中则介绍了另外一种方案,即LED串联方案,可以解决蓝色和绿色LED控制问题。

  下图显示了LED串联方案电路示意图:

▲ 两个LED串联控制方案

▲ 两个LED串联控制方案

        当IO端口为高阻时,由于两个LED的导通阈值电压之和大于电源电压(+5V),它们都不导通;当IO端口为低电平时;上面的绿色LED点亮;当IO端口为高电平时,下面的蓝色LED点亮;当输出高频方波信号时,两个LED都被点亮。

▲ 对应两个LED四种状态IO波形

 ▲ 对应两个LED四种状态IO波形

        串联LED控制模式只能应用于两个LED的电压加起来超过电路电源电压的情况。比如蓝色、绿色LED,工作在3.3V,5V电压下都是可以的。

  如果将两个LED更换成红色(1.6V)和绿色(2.5V),使用串联模式,则只能应用在电源电压小于4.1V的情况下,比如3.3V的单片机电路中。如果在5V电路中,则会出现两个LED无法同时熄灭的情况。

  下面就显示了一个红色,一个绿色LED工作在5V电源电压下,当IO为高阻时,它们实际上无法熄灭。
▲ 对应两个LED四种状态IO波形

 ▲ 对应两个LED四种状态IO波形

        在5V电压下,那么对于红色、绿色LED使用前面并联LED方案行不行呢?

  通过实验会发现,也出现了问题。由于绿色LED在2.5V下无法点亮,因此并联方案也无法工作。如下图所示:

▲ 对应两个LED四种状态IO波形

 ▲ 对应两个LED四种状态IO波形

        那么问题来了,在5V电压下,该使用什么方案,才能够利用单片机一个IO口的四种模式,来分别控制一个绿色LED和一个红色LED的点亮和熄灭呢?就像下面这个动图里所示的那样。

▲ 对于两个LED四种状态的IO波形

▲ 对于两个LED四种状态的IO波形 

        如果并联LED和串联LED工作原理已经理解了,我想此时,你的脑子里已经有了答案了。如果你有了想法,就将答案写在后面的留言中吧。

补充说明

         在 用一个I/O口控制1个三色指示灯, 2个单色指示灯 ,作者对于串联方案进行补充。使用另外一个二极管 对串联的两个LED进行并联,消除无法完全关闭的问题。

▲ 改进的方案

▲ 改进的方案▲ 在没有旁滤二极管的时候,红色、黄色LED无法截止 

▲ 在没有旁滤二极管的时候,红色、黄色LED无法截止▲ 有着旁滤的二极管是,红色黄色LED可以有效截止了 

▲ 有着旁滤的二极管是,红色黄色LED可以有效截止了

▲ 增加旁滤二极管的时候,可以有效解决无法截止的问题

 ▲ 增加旁滤二极管的时候,可以有效解决无法截止的问题 

■ 相关文献链接:

  •  介绍使用单片机的一个IO端口,分别控制两个发光二极管各自独立的点亮与熄灭
  •  用一个I/O口控制1个三色指示灯, 2个单色指示灯

http://www.jsqmd.com/news/919398/

相关文章:

  • 报考与前景特色职业就业分析
  • Anthropic Agent SDK 不同模型前缀缓存的稳定性
  • 德伟DCD780电钻开关接触不良故障维修全攻略
  • STM32F4驱动AD7606避坑指南:SPI配置、时序调试与电压换算全流程
  • Gemini测试用例生成能力深度测评(实测137个API接口,缺陷捕获率提升68.3%)
  • 【Gemini用户故事编写黄金法则】:20年资深专家亲授7大避坑指南与实战模板
  • 毕业论文神器!2026最新AI论文写作软件测评与推荐
  • 数据集成平台推荐:2026年企业级数据集成能力与信创适配全景评测 - 科技焦点
  • 深度解析:VRM4U在Unreal Engine 5中的VRM运行时加载技术实现
  • AI驱动智能纪念品设计全流程:从数据训练到量产交付的7步极简工作流(附2024最新工具链清单)
  • VS2013安装后别急着写代码!先完成这5个关键设置(主题、项目模板、安全检查关闭)
  • 数据可视化大屏引擎推荐:2026年大屏设计与实时数据展示能力全景横评 - 科技焦点
  • 超微X10/X11服务器开机卡代码?别慌,手把手教你排查内存、CPU、PCIe三大‘元凶’
  • LuckyLilliaBot:如何快速构建企业级多协议QQ机器人完整实战指南
  • Seraphine:英雄联盟玩家的智能助手,3分钟开启高效游戏体验
  • 企业部署ChatGPT/文心一言/通义千问前必须做的7项版权合规动作:错过第4项=面临千万级赔偿风险
  • 2026最新!AI论文写作工具测评:这几款知网都认可
  • 关于深圳先途邦跨境海外商标注册的专业度探讨 - 广东科技观察
  • 避开部署坑!OpenClaw v2.7.8 完整安装流程整理
  • 数据分析报告生成工具有哪些?2026年主流产品报告自动化与落地能力全解析 - 科技焦点
  • 避开STM32G4比较器的那些坑:LOCK机制、EXTI连接与滞回电压HYST配置详解
  • ArcGIS提取的高程点导到CAD没高度?一个字段赋值的小操作就能解决
  • 别再盲目测序了!用Jellyfish+GenomeScope2.0,5步搞定基因组大小和杂合度预估(附R绘图避坑指南)
  • OpenVLA 技术综述
  • 掌握Markdown实时预览:打造高效写作工作流的3个关键策略
  • ADI DSP老玩家血泪史:ADZS-ICE-1000仿真器最全避坑指南(附驱动安装与CCES 2.11.1配置)
  • 从‘记不住’到‘忘不掉’:Cookie、Session与Token,你的Web登录方案选对了吗?
  • Python视频处理基础
  • 2026年大模型行业转折:从参数竞赛到价值验证,中小企业怎么跟上
  • 【超高质量】eNSP OSPF动态路由完整实操教程(原理详解+多设备组网+深度排错)