← 最新论文
⚡ electrical engineering

A Study of GPIO Expansion Through Multiplexers and Shift Registers

本研究表明,利用 74HC4051 多路复用器和级联的 74HC595 移位寄存器配合 Arduino Uno 和 ESP32 等微控制器,为显著扩展物联网应用的 GPIO 容量提供了一种具有成本效益的解决方案,同时量化了由此产生的在执行速度、功耗和可扩展性方面的权衡。

原作者: Chandramouli Haldar

发布于 2026-09-08
📖 1 分钟阅读☕ 轻松阅读

原作者: Chandramouli Haldar

原始论文采用 CC BY 4.0 许可(https://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

在驱动从智能恒温器到工业传感器等一切设备的微型计算机世界中,存在着一个持久的瓶颈:连接点的短缺。这些被称为微控制器的设备是现代电子设备的“大脑”,但它们自带的物理端口(或称引脚)数量是固定的,这限制了它们与外界通信的能力。当工程师想要将十几盏灯、几个温度传感器和几个按钮连接到单个芯片上时,他们经常会面临没有地方插拔的问题。标准的解决方案是直接购买一个带有更多端口的更昂贵的芯片,但这会增加成本和复杂性。一种更优雅的方法是使用简单、廉价的辅助芯片,它们充当“交通指挥员”,允许许多设备共享单个连接。其中两种辅助工具分别是模拟多路复用器(analog multiplexer),它就像一个交换机接线员,将不同的输入线路路由到单个接收器;以及移位寄存器(shift register),它的功能类似于传送带,一次接收一个数据片段,然后一次性释放所有数据以控制多个输出。挑战一直在于,如何精确理解这些辅助工具究竟节省了多少资源、运行速度有多快,以及当系统规模扩大时是否会消耗过多电量。

最近,独立研究员 Chandramouli Haldar 进行了一项研究,旨在通过精准测量这些权衡关系,超越理论层面,观察这些组件在现实环境中的表现。该研究重点关注了两种特定的辅助芯片:用于管理输入信号的 74HC4051,以及用于管理输出信号的 74HC595。研究人员使用两种常见的微控制器板——Arduino Uno 和 ESP32(这两者被爱好者和专业人士广泛使用)对这些组件进行了测试。目标是确定这些简单、低成本的部件是否能在不降低速度或消耗过多能量的情况下,有效地扩展小型计算机的能力。这项研究并非发明了新技术,而是通过严谨的对比实验,展示了这些成熟工具在极限状态下的性能表现,为任何试图利用有限资源构建复杂系统的人提供了清晰的指南。

实验表明,这些辅助芯片在扩展微控制器能力方面效率极高。当研究人员将八个模拟传感器直接连接到计算机时,需要八个独立的引脚。而通过使用一个 74HC4051 多路复用器,同样的八个传感器仅需四个引脚即可读取,有效地将硬件需求减半。对于控制灯光或开关等数字输出,结果更为惊人。一个 74HC595 移位寄存器仅需三个引脚即可控制八个设备。当研究人员将四个这样的芯片串联在一起时,他们可以用同样的三个引脚控制三十两个设备。通过将八个芯片串联,系统可以在不需要在主计算机上增加任何额外连接点的情况下,管理六十四个输出。这证明了只要系统愿意进行顺序管理而非同时处理数据,少量的固定引脚就可以控制大量的设备。

然而,这种扩展是以牺牲速度为代价的,研究量化了系统变慢的具体程度。研究人员发现,使用标准软件命令来控制这些芯片比使用直接与计算机内部硬件对话的底层命令要慢得多。在 Arduino Uno 上,使用标准命令切换单个引脚大约需要 7.28 微秒,而使用直接硬件命令可以将该时间缩短至仅 0.125 微秒,使操作速度提高了近六十倍。当更新大组灯光时,这种差异变得更加关键。使用标准软件更新三十两个输出需要超过 1.7 毫秒,而直接方法仅需 30 微秒即可完成相同任务。本质上速度更快的 ESP32 开发板也表现出类似的改进,尽管标准控制与直接控制之间的差距比较慢的 Arduino 要小。研究结论指出,虽然硬件扩展效果良好,但控制这些硬件的软件速度与芯片本身同样重要。

功耗是另一个关键因素,实验结果令人放心。研究人员测量了带有和不带有这些扩展芯片时的系统耗电量。添加单个多路复用器使功耗增加了不到 1%。即使连接了八个移位寄存器来控制六十四个设备,总功耗增幅也低于 8%。这表明这些辅助芯片本身非常高效,不会显著消耗系统的电池电量。不过,研究指出,实际功耗很大程度上取决于设备的运行状态;如果六十四盏灯全部以全亮度开启,灯光本身所需的功率将远超控制芯片那微小的额外开销。研究证实,只要管理好负载,这种扩展方法对于电池供电设备是可行的。

研究还探讨了这种芯片链条在变得不可靠之前可以延伸到多远。研究人员测试了一个由八个芯片组成的链条并发现其运行完美,同时他们还计算了如果链条更长会发生什么。他们确定,虽然可控设备的数量随增加的芯片数量线性增长,但向链条末端发送信号所需的时间也会随之增长。对于一个包含三十二个芯片的链条,信号穿过整个线路所需的时间会更长,这可能会延迟灯光或开关的响应速度。研究表明,对于大多数实际应用(如控制一排灯或读取一组传感器),这些延迟是可以忽略不计的。但对于需要对数百个设备进行瞬时、同步变化的系统,移位寄存器的顺序特性就会成为一个限制因素。

最终,这项工作为需要连接大量设备的工程师和创客提供了一份清晰的、基于数据的路线图。它证实了使用多路复用器和移位寄存器是克服微控制器引脚物理限制的一种非常有效的方法,能以极小的功耗代价和可控的速度损失换取巨大的容量提升。研究强调,最佳效果来自于将这些简单的硬件工具与直接与计算机硬件对话的优化软件相结合。通过理解这些具体的限制与优势,构建者可以设计出既具扩展性又具高效性的系统,将一个只有少量引脚的小型芯片转变为能够管理复杂传感器和设备网络的强大控制器。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →