微控制器的端口引線通常可被激勵(lì)為高電平或低電平,要么被置于一種“輸入”或高阻抗?fàn)顟B(tài)。本電路采用這三種狀態(tài)來(lái)實(shí)現(xiàn)用一根端口引線(Port Pin)驅(qū)動(dòng)兩個(gè)led。在沒(méi)有端口引線可供使用的情況下(這種事情常有發(fā)生),這可能是非常有用的。
驅(qū)動(dòng)兩個(gè)LED的簡(jiǎn)單方法是借助兩根端口引線(圖1a)。改進(jìn)方案只要求一個(gè)附加電阻(圖1b)。可針對(duì)大多數(shù)合理的LED電壓和電源電壓以及在每個(gè)LED中產(chǎn)生所需的“接通電流”(根據(jù)需要可以有所不同)進(jìn)行設(shè)計(jì)。設(shè)計(jì)參數(shù)為:
V1=D1的關(guān)斷電壓(D1無(wú)可見(jiàn)光時(shí)的最壞情況最大電壓)
V2=D2的關(guān)斷電壓(D2無(wú)可見(jiàn)光時(shí)的最壞情況最大電壓)
V3=D1的接通電壓(設(shè)計(jì)電流條件下的D1的正向電壓加上端口壓降)
V4=D2的接通電壓(設(shè)計(jì)電流條件下的D2的正向電壓加上端口壓降)
Ion1=D1所需的接通電流
Ion2=D2所需的接通電流
Vcc=電源電壓
設(shè)計(jì)方程為:
Ion1=[(Vcc-V3)/R1]-[V3/(R2+R3)]
Ion2=[(Vcc-V4)/R2]-[V4/(R1+R3)}]
(V1+V2)/R3=(Vcc-V1-V2)/(R1+R2)
為了最大限度地減少電流消耗,R3的阻值被設(shè)置得盡可能大,兩個(gè)LED在端口引線處于高阻抗?fàn)顟B(tài)時(shí)均不接通。
采用ExcEL電子表格(圖2)可以求解這些方程。與設(shè)計(jì)值相比,這把每個(gè)LED的接通電流誤差值的二次冪的和減至最小。代入如下的典型值(假定D1和D2分別為黃色和綠色LED):
V1=1.2V
V2=1.1V
V3=2.2V(在提供電流時(shí)包括端口引線壓降)
V4=1.9V(在吸收電流時(shí)包括端口引線壓降)
Ion1=0.008A
Ion2=0.008A
Vcc=5.0V
解算工具得出的數(shù)值可近似到與下列標(biāo)準(zhǔn)電阻值僅誤差5%:
R1=300
R2=330
R3=1.2k
然后,可將實(shí)際電阻值代入經(jīng)解算機(jī)修正的相同單元中,來(lái)讀出合成電流和靜態(tài)電流Iq。在這種場(chǎng)合,該電路可在兩個(gè)LED都關(guān)斷時(shí)形成2.7mA的靜態(tài)電流。電路接通時(shí)可為每個(gè)LED提供幾乎正好是8mA的電流。如果需要讓兩個(gè)LED呈現(xiàn)接通狀態(tài),則端口引線電壓可在0V~Vcc之間快速循環(huán)。如果循環(huán)速率在100Hz左右或更高,那么兩個(gè)LED將呈現(xiàn)出穩(wěn)定的照亮狀態(tài)。
本電路最好是采用具有施密特觸發(fā)器或模擬輸入的微控制器。其他種類(lèi)的微控制器有可能在輸入被加有靠近電源電壓中心的偏壓時(shí)產(chǎn)生不必要的饋電電流。