一、LED燈與單片機的連接方式
在proteus仿真中,無論LED燈是負極連接IO埠,正極通過電阻連接VCC還是LED燈正極連接IO埠,負極通過電阻連接GND,都是可以通過仿真得到正確結果的,可是在現實操作程序中總有一種方式出現問題,這就不得不提到現實情況下單片機的驅動能力對實驗結果的影響,

如圖所示第(1)種方式,單片機IO埠輸出高電平時,LED燈亮,電流方向由單片機流向GND(我們將單片機提供高電平,電流方向為單片機由內到外稱為拉電流),第(2)種方式,單片機IO埠輸出低電平時,LED燈亮,電流方向由VCC流向單片機內部(我們將單片機提供低電平,電流方向為由外到內輸入單片機稱為灌電流),但是在現實中由于單片機驅動能力的影響往往第一種是無法點亮LED燈的,
二、單片機驅動能力
我們將兩種連接方式與單片機IO埠內部簡化之后可以得到如下兩個簡圖:

單片機輸出1時,T斷開,這時VCC通過電阻R連接到IO,上圖為拉電流連接方式,T斷開時,R、R外、LED串聯,形成直流通路,I=VCC-Vled/R+R外,R作為單片機內部上拉電阻,阻值一般幾百上千K,可見電流就非常小根本無法點亮LED燈,

單片機輸出0時,T閉合連接到GND,這時IO相當于接地,上圖為灌電流連接方式,T閉合時形成通路,I=VCC-Vled/R外,LED滿足電流的要求,LED燈亮, 可見,有時候理論可行現實卻不太可行,
三、另外兩種單片機連接LED燈的比較
單片機驅動較少LED燈尚且可以但是需要驅動多個時,必須增加外部驅動,以提供外部需要的電流,常用的方式是外部電路加驅動芯片、74HC373、非門、三態門、BJT等,下面將舉例說明三極管驅動LED燈電路,如圖:

單片機只是控制三極管的通斷,而不是提供驅動電路,輸出高電平時三極管導通,可以形成直流通路,使得LED燈點亮;單片機輸出低電平時三極管截止(可以理解為斷路),使得LED燈滅,這樣就可以接多個LED了, 但是在實際生產中卻有缺陷,采用上述方式連接,在系統上電時,LED會閃一下,究其原因:上電瞬間,單片機IO輸出沒有在瞬間達到程式中初始化的值,另外電源沖擊等原因引起三極管瞬間導通,使得LED燈閃爍,這在生產中是不被接受的,所以我們更需要這樣更改,加入電容C,吸收尖峰電壓:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/296944.html
標籤:其他
