廣東工業(yè)大學 張靈敏 蘇曉烽 蘇慶偉
華南理工大學 孫偉杰
基于STM32單片機的智能臺燈X-Light
廣東工業(yè)大學張靈敏蘇曉烽蘇慶偉
華南理工大學孫偉杰
本文描述的是由592個獨立彩色光源(RGB-LED)搭建成一個圓柱體立體的燈具X-Light,該燈具是以STM32F103R8T6單片機為控制核心,采用雙P溝道增強型MOS管APM4953作為X-Light的層驅(qū)動控制,移位寄存器74HC245芯片控制每盞LED的信號,通過藍牙模塊實現(xiàn)手機APP與單片機的無線數(shù)傳,從而實現(xiàn)遠程操控每個LED燈以及展示不同動畫等功能。
X-Light;STM32F103R8T6;藍牙模塊;APP;移位寄存器
X-Light是由592個獨立彩色光源(RGB-LED)及其控制系統(tǒng)搭建的一個圓柱體立體燈具,該圓柱體立體分16層共陰和111列共陽,每個LED之間的空間間距約為22mm,以STM32F103R8T6單片機為控制核心,采用雙P溝道增強型MOS管APM4953控制顯示該圓柱體的16個層,采用移位寄存器74HC245芯片對111列共陽端進行信號控制,從而達到控制每一個獨立彩色光源(RGB-LED)亮和滅及其顏色的變化;通過藍牙模塊實現(xiàn)手機APP與單片機的無線數(shù)傳,使得592個獨立彩色光源顯示不同的顏色并自由組合形成絢麗的圖案進而變換不同的動畫。例如:愛心、水滴、煙花、小球彈跳等多種動畫。系統(tǒng)總體結(jié)構(gòu)框圖見圖l所示:
圖1 系統(tǒng)總結(jié)構(gòu)框圖
2.1主控模塊
考慮到本文所設(shè)計的智能臺燈所需控制的信號管腳較多,信號處理要快,所以主控采用STM32系列單片機STM32F103R8T6作為核心芯片,該芯片片運算速度快,功率損耗低,抗干擾能力強,采用尾鏈(tail chaining)技術(shù)的中斷處理(降至6個CPU周期)。7個定時器,每個定時器有4個IC/OC/PWM或脈沖計數(shù)器,多達6個PWM輸出死區(qū)時間生成和急停,可以滿足該系統(tǒng)的功能要求。
2.2信號傳輸模塊
智能臺燈X-Light共16層共陰層,陽極由111根信號管腳控制。為了減少單片機管腳使用,本文所描述的X-Light采用74HC595作為信號輸出的主要芯片。
74HC595具有8位移位寄存器和一個存儲器,三態(tài)輸出功能,移位寄存器和存儲器有相互獨立的時鐘并有一個串行移位輸入(Ds),和一個串行輸出(Q7’),和一個異步的低電平復(fù)位;智能臺燈X-Light采用的是該芯片將串行輸入的8位數(shù)字、并行輸出8位數(shù)字的功能,從而實現(xiàn)兩塊74HC595之間的的信號傳遞。該信號傳輸模塊74HC595圖2所示:
圖2 74HC595信號傳輸模塊
圖3 74HC245信號驅(qū)動模塊
2.3信號驅(qū)動模塊
總之,《易經(jīng)》告誡:人要遵從天地道道人道,知行合一;做君子而不做小人;窮理盡性乃致于命?!兑捉?jīng)》是修身養(yǎng)性齊家治國平天下的大智慧學。
考慮到單片機需要控制多個74HC595,為減輕單片機的負載,這里采74HC245作為74HC595芯片的信號驅(qū)動器。
74HC245是典型的CMOS型三態(tài)緩沖、方向可控的八路緩沖器,主要用于實現(xiàn)數(shù)據(jù)總線的雙向異步通信。在這里用于保護脆弱的主控芯片,在主控芯片的并行接口與外部受控設(shè)備74HC595芯片的并行接口間添加該緩沖器,用于驅(qū)動74HC595,其信號驅(qū)動模塊74HC245如圖3所示。
2.4共陽層驅(qū)動模塊
因為需要較大的功率驅(qū)動X-Light每一水平層面,為保證所有燈都能正常發(fā)光,本文所述的X-Light利用APM4953作為共陽層驅(qū)動。
每片APM4953內(nèi)部包含兩個獨立的P溝道MOS場效應(yīng)管,它的開啟電壓低,導(dǎo)通電阻低[3],適合用LCD顯示屏,LED顯示驅(qū)動,也可用來做負載開關(guān)或者PWM開關(guān)。其共陽層驅(qū)動電路模塊原理圖如圖4所示。
圖4 APM4953模塊原理圖
3.1整體框架
軟件系統(tǒng)的整體框架如圖5所示:
圖5 軟件系統(tǒng)的整體框架圖
產(chǎn)品的程序模塊化設(shè)計,以降低耦合度,提高復(fù)用性以及便于調(diào)試。主要分為三大模塊,分別處理顯示、通訊、傳感器,歸主程序統(tǒng)一調(diào)度。
模塊內(nèi)部則為層次結(jié)構(gòu),最低一層為硬件驅(qū)動,實現(xiàn)對芯片或硬件模塊最基礎(chǔ)的操作。最高一層為接口層,實現(xiàn)必要的元操作供主程序調(diào)度。中間的一層或多層為具體實現(xiàn),是最關(guān)鍵的部分,實現(xiàn)數(shù)據(jù)的緩沖、濾波、計算等。
3.2顯示模塊
模塊總共分為五層,分別是顯示接口、動畫處理、PWM彩色幀顯示、單色幀數(shù)據(jù)發(fā)送、74HC595驅(qū)動。
圖6 顯示模塊圖
彩色幀的顯示:
不間斷地輸出幀圖像數(shù)據(jù),利用PWM原理,調(diào)節(jié)占空比即可使原本只有三基色的LED燈顯示出上萬種顏色。
74HC595驅(qū)動:
移位寄存器有一個串行移位輸入(Ds),和一個串行輸出(Q7’),和一個異步的低電平復(fù)位,存儲寄存器有一個并行8位的、具備三態(tài)的總線輸出,當使能OE時(為低電平),存儲寄存器的數(shù)據(jù)輸出到總線。
時序圖如圖7所示:
圖7 74HC595時序圖
3.3APP界面如圖8所示
圖9顯示的是控制每一盞LED燈亮滅以及顏色的界面。
智能臺燈X-Light整體運行穩(wěn)定可靠,即使在臺燈全亮時.驅(qū)動電路也沒有明顯的發(fā)熱現(xiàn)象,各點LED發(fā)光明亮、亮度均勻,各種動畫效果運行流暢。編寫文字或圖像數(shù)據(jù)信息,手機APP通過藍牙發(fā)送有效的文字或圖像數(shù)據(jù)信息,即可控制X-Light,實現(xiàn)顯示功能及其各種動畫效果。
圖8 APP功能界面
圖9
本X-Light設(shè)計方案中融合了藝術(shù)性思維,原創(chuàng)的圓柱造型形象更加親切,新增各種動畫效果;控制核心是STM32F103R8T6單片機,移位寄存器74HC245芯片控制每盞LED的信號,采用雙P溝道增強型MOS管APM4953作為X-Light的層驅(qū)動控制,通過手機調(diào)整任意一個光點成任意一種顏色、亮度,方便地畫出腦海中的各種創(chuàng)意想法。
該智能臺燈X-Light還有很大的完善空間,例如:可在手機APP上玩游戲(如:貪吃蛇、魔方)并由X-Light進行3D投影、改善其外觀,使其更具有藝術(shù)感。
[1]蘇珊,肖英,李行杰.SU Shan.XIAO Ying.LI Hang-jie基于STC單片機的8×8×8LED光立方系統(tǒng)設(shè)計[J].吉首大學學報(自然科學版),2013(6).
[2]楊永剛.3D光立方的設(shè)計與制作[J].電子世界,2014(6).
[3]吳永德,羅萍.基于STC15F2K60S2單片機的LED光立方設(shè)計[J].電腦編程技巧與維護,2015(11).
張靈敏(1994—),男,廣東惠州人,大學本科,現(xiàn)就讀于廣東工業(yè)大學。