中电网移动|移动中电网|高清图滚动区

多路复用的情人节

也许 2 月 14 日让人们最容易联想到丘比特之箭,它会让人们回忆到那浪漫的青春年少时光。

丘比特之箭

如果使用 LED 组成一个丘比特之箭图案,而且有不同的点阵变化似乎是一个不错的想法。电子工程师的浪漫不在乎制作出来成品它有多么的完美,而是在于实现过程的困难。

下面的一块小板上集成了 40 个 LED,组成的丘比特之箭的图案。它的困难在于这 40 个 LED 灯仅仅使用了一个八管脚 MCU 的五个 IO 口来控制每一个 LED 灯的点亮。警觉的同学们马上就会想到这中间存在着一个很大的困难。

使用一个八管脚的 MCU 控制了由 24 个 LED 组成的丘比特箭的电子作品

如果使用一个 IO 口,可以通过高低电平控制一个 LED 点亮还是熄灭。两个 IO 口则可以控制两个 LED 等分别的点亮还是熄灭。如果再借助于辅助电路,则可以实现两个 IO 口控制四个 LED 的各自点亮还是熄灭。下面就是一个例子:

两个管脚控制四个 LED

如果对于上面的电路有些疑惑,可以对照下面的真值表分析电路中 P1,P2,PR1 管脚的电压,以及它们组合后对应的点亮 LED。

P1,P2 电压决定了 PR1 电压和点亮哪只 LED

由于两个 IO 口,可以提供=4 种状态,可以控制 LED 的个数与它的状态组合是相同的。
那么前面电路中总共有 40 个 LED 灯,而所使用的 IO 口只有 5 个,它的高低电平状态组合只有=32 种,那么它又是如何控制 40 个 LED 灯各自点亮的状态的呢?

|这里就需要提到一种 Gugaplexing 单片机 IO 口多路复用的方法。对于单片机的 IO 口,实际上有三种状态,高(H)、底(L)、以及高阻(Z) 。高阻状态下,单片机的 IO 口对外近似于断开。

在上面两路 IO 口控制四个 LED 电路中,除了前面四种状态之外,它还有第五种,即两个 IO 口都是高阻状态,此时 L3,L4 都没有被点亮。如果将这种状态应用上,就可以继续增加可以控制的 LED 的数量。
下面给出了使用四个 IO 端口控制 24 个 LED 的电路图。

使用四支 IO 管脚控制 24 支 LED

的确,看起来有点烧脑。但是如果看懂了前面两个 IO 口控制四个 LED 的电路,再配合下面两张表格,就会明白其中的道理。

反正我是前前后后看了 N 多遍,终于明白了其中神秘的道理。这个谜底就留给有好奇心的同学们自己分析吧。

 

P1,P2,P3,P4 与 LED 之间的关系


使用 Gugaplexing 方式来控制 LED,可以使用 N 个 IO 口控制个 LED。因此如果有五个 IO 口,就可以控制 40 个 LED 的,它的原理与上面四个 IO 口控制 24 个 LED 的原理是一样的。

看到这一点,自己就会设计和绘制该电路图的冲动了。

猜你喜欢
中电网移动|移动中电网|频道导航区