張宇 王善偉
摘要:本文介紹了一種基于STM32的遙控家用點(diǎn)陣屏的設(shè)計(jì)方法。以STM32F103C8T6單片機(jī)為控制核心,利用內(nèi)部A/D采集光敏電阻信號和音頻信號,以調(diào)節(jié)屏幕亮度并得到音樂頻譜;利用STM32內(nèi)部RTC時(shí)鐘獲取時(shí)間信息,利用DS18B20溫度傳感器獲取溫度信息。最終測試結(jié)果表明:該系統(tǒng)既可當(dāng)萬年歷使用,又可以當(dāng)成溫度計(jì)使用,還可以顯示多彩動態(tài)的音樂頻譜,帶來真正的視聽享受。
關(guān)鍵詞:STM32;點(diǎn)陣屏;FFT;RTC;DS18B20;頻譜;遙控
中圖分類號:TP23? ? ? ?文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)16-0295-02
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
Abstract: This paper introduces a design method of the telecontrol household lattice screen based on STM32. This screen uses STM32F103C8T6 SCM as its contorl core and an internal A/D module which captures the photoresistance signal to adjust the screen luminance to get musical spectrum. Moreover, screen uses internal RTC clock of STM32 to acquire time information and uses DS18B20 temperature sensor to attain temperature information. The final test results show that the system can be used not only as a calendar, but also as a thermometer. It can also display colorful and dynamic music spectrum, bringing real audio-visual enjoyment.
Key words: STM32;Lattice screen; FFT; RTC;DS18B20;spectrum;Remote control
1引言
LED點(diǎn)陣屏,作為新的顯示媒體,可以顯示運(yùn)動的發(fā)光圖文,顯示信息量比較大,可滿足戶內(nèi)外的顯示要求,有著非常好的廣告和告示效果。LED點(diǎn)陣屏室外的應(yīng)用很廣泛,室內(nèi)的也有,但主要集中在政府和單位的室內(nèi)宣傳顯示,家用的LED點(diǎn)陣屏顯示幾乎沒有。
隨著生活水平的提高,人們除了注重產(chǎn)品的性能外,也越來越注重產(chǎn)品的裝飾效果。現(xiàn)在的音響品質(zhì)越做越好,外表也美觀,但是缺乏一種動態(tài)的音頻顯示效果。家用的萬年歷顯示屏也比較單調(diào),只能固定的顯示時(shí)間日歷,缺乏吸引眼球的動態(tài)顯示效果。本文介紹了一種基于STM32控制的家用點(diǎn)陣屏的設(shè)計(jì)方案,滿足家用的實(shí)用性和裝飾性,填補(bǔ)家用點(diǎn)陣屏的空缺。
2 硬件系統(tǒng)設(shè)計(jì)
2.1 系統(tǒng)設(shè)計(jì)
基于STM32的家用點(diǎn)陣屏系統(tǒng)主要由點(diǎn)陣屏單元板、點(diǎn)陣屏控制板、遙控器三部分組成。其主控板由STM32系統(tǒng)模塊、音頻處理模塊、光敏電阻模塊、溫度感應(yīng)模塊、蜂鳴器模塊、紅外接收模塊組成。如圖1所示,音頻輸入信號經(jīng)過音頻處理電路,再經(jīng)過STM32內(nèi)部的A/D采集得到數(shù)字信號,通過軟件FFT快速傅里葉變換處理,將數(shù)據(jù)送到點(diǎn)陣屏顯示;光敏電阻電路把光信號轉(zhuǎn)化成電信號,經(jīng)過A/D處理,STM32根據(jù)A/D處理得到的數(shù)據(jù)判斷光亮度,通過PWM來自動控制點(diǎn)陣屏的亮度;STM32通過溫度傳感器來讀取環(huán)境溫度,通過內(nèi)部RTC來獲取時(shí)間數(shù)據(jù),然后經(jīng)過點(diǎn)陣屏顯示;紅外遙控接收電路用于與遙控器通信,獲取遙控器的按鍵值,讓控制器做出相應(yīng)的處理,每接收到一次遙控信號,蜂鳴器都會響一聲。
2.2 點(diǎn)陣屏接口電路
本設(shè)計(jì)點(diǎn)陣屏單元板使用的是08接口的室內(nèi)雙色點(diǎn)陣屏,如下圖2所示,通過單元板上的74HC138和74HC595和控制板上的STM32 I/O口相連,從而達(dá)到控制點(diǎn)陣屏顯示的作用,08接口控制共用到11個(gè)I/O口。
2.3 音頻輸入電路
本設(shè)計(jì)的音樂頻譜顯示需要音頻信號的輸入,但從數(shù)碼設(shè)備等輸出的音頻信號比較弱,需要放大再處理。如圖3所示,采用TDA2822將音頻信號放大后,然后送到STM32的AD進(jìn)行轉(zhuǎn)換成數(shù)字信號,然后通過FFT處理,將頻譜顯示出來。AUDIO是TDA2822放大后輸出的信號。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 系統(tǒng)控制流程
首先,將程序初始化,設(shè)定好相關(guān)的初始值,然后讀取溫度、時(shí)間數(shù)據(jù),將其顯示出來,再讀取光敏電阻的電壓值,判斷光強(qiáng)度,然后自動調(diào)節(jié)點(diǎn)陣屏的亮度,并隨時(shí)處于紅外接收狀態(tài)。當(dāng)接收到紅外信號時(shí),判斷紅外信號的值,并根據(jù)該值來判定下一步動作,顯示相應(yīng)的內(nèi)容。
3.2 FFT音頻處理
用ADC模數(shù)轉(zhuǎn)換器對輸入進(jìn)來的音頻模擬信號進(jìn)行采樣,經(jīng)過FFT快速傅里葉變換后,取出一些頻率項(xiàng)的幅度值,量化顯示,驅(qū)動點(diǎn)陣點(diǎn)亮對應(yīng)LED燈。先用ADC模數(shù)轉(zhuǎn)換器對輸入進(jìn)來的音頻模擬信號進(jìn)行采樣,經(jīng)過FFT快速傅里葉變換后,取出一些頻率項(xiàng)的幅度值,再量化顯示,驅(qū)動點(diǎn)陣點(diǎn)亮對應(yīng)LED燈。流程圖如圖5。根據(jù)傅里葉分析,所有聲音可以拆分為數(shù)個(gè)或無數(shù)個(gè)正弦波信號,而它們又常常具有無數(shù)多的隨波分量,并且又常常是時(shí)刻變化著的,因此一個(gè)聲音的構(gòu)成是相當(dāng)復(fù)雜的。把聲音的頻率含量繪制成曲線,這就形成了頻譜。
4 總結(jié)
頻譜模塊的調(diào)試要分硬件電路部分和軟件部分,在不斷地修改和調(diào)試下才初步完成了要求,后面還需要優(yōu)化,顯示更多的內(nèi)容。基本實(shí)現(xiàn)了點(diǎn)陣屏對聲音頻譜的顯示,實(shí)時(shí)顯示溫度,時(shí)間的顯示,根據(jù)外界亮度實(shí)時(shí)調(diào)整屏幕亮度等功能,在家庭里面具有一定的實(shí)用性,有一定的開發(fā)前景。
參考文獻(xiàn):
[1] 崔琳,朱磊,劉小龍,等.基于STM32F407的以太網(wǎng)通信模塊設(shè)計(jì)[J].計(jì)算機(jī)測量與控制,2018,26(1):260-263.
[2] 張波,丁樂.基于單片機(jī)的LED點(diǎn)陣屏的研究與設(shè)計(jì)[J].中國市場, 2017(15):290-291.
[3] 張仲明,郭東偉,呂巍,等.基于DS18B20溫度傳感器的溫度測量系統(tǒng)設(shè)計(jì)[J]. 實(shí)驗(yàn)技術(shù)與管理,2018,35(5):82-85+94.
[4] 葉柳,黃志成,宋志平.基于頻譜面的黑白圖片彩色化[J].大學(xué)物理實(shí)驗(yàn), 2018, 31(1):50-53.
【通聯(lián)編輯:梁書】