5个IO控制20个LED?查理复用实战拆解

前言

上期我们留了一个问题:

5个IO,真的能控制20个LED吗?

有些不做消费级遥控器的朋友,可能不太理解其中的成本压力。

但如果你做过大批量、微利的产品就会知道------

用最少的成本,实现最多的功能,才是真正的工程能力。

本期,我们就来拆解这个操作过程。


一、原理:与按键T型扫描相似,但有本质不同

这种方法,和按键的T型扫描非常接近。

但因为:

按键 → 无方向(按下即导通)

LED → 有方向(必须正向偏置才亮)

所以计算方式不同:

按键扫描数量 = 组合计算方法

LED扫描数量 = 排列计算

结论:

同样n个IO,可控制的LED数量 = 可扫描按键数量的2倍

5个IO →

按键:5×4/2=105×4/2=10 个

LED:5×4=205×4=20 个 ✅


二、电路图(核心)

(上图为:LED电路)

乍一看,和T型按键扫描电路结构一模一样。

唯一的区别是:

每个"按键位置"被替换为正反并联的两个LED。

正向 → 亮其中一个LED

反向 → 亮另一个LED

(对比图)


三、操作过程(完整时序)

我们以 5个IO(IO1--IO5) 为例,逐步说明。

第一步:IO1 = 低电平,准备点亮正向LED组

IO1 输出 低电平

IO2--IO5 设置为 输入(不加上下拉)

此时所有LED熄灭

依次判断并点亮:

|---------|----------|----------------|--------|----------|
| LED | 条件判断 | 操作 | 等待 | 恢复 |
| LED1 | 需要点亮 | IO2 = 输出 + 高电平 | 50μs | IO2恢复为输入 |
| LED2 | 需要点亮 | IO3 = 输出 + 高电平 | 50μs | IO3恢复为输入 |
| LED3 | 需要点亮 | IO4 = 输出 + 高电平 | 50μs | IO4恢复为输入 |
| LED4 | 需要点亮 | IO5 = 输出 + 高电平 | 50μs | IO5恢复为输入 |

✅ 此时完成 LED1--LED4 的控制。


第二步:IO1 = 高电平,准备点亮反向LED组

IO1 改为 输出高电平

依次操作 LED5--LED8

|---------|----------|----------------|--------|----------|
| LED | 条件判断 | 操作 | 等待 | 恢复 |
| LED5 | 需要点亮 | IO2 = 输出 + 低电平 | 50μs | IO2恢复为输入 |
| LED6 | 需要点亮 | IO3 = 输出 + 低电平 | 50μs | IO3恢复为输入 |
| LED7 | 需要点亮 | IO4 = 输出 + 低电平 | 50μs | IO4恢复为输入 |
| LED8 | 需要点亮 | IO5 = 输出 + 低电平 | 50μs | IO5恢复为输入 |

✅ 此时完成 LED5--LED8 的控制。


第三步:切换公共端,继续点亮其他方向组合

把 IO1 恢复为输入

把 IO2 设为输出低电平(作为新的公共阴极)

依次操作 LED9--LED11(以及后续组合)

按此逻辑循环扫描所有 5×4=205×4=20 种IO对组合。


四、时间参数与视觉连续性

每个LED点亮/熄灭切换时间 = 50μs

20个LED完整一轮 = 20×50μs=1ms

扫描频率 = 1kHz

人眼的视觉暂留极限约 24Hz

1kHz 远高于此 → 人眼看不出LED在快速切换

只会"看到"所有需要的LED同时持续点亮


五、总结一句话

不是用更多IO,而是用"方向 + 时间"换数量。

这种方法在消费电子、遥控器、键盘背光、小家电面板中非常实用。

既省IO,又省MCU成本,还能保持用户体验。

关注我,带你掌握更多射频遥控与嵌入式底层的控制逻辑。


深圳市振浩微电子有限公司成立于2015年,是一家致力于芯片研发以及成果转化的国家高新技术企业 ,10多年都在深耕SUB1G,各类产品规格,适合不同大小、距离、部署、预算等项目要求的落地方案有很多,公里级稳定传输也不是问题。如果你想将芯片拿回去自主开发掌握终端产品核心技术,我们自研的高集成芯片,简化产品电路设计,会让您的二次开发更省心,欢迎私信,免费拿样测试

相关推荐
Brilliantwxx20 分钟前
【STM32】 I2C_EEPROM_test 工程(实战篇)
开发语言·stm32·单片机·嵌入式硬件·ecmascript
dadaobusi21 分钟前
学习:三层交换机
学习
en.en..26 分钟前
TCP套接字编程 完整流程解析(服务端 + 客户端)
网络
en.en..27 分钟前
UDP套接字编程完整标准流程(服务端+客户端)
单片机·嵌入式硬件
笨鸟先飞的橘猫1 小时前
树结构在游戏行业中的应用
学习·游戏
斑马1391 小时前
单片机学习笔记(一)——STC89C52的GPIO、LED、数码管、定时器和中断
单片机·stc89c52
Quanqiucard1 小时前
“十五五”数字乡村建设提速,平安乡村监控物联网卡怎么选才稳定
网络·物联网
小程序设计1 小时前
5G移动网络中设备与设备通信技术研究
网络·安全
开发笔记-阿牛1 小时前
做工业报警器语音提示,CK6159A 为什么更合适?
人工智能·stm32·单片机·嵌入式硬件·音频
yangmu32032 小时前
从显像管到Micro-LED:屏幕的光之进化
学习·显示器