模擬電路中單端口管腳驅(qū)動雙LED的方法
大多數(shù)現(xiàn)代微控制器都提供 I/O 端口,可以在程序執(zhí)行期間改變這些端口的功能。當(dāng)用作輸出時,這些電路可以吸收或流出相當(dāng)大的電流。本設(shè)計實例示出了用一個 I/O 管腳驅(qū)動雙管腳、雙色 LED 的三種方法。圖 1 是一個可能的方案,它使用外接反相器 IC1來驅(qū)動一只紅/綠雙向 LED,即D1。端口管腳的邏輯高電平輸出使電流流過綠色(上方)LED,并將反相器輸入電平拉高,于是驅(qū)動反相器輸出端為低電平,從綠色 LED 吸入電流。端口管腳的邏輯低電平輸出使反相器輸出端為高電平,從而為紅色(下方)LED提供電流,微控制器的輸出端從紅色 LED 吸入電流。
要關(guān)掉兩只LED 時,可以重新配置微控制器的端口管腳,使之從輸出轉(zhuǎn)為輸入或?qū)⒐苣_切換成三態(tài),任何一態(tài)都能阻止微控制器的端口管腳吸入或流出電流。這種電路的主要缺點是不能控制每只LED的亮度,而是由電阻器R5決定兩只LED的正向電流。
圖2表示了另一種方法,它也有嚴(yán)重缺點。齊納二極管D3、D4和電阻器R3、R4構(gòu)成一個低阻分壓器,為LED D5的一端提供VCC/2V電壓。VCC的值決定了齊納二極管電壓VZ的選擇,電壓較低的齊納二極管能提供更多的LED電流,較高電壓的齊納管限制了LED的最大電流。給定微控制器的輸出可以提供滿擺幅輸出的電壓, VCC與VZ之差限定了兩只LED的最大正向電流。例如,如果VCC為5V,VZ為3V,則流過任何一只LED的正向電壓就低于2V。一旦設(shè)計師選定了齊納二極管的電壓,VCC只能有少許變動,否則, LED的亮度就會出現(xiàn)波動。
使用分立元件時,另有一種廉價的電路能避免其他電路的缺點(圖3)。圖中,當(dāng)微控制器的輸出端口為高電平時,電流流經(jīng)綠色(上方)LED、R2、D2和FETQ2,端口的高電平接通。當(dāng)微控制器輸出端口變?yōu)榈碗娖綍r,晶體管Q1導(dǎo)通,通過R2和紅色(下方)LED向端口管腳提供電流。電路可以對稱地工作,因為無論微控制器端口管腳的電平是高還是低,硅二極管D2的正向壓降都出現(xiàn)。VCC可能在運行中出現(xiàn)變化,但必須保持高于3V。
你可以單獨調(diào)整 LED 的電流,以使兩者亮度均衡,或?qū)ξ⒖刂破麟娫措妷号cLED驅(qū)動電路VCC之間的差異作出補償。方法是在Q1的射極與D2的陽極之間用兩只串聯(lián)的電阻器代替R2。并將兩支電阻器的中點連接到LED上。
當(dāng)微控制器的端口管腳被配制成“有上拉的輸入”時,端口為綠色LED提供少量電流。但是,只要上拉電阻器阻值等于或高于22 kΩ,就不會使關(guān)斷狀態(tài)下的LED產(chǎn)生使人誤解的光輸出。當(dāng)端口管腳的輸入信號浮動時,即VCC為5V,而端口配置成無上拉電阻器的輸入,則電路不產(chǎn)生任何額外的電流,而由R1所決定的靜態(tài)電流平均值小于100mA。
基爾霍夫電流相關(guān)文章:基爾霍夫電流定律
評論