很多電子產(chǎn)品有狀態(tài)指示燈,比如電視機(jī):
待機(jī)狀態(tài)亮紅燈
開機(jī)狀態(tài)亮綠燈
實現(xiàn)起來很簡單,微控制器MCU的兩個GPIO分別控制就行:
不過資源總是緊張的,有時候會碰到GPIO不夠用的情況。
如果只用1個GPIO,可不可以實現(xiàn)控制兩個LED燈呢?
要實現(xiàn)4種狀態(tài):
紅燈亮,綠燈滅
紅燈滅,綠燈亮
都滅
都亮
直接上電路:
一、電路分析
1、紅燈亮,綠燈滅時,GPIO1輸出5V高電平:
2、紅燈滅,綠燈亮?xí)r,GPIO1輸出0V低電平:
3、紅燈和綠燈都滅時,GPIO1設(shè)為浮空高阻態(tài)。此時由于兩個LED燈總的導(dǎo)通壓降要求大于5V,所以兩個LED燈都不導(dǎo)通。
4、紅燈和綠燈都亮?xí)r,GPIO1交替輸出高低電平。只要高低電平切換的頻率夠高,由于視覺暫留效應(yīng),人眼看到的就是兩個燈都常亮。
二、注意事項
使用這個電路時,要注意MCU的GPIO的電流驅(qū)動能力。
GPIO能承受的電流要大于LED燈流過的電流。
以下截圖出自STM32芯片的數(shù)據(jù)手冊,它的GPIO可以驅(qū)動或吸入8mA的電流。
三、總結(jié)
“1個GPIO控制2個LED顯示4種狀態(tài)”,電路的實現(xiàn)本身很妙。
“1個GPIO控制2個LED顯示4種狀態(tài)”,不知下面這位大神是否可以出個絕妙的下聯(lián)。
原文標(biāo)題:巧用1個GPIO控制2個LED顯示4種狀態(tài)
文章出處:【微信公眾號:玩轉(zhuǎn)單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責(zé)任編輯:haq
-
led
+關(guān)注
關(guān)注
242文章
23321瀏覽量
661906 -
電路
+關(guān)注
關(guān)注
172文章
5950瀏覽量
172594 -
GPIO
+關(guān)注
關(guān)注
16文章
1215瀏覽量
52227
原文標(biāo)題:巧用1個GPIO控制2個LED顯示4種狀態(tài)
文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論