專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命
提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(fā)代碼案例庫(kù)分享
從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!
提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力
提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)
在本文中,將介紹如何使用8051單片機(jī)實(shí)現(xiàn)雙極LED驅(qū)動(dòng)器電路。雙極LED與常規(guī)雙色LED的不同之處在于,雙極LED只有兩個(gè)引線,而常規(guī)雙色LED具有三個(gè)引線。
雙色LED是一種特殊類(lèi)型的LED,它由兩個(gè)在封裝內(nèi)反向連接的二極管組成。雙色LED通常由三個(gè)端子組成,即一個(gè)公共引腳和兩個(gè)獨(dú)立的引腳。如果是共陰極LED,則公共引腳可以接地,如果是共陽(yáng)極,則可以連接到 +5V 電源。但是,還有另一種具有兩個(gè)端子的雙色LED,稱為雙極LED。
該設(shè)備根據(jù)提供給終端之一的正信號(hào)起作用。例如,對(duì)于綠紅雙色LED,綠色端的正信號(hào)和紅色端的負(fù)信號(hào)確保綠色LED正向偏置,紅色LED反向偏置。這會(huì)導(dǎo)致綠燈閃爍。紅色LED的情況也是如此。
但是,如果兩個(gè)端子都給出負(fù)信號(hào),則兩個(gè)二極管都不會(huì)導(dǎo)通,設(shè)備將保持關(guān)閉狀態(tài)。如果對(duì)兩個(gè)端子施加正信號(hào),則基于LED顏色組合的不同顏色將閃爍。
以下是紅綠雙極LED的圖像,它看起來(lái)像一個(gè)普通的LED。
在這個(gè)項(xiàng)目中,我們正在使用 8051單片機(jī)設(shè)計(jì)一個(gè)簡(jiǎn)單的雙色LED驅(qū)動(dòng)器電路。此處使用的LED具有 2.2V 的正向壓降,因此可以使用 5V 電源進(jìn)行偏置。控制是由單片機(jī)程序根據(jù)兩個(gè)按鈕給出的輸入完成的。
一、雙極LED驅(qū)動(dòng)電路的原理
該電路使用單片機(jī)來(lái)驅(qū)動(dòng)雙極LED。輸入命令由兩個(gè)按鈕給出,并基于輸入;單片機(jī)配置為向兩個(gè)輸出引腳發(fā)送適當(dāng)?shù)母唠娖交虻碗娖叫盘?hào)。這些輸出引腳連接到雙極LED的端子。
二、雙極LED驅(qū)動(dòng)電路圖
所需組件:
1、8051單片機(jī)(這里使用AT89C51);
2、8051單片機(jī)編程器;
3、11.0592 MHz 晶振;
4、電容器 – 2 X 33pF,10uF;
5、電阻器 – 150Ω, 10KΩ X 2;
6、按鈕 X 3;
7、雙極LED(兩根引線);
8、連接電線;
9、面包板。
三、雙極LED驅(qū)動(dòng)電路設(shè)計(jì)
它是一個(gè)簡(jiǎn)單的電路,設(shè)計(jì)主要涉及單片機(jī)接口設(shè)計(jì)、單片機(jī)振蕩器和復(fù)位電路設(shè)計(jì)以及LED電阻的選擇。單片機(jī)接口是通過(guò)將兩個(gè)按鈕開(kāi)關(guān)連接到端口 P0 引腳 P0.6 和 P0.7 并將雙極LED的兩個(gè)端子連接到端口 P0 引腳 P0.0 和 P0.1 來(lái)實(shí)現(xiàn)的。
振蕩器設(shè)計(jì)是通過(guò)選擇兩個(gè) 33pF 陶瓷電容器來(lái)完成的,以提供穩(wěn)定性。時(shí)鐘信號(hào)是使用 11MHz 晶體振蕩器生成的。復(fù)位電路設(shè)計(jì)選用10uF的電解電容和10K的電阻,實(shí)現(xiàn)100ms的復(fù)位脈沖寬度。電阻兩端的壓降保持在 1.2V 左右。
現(xiàn)在,當(dāng)按下第二個(gè)按鈕時(shí),單片機(jī)將相應(yīng)地為引腳 P0.0 分配一個(gè)邏輯低信號(hào),并為引腳 P0.1 分配一個(gè)邏輯高信號(hào)。這會(huì)使綠光發(fā)光。
#include<reg51.h> sbit red = P0^0; sbit green = P0^1; sbit red_switch = P0^6; sbit green_switch = P0^7; unsigned char i=0; void delay (int); void main() { red=0; green=0; while(1) { if(red_switch==0) { green=0; red=1; while(red_switch==0); } else if(green_switch==0) { green=1; red=0; while(green_switch==0); } } }
以上就是英銳恩單片機(jī)開(kāi)發(fā)工程師分享的雙極LED驅(qū)動(dòng)電路。英銳恩專注單片機(jī)應(yīng)用方案設(shè)計(jì)與開(kāi)發(fā),提供8位單片機(jī)、16位單片機(jī)、32位單片機(jī)。