王超
在學習單片機編程過程中,用程序控制單片機引腳輸出高、低電平,或調(diào)制信號控制發(fā)光二級管(LED)的學習實驗非常的多,這些實驗學習者需要按照電路圖焊接或者插接發(fā)光二級管,接線復雜繁瑣,極容易導致短路和斷路。而有些實現(xiàn)封裝的發(fā)光二級管只能顯示一種顏色,要實現(xiàn)多種顏色就要連接多根導線占用多個管腳,這些操作給初學者帶來了許多的不便。
本文提出一種學習單片機控制的發(fā)光二級管封裝電路,其接線簡單僅使用2根導線就可以實現(xiàn)多種顯示狀態(tài)的單片機編程。
要實現(xiàn)上述功能就要弄清楚放光二級管的結構原理,發(fā)光二極管與普通二極管一樣是由一個PN結組成,也具有單向導電性。當給發(fā)光二極管加上正向電壓后,從P區(qū)注入到N區(qū)的空穴和由N區(qū)注入到P區(qū)的電子,在PN結附近數(shù)微米內(nèi)分別與N區(qū)的電子和P區(qū)的空穴復合,產(chǎn)生自發(fā)輻射的熒光。所以當電流反向輸入時發(fā)光二級不工作,利用這一特性將2只不同顏色的發(fā)光二級管反向并聯(lián),這樣通過2根導線的正負極切換就可以獲得兩種顯示狀態(tài)。
單片機針腳可以輸出高低電平或pwm調(diào)制信號,結合上文提到的發(fā)光二極管反向并聯(lián)電路,當單片機針腳輸出高電平電流時,通過發(fā)光二極管正極流向負極正向發(fā)光二極管被點亮,當單片機輸出低電平電流從反接的發(fā)光二極管流過該發(fā)光二極管被點亮。
設想一種可以多個單元個體隨意組合的,通過程序控制僅只占用1~2個單片機引腳,即可實現(xiàn)多種狀態(tài)顯示的發(fā)光二級管燈珠。首先這種單片機程序控制的燈珠,包括:絕緣外殼、正反向雙發(fā)光二級管電路及導線,絕緣外殼構成燈珠主體由透明材質(zhì)構成,絕緣外殼上方設有等比例凸起,下方設有等比例凹槽,可以實現(xiàn)2只燈珠或多只燈珠或與其他零件的拼接。正反向雙發(fā)光二級管電路為2只發(fā)光二極管正反向并聯(lián)。導線為2芯導電電線,一端接正反向雙發(fā)光二級管電路,另一端為與單片機連接的接頭。
如上所述,這種由單片機控制可實現(xiàn)多種發(fā)光狀態(tài)的發(fā)光二極管。利用發(fā)光二級管單項導電的特性,當2芯導線一芯獲得正電壓另一芯獲得負電壓時,電路中的一個正向發(fā)光二級管被點亮,當兩芯導線互相調(diào)轉正負極時,電路中的另一只反向發(fā)光二級管被點亮,此時發(fā)光顏色也隨著不同的二極管被點亮也發(fā)生變化。當導線由單片機控制按照一定頻率設定交替正負極,燈珠將按照這一固定頻率交替變換顏色。當單片機發(fā)出的控制頻率超過人眼所能辨別的頻率時,此時燈珠將實現(xiàn),2燈常亮的狀態(tài)。
以arduino編程為例:
只要程序寫入
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
運行結果為一只發(fā)光二級管被點了,而寫入程序反向輸出電流。
digitalWrite(5,LOW);
digitalWrite(4,HIGH);
另一只發(fā)光二級管被點亮。如果2只發(fā)光二極管一只使用藍色,而另一只采用紅色發(fā)光二級管,就可以編寫程序讓紅藍燈交替點亮。
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
delay(500);
digitalWrite(5,LOW);
digitalWrite(4,HIGH);
delay(500);
根據(jù)例程所示這種燈珠具有以下特點,第一兩芯導線占用單片機2只或1只引腳的連接狀態(tài)下通過程序控制,實現(xiàn)燈珠2種顏色的多種組合變換。如:單色燈亮、單色燈閃亮、單色燈漸亮或漸滅、雙燈同亮、雙燈交替亮、雙燈漸亮或漸滅等多種狀態(tài)。第二這種設計不僅會給單片機編程帶來更多樂趣,而且使用中安全可靠,可在多種設計環(huán)境中使用。