基于STC11F02E的立體旋轉(zhuǎn)LED設(shè)計(jì)與實(shí)現(xiàn)
摘要:新型的柱式LED顯示屏,以旋轉(zhuǎn)掃描方式代替?zhèn)鹘y(tǒng)的逐行掃描,可視范圍達(dá)到360度。在穩(wěn)定旋轉(zhuǎn)的載體上安裝16個LED發(fā)光器件,靜止時,各列發(fā)光管等間距分列排開,隨著掃描速度的加快,在計(jì)算機(jī)軟件精確的時序控制下,不斷掃描出預(yù)設(shè)的文字、圖案等,利用STC11F 02E單片機(jī)控制,采用NE555多諧振蕩電路來無線供電,并用移位寄存器74HC595控制LED顯示字符,成本低廉,簡單易實(shí)現(xiàn)。
關(guān)鍵詞:單片機(jī);LED;無線供電;STC11F02E
0 引言
立體旋轉(zhuǎn)LED也稱POV LED,是利用人眼視覺暫留效應(yīng)進(jìn)行圖形、動畫等信息顯示的一種電子產(chǎn)品,它是通過一個旋轉(zhuǎn)的支架,支架上排列的LED受單片機(jī)的控制在特定的位置亮或滅,從而顯示出特定的字符或圖形,其中利用無線供電技術(shù),采用高速電動機(jī)帶動LED旋轉(zhuǎn)時,從視覺效果上會產(chǎn)生一種柱狀的LED顯示屏的狀態(tài)。顯示的字符或圖形看起來是漂浮在空中的,不僅美觀,而且新穎,適用于很多場合。本文中外圍電路搭建以單片機(jī)為主控元件,利用兩個74HC595芯片對16個LED控制,根據(jù)霍爾原理,采用一個AH1344霍爾元件檢測磁感應(yīng)變化以顯示特定字符。
1 STC11F02E單片機(jī)簡介
STC11F02E是宏晶科技設(shè)計(jì)生產(chǎn)的STC11/10xx系列單片機(jī)之一,其特點(diǎn)為:高速,1個時鐘/機(jī)器周期,增強(qiáng)型8051內(nèi)核,速度比普通8051快8~12倍;寬電壓,5.5~4.1V/3.7V;低功耗設(shè)計(jì);工作頻率,0~35MHz,具有2kB的片內(nèi)Flash程序存儲器、2kB的EEPROM存儲器和256kB的片內(nèi)SRAM數(shù)據(jù)存儲器,體積小價格低廉。
2 硬件設(shè)計(jì)
由STC11F02E的16個I/O端口控制兩個74HC595芯片工作,再由兩個74HC595的8個I/O端口控制16個LED亮滅,在單片機(jī)中寫入程序,當(dāng)電動機(jī)通電時,單片機(jī)所在的電路板會隨著轉(zhuǎn)動。根據(jù)霍爾傳感器原理,每當(dāng)霍爾元件轉(zhuǎn)到磁鋼附近時,電路輸出端變?yōu)榈碗娖剑瑥亩a(chǎn)生下降邊沿,使單片機(jī)中斷口接收到下降沿而發(fā)出中斷,使得電路能夠同步,最終顯示出特定的字符。該旋轉(zhuǎn)裝置由霍爾傳感器模塊、LED顯示模塊、電源模塊組成。
霍爾傳感器模塊:霍爾傳感器是一種磁傳感器,本設(shè)計(jì)運(yùn)用AH3144芯片。AH3144是單極性霍爾開關(guān)電路,是由電壓調(diào)整器、霍爾電壓發(fā)生器、差分放大器、施密特觸發(fā)器和集電極開路的輸出級組成的磁敏感電路,其輸入是磁感應(yīng)強(qiáng)度,輸出是一個數(shù)字電壓訊號。它是一種單磁極工作的磁敏感電路,適合于矩形或者柱形磁體下的工作。
LED顯示模塊:采用16個并排發(fā)光二極管,利用人眼的“視覺暫留效應(yīng)”顯示文字及圖案,旋轉(zhuǎn)LED顯示器是一種通過同步控制LED位置和點(diǎn)亮狀態(tài)來實(shí)現(xiàn)圖文顯示的新型顯示器,其結(jié)構(gòu)新穎、成本低廉、可視角度達(dá)360°。
電源模塊:220V交流電壓經(jīng)過變壓器輸出為12V交流電壓,再經(jīng)過橋式整流成為單向脈沖電壓,再經(jīng)過濾波電路成為比較平穩(wěn)的直流電壓,最后通過7805穩(wěn)壓成輸出穩(wěn)定的8V直流電。
無線供電模塊:無線供電是一種方便安全的新技術(shù),無需任何物理上的連接,電能可以近距離無接觸地傳給負(fù)載。本設(shè)計(jì)采用NE555多諧振蕩電路來實(shí)現(xiàn)無線供電。立體旋轉(zhuǎn)LED電路硬件原理圖如圖1所示。
3 軟件設(shè)計(jì)
主程序軟件主要為LED顯示模塊的程序。主程序首先是對系統(tǒng)環(huán)境初始化,設(shè)置端口P1.1、P1.2強(qiáng)上拉,然后啟動延時,初始化74HC5 95移位寄存器,允許外部中斷INT0中斷,設(shè)置下降沿觸發(fā)中斷,開啟總中斷,點(diǎn)亮LED1、LED2,進(jìn)入循環(huán)等待中斷。74HC595移位寄存器接收當(dāng)前定時器的數(shù)值,鎖存住然后將字庫中的字符傳輸?shù)捷敵龆?,最終16個LED可以正常顯示字符。
LED顯示是根據(jù)16×16點(diǎn)陣顯示屏的原理來顯示字符的,當(dāng)16個LED旋轉(zhuǎn)16行時就會顯示一個字。由于STC11F02E的總線為8位,所以顯示一個字的時候需要拆分為兩部分,一般拆分為上下兩部分,上部由8×16點(diǎn)陣組成,下部也由8×16點(diǎn)陣組成。例如顯示“沈”字如圖2所示。
本例中單片機(jī)首先顯示的是左上角的第一列的上半部分,即第0列的P00-P07口。方向?yàn)镻00-P07,顯示漢字“沈”字時,P04點(diǎn)亮,由上往下排列,為P00滅,P01滅,P02滅,P03滅,P04亮,P05滅,P06滅,P07滅。即二進(jìn)制為00001000,轉(zhuǎn)換16進(jìn)制為08h。
上半部第一列完成后,繼續(xù)掃描下半部的第一列,仍為由上往下掃描,即從P37向P30方向掃描,P35點(diǎn)亮,二進(jìn)制為00100000,16進(jìn)制為10h。
然后單片機(jī)轉(zhuǎn)向上半部第二列,P01、P05點(diǎn)亮,為01000100,即16進(jìn)制44h,這一列完成后繼續(xù)進(jìn)行下半部的掃描,P35點(diǎn)亮為二進(jìn)制為00100000,即16進(jìn)制20h。按照這個方法,繼續(xù)進(jìn)行下面的掃描,一共掃描32個8位可以得出漢字“沈”的掃描代碼。
根據(jù)單片機(jī)內(nèi)部機(jī)器周期為1/12,晶振為12MHz,由式(1)可以算出執(zhí)行一條指令的頻率為1MHz,得出周期為1 μs。
1/12×12MHz=1MHz (1)
當(dāng)LED旋轉(zhuǎn)時,相當(dāng)于每兩個字符傳送一次,設(shè)置其延時為600 μs,由于人們的視覺暫留時間為0.1~0.4S,所以當(dāng)LED旋轉(zhuǎn)一周時,人們看到上一次的LED還是亮著的,從而感覺到“沈”字始終顯示著。
由于此次設(shè)計(jì)的電路板半徑為11.5cm,LED半徑為0.5cm,所以這個顯示屏最多能顯示9個字符。
4 結(jié)論
本設(shè)計(jì)的立體旋轉(zhuǎn)LED因?yàn)橛玫氖菬o線供電方式,旋轉(zhuǎn)起來很安靜,很平穩(wěn),電機(jī)的速度也很快,旋轉(zhuǎn)時不怎么閃爍。由于本設(shè)計(jì)采用的是單排16個LED所以電路板的另一端必須得有個重物來保持平衡。無線供電電路中的兩個線圈距離不能太遠(yuǎn),必須保持在3cm之內(nèi),否則無法提供足夠穩(wěn)定的電壓。