王玨敏
(山西職業(yè)技術(shù)學(xué)院,山西 太原 030006)
本論文設(shè)計一個基于STM32F103RBT6單片機控制的LED線陣顯示系統(tǒng),該系統(tǒng)由圖文錄入器、旋轉(zhuǎn)線陣顯示裝置、信號控制裝置三部分組成。其中圖文錄入器利用模擬鍵盤將圖文卡信息錄入,并通過無線通信模塊發(fā)送給單片機;單片機接收到圖文信號,按照特定的算法程序控制LED燈的閃爍顯示,利用霍爾傳感器校準(zhǔn)顯示頻率與起始位置;最后通過直流電機轉(zhuǎn)速完成相應(yīng)的控制要求。供電裝置采用無線供電模塊,輸出12V為直流電機電源,5V為單片機電源??傮w系統(tǒng)設(shè)計如圖1所示。
圖1 LED線陣顯示系統(tǒng)框架
1.2.1 單片機控制裝置
系統(tǒng)方案選擇時,由于51系列單片機只有8位控制器,處理速度較慢,不滿足高精度要求,且存儲空間小。最終采用STM32F103RBT6單片機,其具有功耗低、成本低、通信接口多,運行速度快等特點。內(nèi)部資源豐富,并且能夠?qū)崿F(xiàn)8位到16位的代碼存儲密度,很合適存儲圖像或文字,是一款為嵌入式應(yīng)用專門設(shè)計的高性能單片機。
1.2.2 圖文信息錄入裝置
本模塊任務(wù)是設(shè)計一款具有顯示與回放功能的圖文錄用器,在硬件選擇上,使用矩陣按鍵,制作簡單但錄入速度慢、操作繁瑣,不易大量信息錄入。使用串口觸摸屏構(gòu)建模擬鍵盤,人機界面設(shè)計友好、錄入方式靈活、效率高,適合本設(shè)計方案。在軟件設(shè)置方面,對LED的信息采集,若選擇一次性全部錄入,錄入指令短、效率高,但存在數(shù)據(jù)包過大,數(shù)據(jù)丟失的現(xiàn)象;若選擇單次錄入,又存在耗時長的現(xiàn)象;最終選擇以列為單位進行信息采集。
1.2.3 供電裝置
供電裝置在方案選擇時,若采用電刷式導(dǎo)電滑環(huán)進行有線供電,該方式供電功率大、阻抗小、效率高,但該裝置價格昂貴、體積大、重量高;若采用無線供電模塊進行無線供電,該方式供電功率小,但結(jié)構(gòu)簡單,運用靈活,重量輕。綜上所述,由于無線供電模塊后續(xù)機械結(jié)構(gòu)設(shè)計簡單且性價比高,足夠滿足供電要求。
1.2.4 驅(qū)動裝置
在設(shè)計驅(qū)動LED旋轉(zhuǎn)平臺裝置時,有步進電機和直流電機兩種方案。步進電機是將接收的數(shù)字信號(電脈沖)轉(zhuǎn)化成對應(yīng)的角位移或者線位移的智能控制器件,具有很好的數(shù)據(jù)控制特性,可實現(xiàn)開環(huán)位置控制,一般用于速度、轉(zhuǎn)角、方向等領(lǐng)域應(yīng)用,但在啟動和加速時,經(jīng)常出現(xiàn)堵轉(zhuǎn)、失步和超步的現(xiàn)象,在轉(zhuǎn)速控制方面不符合本設(shè)計要求。而直流電動機是將直流電轉(zhuǎn)換成機械能,不僅具有無極調(diào)速、范圍寬等良好的調(diào)速性能,而且起動力矩大,可均勻?qū)崿F(xiàn)轉(zhuǎn)速調(diào)節(jié)的功能,結(jié)構(gòu)簡單,維護方便,較強的穩(wěn)定性能,最終選擇直流電動機作為驅(qū)動裝置。
LED線陣顯示系統(tǒng)中,發(fā)光二極管LED的工作電壓參數(shù)如表1所示,在系統(tǒng)設(shè)計中為了防止LED燒壞,通常采取串聯(lián)一個限流電阻的方式。本系統(tǒng)中選取紅色、綠色LED作為測試器件,電源電壓為5V直流穩(wěn)壓電,由無線電源模塊提供。
表1 LED工作電壓參數(shù)
該限流電阻參數(shù)公式如下所示:
若是超亮紅色LED,R限=(5-2)/20 mA=150Ω;
若是普通紅色LED,R限=(5-1.5)/10 mA=350Ω;
若是超亮綠色LED,R限=(5-3)/20 mA=100Ω;
若是普通綠色LED,R限=(5-2.5)/10 mA=250Ω,
方案設(shè)計時,根據(jù)現(xiàn)實對LED亮度的需求,選擇接近的限流電阻。
眼睛的重要特性之一是視覺暫留,即光像一旦在視網(wǎng)膜上形成,視覺將會對這個光像的感覺維持1/24 s左右,即至少播放24幀/s,人眼就會看到清晰連續(xù)的畫面,常應(yīng)用在電影的拍攝和放映。本系統(tǒng)在設(shè)計直流電機轉(zhuǎn)速時就利用人眼獨有的這種特性,讓電機保持在24r/s以上,人眼就會感受不到閃爍,成像也會清晰穩(wěn)定的呈現(xiàn)。
對于中等亮度的光刺激,視覺暫留時間T約為0.04 s~0.2 s,即電機轉(zhuǎn)速周期為T=0.04 s=40 ms;頻率為f=1/T=25 Hz。
電機轉(zhuǎn)速:n=60f/p=25r/s.(p為電機極對數(shù),p=1)
1) 完成“固定顯示2個獨立全亮的16*16的LED點陣,圖形間隔為4個點”的任務(wù),即直流電機在旋轉(zhuǎn)一個周期內(nèi),經(jīng)過點陣個數(shù)為:N=16+4+16=36個。
信號脈沖周期:T脈沖=40 ms/36=1.1 ms
2) 完成上述任務(wù)之后,進一步使之在水平方向上“寬窄變換、循環(huán)顯示”,只要在電機旋轉(zhuǎn)一個完整的周期內(nèi)通過32個脈沖的前提下,改變發(fā)送的脈沖周期,就會出現(xiàn)“周期大,圖形寬;周期小,圖形窄”的現(xiàn)象。
本系統(tǒng)核心控制器件,采用兩片STM32F103 RBT6單片機進行控制,通過觸摸屏中的模擬按鍵輸入信息并傳送至單片機后,通過無線通信模塊與另一片單片機連接,經(jīng)過特定的算法程序控制LED燈的閃爍。
STM32F103RBT6單片機最小系統(tǒng)如圖2所示。
圖2 系統(tǒng)單片機最小系統(tǒng)
旋轉(zhuǎn)LED線陣顯示裝置如圖3所示。
圖3 旋轉(zhuǎn)LED線陣顯示電路圖
根據(jù)系統(tǒng)控制的要求,圖文信息錄入系統(tǒng)和LED線陣顯示系統(tǒng)兩部分的控制流程圖均為圖4所示。
本系統(tǒng)設(shè)計的LED線陣顯示裝置,是以STM32F103RBT6單片機為主控器件,利用特定的算法程序完成對LED線陣的各項控制任務(wù),如顯示水平線、往返運動、圖形變換等,同時具有圖文顯示和回放功能,實現(xiàn)圖文信息的切換顯示。
圖4 主程序流程圖