多路复用是否优于 Charlieplexing?

电器工程 引领 复用器 查理普林
2022-01-24 04:50:08

我已经回顾了这两种方法,多路复用实际上似乎只有一个优势,即与 Charlieplex 阵列相比,追踪故障 LED 更容易。

更有知识的人可以解释任何其他权衡吗?

2个回答

是的,多路复用和 charlieplexing 都有其优点,并且每个都最适合不同的任务。

charlieplexing 的主要优点是它可以在中等大小的微控制器上完成,用更少的 I/O 引脚驱动更多的 LED,并且除了 LED 之外可能没有外部硬件。

现在,“无外部硬件”的优势仅适用于相对较少数量的 LED,直到您达到微控制器的电流限制,并且它施加了多路复用阵列没有的亮度限制。如果您选择不使用外部硬件,则通常只能在任何给定时刻驱动矩阵中的一个 LED,这与一次驱动一整行的多路复用阵列不同。

一旦您添加外部硬件来驱动具有更高亮度的 LED 以匹配多路复用阵列的亮度,charlieplexing 就会失去光彩。

首先,多路复用阵列严格按行和列寻址;这样做非常简单。打开第 1 行,打开第 1 行的所有列,关闭第 2 行,打开第 2 行的所有列,依此类推。相比之下,charlieplexed 数组就不那么简单了。总是有一个对角线行是无用的,我个人使用查找表来关联我的数组和存储数据的矩形数组。

其次,也是一个杀手锏,charlieplexing 通常需要三态驱动程序。然而,多路复用是通过严格的开关二进制逻辑执行的。如果您有一个低引脚数的微控制器并想要驱动大量 LED,则可以直接使用外部逻辑芯片(例如,移位寄存器和/或 LED 驱动器)来控制 X 轴和 Y 轴。大多数移位寄存器类型的芯片不支持在 charlieplexed 阵列中执行相同操作所需的三态。可以使用专用的 charlieplexed 驱动程序,但几乎没有通用性。

第三,在一个 charlieplexed 阵列中,每个没有主动做某事的引脚仍然通过弱(“高阻抗”)连接连接到 LED。虽然连接很弱,但它是非零的。假设您有 25 个 I/O 引脚连接到 LED 网格。如果你点亮一个 LED - 将这 25 根线中的一根拉高,将这 25 根线中的一根拉低,剩下 23 根高阻抗线。高 I/O 线通过 LED 到中性线的每个地方,都有可能泄漏电流。不多。也许在这里或那里有一个微安。但对于现代、高效的 LED,这通常足以产生可见的重影。

第四,charlieplexed 阵列中的 LED 亮度更难控制。在多路复用阵列中,您可以使用任意数量的常用电流调节“下沉”LED 驱动器芯片,通过将电流调节与 PWM 驱动器结合使用,分别调节每列的亮度。就 charlieplexed 矩阵位置单独寻址并且每行或每列仅使用一个电阻器而言,在 charlieplexed 阵列中执行点亮度校正和全灰度/彩色动画要困难得多。

“Charlieplexing”灯最显着的缺点是它限制了可以通过“n”路复用驱动的 LED 数量为 n(n-1)。我不认为三态驱动程序要求对整个技术来说是一个很大的问题。当然,必须使用两个传统驱动器而不是三态驱动器会降低 CharliePlexing 的优势,但在某些情况下,优势可能仍然存在(例如,它可能会减少带有驱动器的面板和带有驱动器的面板之间的互连线数量。灯或开关)。

至于 Charlieplexing 开关,维基百科的文章没有提到最大的缺点:Charlieplexing 不允许控制器被动地等待按钮按下。另一方面,它对组件需求过于悲观。1997 年,我生产了一个设备,它使用 PIC12C508 上的三个 I/O 引脚和一个仅输入引脚扫描八个按钮,不需要任何外部二极管或其他组件,除了 IIRC内置一个;该方法可以通过添加另一个上拉电阻来处理十个按钮(对于另一个没有上拉电阻的 I/O 引脚),但客户只需要八个按钮,因此没有必要。