有机饲料

您现在的位置是:首页 > 日用百货

日用百货

单片机一个IO口如何控制两颗发光二极管(LED)? 单片机8个灯同时亮

2022-05-21 00:56:46日用百货

单片机一个IO口如何控制两颗发光二极管(LED)? 单片机8个灯同时亮

单片机一个IO口如何控制两颗发光二极管(LED)?

单片机的一个GPIO只能输出0和1两种状态,如果控制一个LED灯的话,可以实现LED的亮灭控制。两个LED具有四个状态:1)同时亮;2)同时灭;3)一个亮一个灭;4)一个灭一个亮。如果用一个GPIO的话,无法输出四种状态,所以要分情况讨论。

1.两只LED同时亮/灭的情况

这种情况其实是把两个LED看作是同一个,两个LED具有同样的状态,即两个LED同时点亮或者同时熄灭。如果是这种情况可以考虑如下的电路设计:

两只LED并联,单片机以灌电流的方式驱动。这样可以降低单片机的输出功耗。单片机的GPIO输出高电平1时,两个LED同时熄灭;单片机的GPIO输出低电平时,两个LED同时点亮。也可以考虑两只LED串联的情况,但是需要考虑LED自身的压降。对于具体的实施电路,可以考虑采用三极管或者MOS作为驱动。

2.两只LED不同是亮/灭的情况

这时需要考虑将两只LED同向串联,将单片机的GPIO口接在两只LED的公共端。其典型的示意电路图如下图所示。

两只LED同向串联后串在电源电路中,单片机的GPIO控制两个LED的公共端。当单片机输出高电平1时LED1熄灭,而LED2被点亮(拉电流的方式);当单片机输出低电平0时LED1被点亮(灌电流的方式),而LED2熄灭。这种情况时需要考虑电阻的选型,也可以使用三极管或者MOS管作为驱动。

以上就是这个问题的回答,感谢留言、评论、转发。更多精彩内容请关注本头条号:玩转嵌入式。感谢大家。

原创不易,转载请注明源于bangbuwp.com网~~