單片機(jī)的一個(gè)GPIO只能輸出0和1兩種狀態(tài),如果控制一個(gè)LED燈的話,可以實(shí)現(xiàn)LED的亮滅控制。兩個(gè)LED具有四個(gè)狀態(tài):1)同時(shí)亮;2)同時(shí)滅;3)一個(gè)亮一個(gè)滅;4)一個(gè)滅一個(gè)亮。如果用一個(gè)GPIO的話,無(wú)法輸出四種狀態(tài),所以要分情況討論。 1.兩只LED同時(shí)亮/滅的情況 這種情況其實(shí)是把兩個(gè)LED看作是同一個(gè),兩個(gè)LED具有同樣的狀態(tài),即兩個(gè)LED同時(shí)點(diǎn)亮或者同時(shí)熄滅。如果是這種情況可以考慮如下的電路設(shè)計(jì): 兩只LED并聯(lián),單片機(jī)以灌電流的方式驅(qū)動(dòng)。這樣可以降低單片機(jī)的輸出功耗。單片機(jī)的GPIO輸出高電平1時(shí),兩個(gè)LED同時(shí)熄滅;單片機(jī)的GPIO輸出低電平時(shí),兩個(gè)LED同時(shí)點(diǎn)亮。也可以考慮兩只LED串聯(lián)的情況,但是需要考慮LED自身的壓降。對(duì)于具體的實(shí)施電路,可以考慮采用三極管或者M(jìn)OS作為驅(qū)動(dòng)。 2.兩只LED不同是亮/滅的情況 這時(shí)需要考慮將兩只LED同向串聯(lián),將單片機(jī)的GPIO口接在兩只LED的公共端。其典型的示意電路圖如下圖所示。 兩只LED同向串聯(lián)后串在電源電路中,單片機(jī)的GPIO控制兩個(gè)LED的公共端。當(dāng)單片機(jī)輸出高電平1時(shí)LED1熄滅,而LED2被點(diǎn)亮(拉電流的方式);當(dāng)單片機(jī)輸出低電平0時(shí)LED1被點(diǎn)亮(灌電流的方式),而LED2熄滅。這種情況時(shí)需要考慮電阻的選型,也可以使用三極管或者M(jìn)OS管作為驅(qū)動(dòng)。
|
|