3位6脚数码管(查理复用算法)

正常数码管:


3位6脚数码管:


查理复用算法(Charlieplexing):

单片机GPIO的三个状态:高电平、低电平、高阻态。


2路端口可以控制2个LED
3路端口可以控制6个LED
4路端口可以控制12个LED
x y
2 2
3 6
4 12
5 20
6 30
y=x*(x-1)


利用IO口的三态进行控制,Z为高阻态。
例如要点亮 LED1,可以令 P1=1,P2=0,P3=Z。
另外一个通路LED6和LED4因为被LED1钳位为2.2V,电压太低不足以点亮2个灯。

使用4个GPIO时:


LED亮起时完全由单片机的GPIO输出电流,所以对于GPIO的电流驱动能力有一定的要求。

如果要同时亮起两个以上的LED,只要交替切换点亮的速度够快,由于人眼的视觉暂留效应,看起来就是同时亮起的。