《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計應(yīng)用 > 基于AT89C51單片機的LED彩燈控制器設(shè)計
基于AT89C51單片機的LED彩燈控制器設(shè)計
摘要: 介紹了一種新型的LED彩燈控制系統(tǒng)的設(shè)計方法,以AT-89C51單片機作為主控核心,與按鍵、顯示器等較少的輔助硬件電路相結(jié)合,利用軟件實現(xiàn)對LED彩燈進行控制。本系統(tǒng)具有體積小、硬件少、電路結(jié)構(gòu)簡單及容易操作等優(yōu)點。
Abstract:
Key words :

  1引言

  隨著人們生活環(huán)境的不斷改善和美化,在許多場合可以看到彩色霓虹燈。LED彩燈由于其豐 富的燈光色彩,低廉的造價以及控制簡單等特點而得到了廣泛的應(yīng)用,用 彩燈來裝飾街道和城市建筑物已經(jīng)成為一種時尚。但目前市場上各式樣的LED彩燈控制器大多數(shù)用全硬件電路實現(xiàn),電路結(jié)構(gòu)復(fù)雜、功能單一,這樣一旦制作成品只能按照固定的模式閃亮,不能根據(jù)不同場合、不同時間段的需要來調(diào)節(jié)亮燈時間、模式、閃爍頻率等動態(tài) 參數(shù)。這種彩燈控制器結(jié)構(gòu)往往有芯片過多、電路復(fù)雜、功率損耗大等缺點。此外從功能效果上看,亮燈模式少而且樣式單調(diào),缺乏用戶可操作性,影響亮燈效果。因此有必要對現(xiàn)有的彩燈控制器進行改進。

  本文提出了一種基于AT89C51單片機的彩燈控制方案,實現(xiàn)對LED彩燈的控制。本方案以AT89C51單片機作為主控核心,與鍵盤、顯示、驅(qū)動等模塊組成核心主控制模塊。在主控模塊上設(shè)有8個按鍵和5位七段碼LED顯示器,根據(jù)用戶需要可以編寫若干種亮燈模式,利用其內(nèi)部定時器T0實現(xiàn)一個基本單位時間為5 ms的定時中斷,根據(jù)各種亮燈時間的不同需要,在不同時刻輸出燈亮或燈滅的控制信號,然后驅(qū)動各種顏色的燈亮或

 

滅。該新型LED彩燈及其控制器是上海某公司委托開發(fā)產(chǎn)品,產(chǎn)品實際應(yīng)用效果較好,亮燈模式多,用戶可以根據(jù)不同場合和時間來調(diào)節(jié)亮燈頻率和亮燈時間。與普通LED彩燈相比,具有體積小、價格低、低能耗等優(yōu)點。

  2系統(tǒng)功能

  新型LED彩燈分為2部分,即彩燈控制器(主控模塊)和管內(nèi)LED板模塊(受控模塊)。彩燈控制器可直接與220 V交流市電相連接,經(jīng)過開關(guān)電源變換,輸出直流工作電壓,一方面為管內(nèi)LED模塊提供12 V工作電源,另一方面為主控模塊單片機系統(tǒng)(彩燈控制器)提供5 V工作電源。整個系統(tǒng)工作由軟件程序控制運行,根據(jù)需要,用戶可以在LED彩燈工作時通過主控模塊上的按鍵來設(shè)定亮燈時間和燈光閃動頻率。

  上電后系統(tǒng)經(jīng)過初始化,查詢是否有功能切換鍵按下:有,則進入用戶設(shè)定模式狀態(tài);無,則進入默認缺省工作狀態(tài)。在用戶設(shè)定模式狀態(tài)下,用戶可以根據(jù)個人愛好及不同場合的需要來指定調(diào)用哪些模式,并且可以改變每種模式的時間Ti、頻率Fi參數(shù),如果用戶想進入缺省狀態(tài)模式,只需按一下功能切換鍵即可跳入缺省模式,程序會自動順序調(diào)用亮燈模式;在缺省工作狀態(tài)下,LED彩燈控制器按照程序設(shè)定好的若干亮燈花樣模式程序Model_i順序調(diào)用往下走,從第Model_1模式開始工作,自Model_1到Model_2……到Mod el_n為一個亮燈周期,然后再回到Model_1循環(huán)繼續(xù)工作,同樣如果想進入用戶設(shè)定模式狀態(tài),只需按下功能切換鍵即可。整個n種亮燈模式時間可以看作一個大周期T,其中的每一種花樣工作模式Model_i(i=1,2,…,n)時間為小周期Ti,對于每一個模式編寫一個獨立工作子程序Model_i,其中設(shè)定了LED三色燈(紅、綠、藍)的點亮?xí)r刻(RED_on,GREEN_on,BLUE_on)和熄滅時刻(RED_off,GREEN_off,BLU E_off),以及模式工作時間Ti以及該模式LED閃爍頻率Fi。5位七段碼顯示器的前2位(L1,L2)顯示當前工作模式的序號Model_i;后3位(L3,L4,L5)七段碼 顯示三色LED的工作狀態(tài),若該顏色燈點亮則對應(yīng)七段碼顯示位為“1”,反之熄滅時則顯示位為“滅”即不顯示,對系統(tǒng)工作狀態(tài)起到了很好的實時監(jiān)控作用。

  因此在LED彩燈上電工作后,用戶可以方便地通過主控模塊上的顯示器知道LED彩燈當前工作模式Model_i,工作時間Ti,頻率Fi等實時參數(shù)。若實際應(yīng)用需要根據(jù)不同場合和時間來改變彩燈閃亮效果,用戶可以通過主控模塊上的按鍵來設(shè)定LED不同的閃爍頻率Fi和亮燈時間Ti,以便符合實際需要。此外如果用戶對某一種模式感興趣需要仔細觀看該種亮燈模式,可以通過鍵盤選定任意第Model_i模式使系統(tǒng)循環(huán)重復(fù)工作在該花樣模式下。

  3硬件設(shè)計

  新型LED彩燈系統(tǒng)包括2大部分,即LED彩燈控制器(89C51主控模塊)和LED彩燈管(管內(nèi)LED板模塊)。前者是主控模塊,具有按鍵、顯示等功能,并利用89C51的P口輸出控制信號;后者是受控模塊,上面焊有三色LED彩燈和信號驅(qū)動芯片,模塊置于LED的透明燈管內(nèi)。

  3.1主控模塊電路設(shè)計

  主控模塊電路如圖1所示。主控模塊主要設(shè)計器件有89C51,5個七段碼LED顯示器,8個按鍵,2個穩(wěn)壓器(提供12 V,5 V電壓),1個信號輸出驅(qū)動模塊芯片(MC4049)等。通過軟件設(shè)計,使單片機P0口作為三色LED驅(qū)動信號輸出口及移位時鐘CLOCK信號,P3口為按鍵輸入口,P2口、P1口與5位七段碼LED相接作為顯示器的輸出口。

主控模塊電路

  3.2管內(nèi)LED板模塊設(shè)計

 

  管內(nèi)LED板模塊電路見圖2。管內(nèi)LED板模塊設(shè)計主要器件有LED彩燈(紅、綠、藍)、移位觸發(fā)模塊芯片CD4076等。根據(jù)實際應(yīng)用彩燈長度需要,可將不同數(shù)量的該管內(nèi)LED模塊實現(xiàn)級連,組成一個完整的LED彩燈??紤]到功率損耗,LED板模塊之間接口處用信號正向驅(qū)動模塊芯片MC4049連接。每個LED板模塊上均勻分布3種顏色 LED燈,在實際制作PCB時采用紅、綠、藍3色互隔焊接方式,在電路板上把LED發(fā)光管按順序L1(紅)、L2(綠)、L3(藍)、L4(紅)、L5(綠)、L6(藍)……依次均勻焊在板上成一條直線。為了得到更多的花樣模式效果,可以使紅綠2種燈從前往后驅(qū)動點亮閃爍,藍燈從后往前驅(qū)動點亮閃爍,這樣具有很好的動感視覺效果。

管內(nèi)LED板模塊電路

  4軟件設(shè)計

  新型LED彩燈控制器最大特點在于所有亮燈模式均由軟件控制完成。系統(tǒng)中軟件可以分為主程序和中斷服務(wù)子程序。上電后在缺省狀態(tài)以順序調(diào)用Model_i花樣亮燈模式流程為主程序,以一個單位時間5 ms的T0定時為中斷服務(wù)子程序。在這個5 ms的T0定時基礎(chǔ)上,可以根據(jù)需要來確定各種模式工作時間Ti,以及確定在各種亮燈模式Mo

 

de l_i內(nèi)點亮和熄滅各種顏色LED燈的時刻:Red_on,Red_off,Green_on,Green_off,Blue_on,blue_off以及Clock(移位翻轉(zhuǎn)脈沖)等。整個系統(tǒng)軟件由主程序( Main)、各個模式子程序(Model_i)、5 ms中斷服務(wù)子程序(T0 Interrupt)、鍵盤掃描處理子程序(Key Board)、顯示子程序(Display)等程序組成。利用T0定時器作為定時基本單位,根據(jù)模式需要計算好各控制信號的發(fā)生時刻,根據(jù)不同的模式Mo del_i可以設(shè)定不同的工作時間Ti和脈沖翻轉(zhuǎn)頻率Fi通過P0口輸出,使各色L ED燈的驅(qū)動時刻與移位觸發(fā)的翻轉(zhuǎn)時刻步調(diào)一致,使LED彩燈按照設(shè)計的模式工作。

  除了T0定時中斷之外,程序的大部份時間是在處理按鍵的查詢和LED顯示的延時。8個按鍵分別為:4個參數(shù)按鍵(Fi增、減按鍵,Ti增、減按鍵),3個模式改變按鍵(模式上翻UP、模式下翻DOWN、模式保持KEEP),1個功能切換按鍵。在每次的T0定時中斷服務(wù)子程序里,需要對各個時間寄存器和模式寄存器進行加1或者清,為主程序查詢作準備,同時查詢是否已中斷6次(30 ms),若30 ms到了,則對參數(shù)按鍵查詢一次,是否有時間Ti頻率Fi增減鍵按下并進行相應(yīng)子程序處理。

  主程序除了調(diào)用各種子模式子程序(Model_i),調(diào)用LED顯示子程序(Display)和延時子程序(Delay)之外,還一直保持查詢是否有功能切鍵按下以及是否有模式改變按鍵按下,一旦有功能切換鍵和模式改變鍵按下,就會進入相應(yīng)的按鍵處理。主程序流程如圖3所示。亮燈模式子程序Model_i可以編寫若干(n種),只要控制好各色燈觸發(fā)和熄滅時刻就可以組合成各種亮燈效果。Model_i程序流程如圖4所示。

主程序流程

Model

  下面以第一種模式工作為例。

程序

程序

程序

程序

  5結(jié)語

  與市面上大多數(shù)的LED彩燈相比,該種彩燈具有更好的燈光裝飾效果,性價比更高,與普通的全硬件LED彩燈相比具有更好的經(jīng)濟效益。應(yīng)用主控模塊輸出的控制信號去控制燈管內(nèi)的L ED板模塊工作,使得產(chǎn)品性能穩(wěn)定,便以安裝容易操作。由于控制程序存儲在89C51單片機 的電可擦除Flash閃存EPROM中,如果用戶需要更改系統(tǒng)的亮燈模式Model_i,無須改變系統(tǒng)硬件電路,只需修改其中程序即可,是一種很有發(fā)展前途的彩燈控制器。

  參考文獻

  [1]蔡美琴,張為民,沈新群等.MCS51系列單片機系統(tǒng)及其應(yīng)用[M].北京:高等教育出版社,1992.

 ?。?]何立民.單片機應(yīng)用技術(shù)選篇(5)[M].北京:北京航空航天大學(xué)出版社,1997.

 ?。?]楊光友.單片機微型計算機原理及接口技術(shù)[M].北京:中國水利水電出版社,2002

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。