李飛,吳麗燕,陳煒
(1.清華大學(xué)汽車工程系,100084;2.石家莊機(jī)械化步兵學(xué)院作戰(zhàn)訓(xùn)練實(shí)驗(yàn)中心;3.石家莊機(jī)械化步兵學(xué)院訓(xùn)練部教??疲?/p>
51單片機(jī)集成FM功能的彩色數(shù)碼相框※
李飛1,吳麗燕2,陳煒3
(1.清華大學(xué)汽車工程系,100084;2.石家莊機(jī)械化步兵學(xué)院作戰(zhàn)訓(xùn)練實(shí)驗(yàn)中心;3.石家莊機(jī)械化步兵學(xué)院訓(xùn)練部教??疲?/p>
提出了一種用51單片機(jī)作為控制核心、集成FM收音功能的數(shù)碼相框的設(shè)計(jì)思路。采用國(guó)產(chǎn)STC89C516RD+單片機(jī)與SD卡配合,F(xiàn)M器件選用國(guó)產(chǎn)數(shù)字收音芯片RDA5807,以單片機(jī)教學(xué)實(shí)驗(yàn)儀PHOENIX325為平臺(tái),搭建了一套操作靈活方便、性能出色、趣味性強(qiáng)的附帶FM收音功能的TFT數(shù)碼相框,具有自動(dòng)運(yùn)行、旋轉(zhuǎn)飛梭和紅外遙控三種控制模式,對(duì)單片機(jī)相關(guān)內(nèi)容的教學(xué)和實(shí)驗(yàn)開(kāi)發(fā)起到了良好的輔助作用。
MCU;TFT;FM;旋轉(zhuǎn)飛梭;紅外遙控
在嵌入式系統(tǒng)市場(chǎng)中,盡管32位處理器炙手可熱,卻始終無(wú)法完全取代8位單片機(jī),二者各有千秋[1]。目前,國(guó)內(nèi)院校單片機(jī)課程大都以51單片機(jī)為主線進(jìn)行講授,但51系列單片機(jī)資源有限,難以實(shí)現(xiàn)彩色圖像的顯示,這造成彩屏模塊相關(guān)章節(jié)教學(xué)和實(shí)驗(yàn)的缺失。為解決此問(wèn)題,本文采用大容量單片機(jī)STC89C516RD+作為控制核心,利用筆者研制的單片機(jī)教學(xué)實(shí)驗(yàn)儀PHOENIX325作為實(shí)驗(yàn)平臺(tái),設(shè)計(jì)了一款數(shù)碼相框,可實(shí)現(xiàn)特定格式彩色照片的顯示,有助于學(xué)生理解彩屏控制、SD卡文件系統(tǒng)等內(nèi)容。同時(shí),為增強(qiáng)數(shù)碼相框的功能,提高教學(xué)的趣味性,在數(shù)碼相框上設(shè)計(jì)集成了一款小巧、性能優(yōu)異的FM收音機(jī)。圖1為系統(tǒng)框圖。
圖1 系統(tǒng)框圖
1.1 2.4英寸彩屏模塊
彩屏模塊裸屏控制器為ILI9328,支持8位和16位兩種數(shù)據(jù)模式,屏幕大小為2.4英寸,分辨率為320×240,數(shù)據(jù)線為44針,與PHOENIX325實(shí)驗(yàn)儀之間的接口為20引腳單排針,可以直接使用LCD12864接口。
1.2 單片機(jī)
一張320×240分辨率的普通BMP圖片大小一般為20~30KB,編程時(shí)生成的數(shù)組大小也很可觀[2-3],這就要求單片機(jī)具備足夠大的程序存儲(chǔ)器,還要有利于數(shù)據(jù)交換的足夠大的RAM,因此普通51單片機(jī)是不能勝任的。
STC89C516RD+單片機(jī)是深圳宏晶公司的一款產(chǎn)品,擁有64KB的FLASH和1KB的RAM,與SD卡配合,可以輕松滿足用彩屏顯示照片的需要。
1.3 SD卡
SD卡(Secure Digital Memory Card)是一種基于半導(dǎo)體FLASH的新一代記憶設(shè)備,它擁有高記憶容量、快速數(shù)據(jù)傳輸率、極大的移動(dòng)靈活性以及很好的安全性[4-5]。SD卡支持SPI、1位SD、4位SD三種傳輸模式,利用SD卡配合TFT彩屏,編程使彩屏可顯示BMP圖片,從而實(shí)現(xiàn)數(shù)碼相框功能。
SD卡的作用是存儲(chǔ)分辨率為320×240的BMP格式照片,采用SPI方式與單片機(jī)接口,重點(diǎn)是SD卡與單片機(jī)的通信和電平匹配。
1.4 旋轉(zhuǎn)編碼器
旋轉(zhuǎn)編碼器是一種用來(lái)測(cè)量轉(zhuǎn)速、計(jì)數(shù)、定位的裝置,常見(jiàn)的旋轉(zhuǎn)編碼器通過(guò)光電轉(zhuǎn)換,可將輸出軸的角位移、角速度等機(jī)械量轉(zhuǎn)換成相應(yīng)的電脈沖以數(shù)字量輸出。本文選用的旋轉(zhuǎn)編碼器又稱“旋轉(zhuǎn)飛梭”,型號(hào)為EC11。旋轉(zhuǎn)時(shí)輸出兩組脈沖信號(hào)A相和B相,二者相位相差90°,通過(guò)這兩組脈沖不僅可以測(cè)量轉(zhuǎn)速,還可以鑒相、計(jì)數(shù)[6]。除此之外,按下編碼器手輪時(shí)還可輸出一路D相脈沖,作為復(fù)位信號(hào)。
1.5 FM器件
FM器件選用國(guó)產(chǎn)數(shù)字收音芯片RDA5807,負(fù)責(zé)電臺(tái)信號(hào)的接收與輸出,該器件具有靈敏度高、噪聲小、抗干擾能力強(qiáng)、外接元件少、體積小等特點(diǎn),兼容76~108MHz全球FM頻段(包括日本76~91MHz和歐美87.5~108MHz),含有I2C總線和SPI串行總線接口,支持外部基準(zhǔn)時(shí)鐘輸入方式,支持高功率32Ω負(fù)載音頻輸出,直接耳機(jī)駁接,無(wú)需外接音頻驅(qū)動(dòng)放大[7]。
電路設(shè)計(jì)的重點(diǎn)是TFT模塊、SD卡、FM模塊等單元的設(shè)計(jì),由于彩屏和SD卡均為3.3V供電,因此設(shè)計(jì)時(shí)除考慮電平匹配外,還要注意不能忽略上拉電阻的布置。
2.1 TFT模塊單元
PHOENIX325實(shí)驗(yàn)儀已配置有20針的LCD12864接口,彩屏模塊采用16位接口模式1,因此可以直接利用該接口。TFT模塊原理圖略——編者注。
2.2 SD卡單元
SD卡與單片機(jī)之間是SPI通信方式,為保證可靠性,上拉電阻必不可少。如圖2所示,SD卡片選引腳為CS、數(shù)據(jù)輸入引腳為DI、時(shí)鐘引腳為CLK、數(shù)據(jù)輸出引腳DO 經(jīng)10kΩ電阻上拉至3.3V,并分別與單片機(jī)P23、P15、P16、P17相連。
圖2 SD卡單元
2.3 旋轉(zhuǎn)飛梭和紅外接收單元
旋轉(zhuǎn)飛梭EC11共5個(gè)引腳,其中C、E接地,A、B、D相信號(hào)經(jīng)10kΩ電阻上拉至5V,分別與單片機(jī)P10、P11、P12引腳相連,單片機(jī)依據(jù)輸入信號(hào)判斷旋轉(zhuǎn)飛梭的狀態(tài),再向TFT及FM模塊發(fā)出相應(yīng)指令。
紅外接收頭1038的輸出引腳接至單片機(jī)INT0,如圖3所示。單片機(jī)的引腳連接一個(gè)快捷按鍵,用來(lái)切換對(duì)TFT和FM的控制。
圖3 旋轉(zhuǎn)飛梭和紅外接收電路
2.4 FM單元
采用RDA5807器件的I2C總線連接模式,I2C數(shù)據(jù)線與單片機(jī)P26引腳相連,I2C時(shí)鐘線與單片機(jī)P27引腳相連,RDA5807的7、8引腳接耳機(jī)或小型音箱,如圖4所示。
圖4 FM模塊原理圖
3.1 編程重點(diǎn)
編程重點(diǎn)在于TFT彩屏設(shè)置、SD卡文件系統(tǒng)的管理及FM模塊的驅(qū)動(dòng),其余程序(如旋轉(zhuǎn)飛梭及紅外遙控的解碼、SPI總線驅(qū)動(dòng)等)略去,讀者可自行查閱相關(guān)文獻(xiàn)。
3.2 TFT彩屏設(shè)置
彩屏正常顯示的前提是正確初始化,完成各寄存器的配置,程序清單略——編者注。
除此之外,還要設(shè)置掃描模式、掃描原點(diǎn)、掃描區(qū)域、顯示分辨率等參數(shù)。運(yùn)行時(shí),為提高顯示速度,可將晶振更換為24MHz。
3.3 SD卡數(shù)據(jù)讀取
SD卡是照片存儲(chǔ)的載體,其編程關(guān)鍵是對(duì)SD的初始化、FAT系統(tǒng)的初始化、塊扇區(qū)的讀寫(xiě),以及SD卡文件結(jié)構(gòu)的掌握,路徑搜索文件的程序清單略——編者注。
3.4 RDA5807驅(qū)動(dòng)程序
3.4.1 寄存器讀寫(xiě)操作
RDA5807器件I2C接口中寄存器地址不可見(jiàn),但其擁有一個(gè)固定的起始寄存器地址,寫(xiě)操作時(shí)為02H,讀操作時(shí)為0AH。注意,RDA5807器件在單片機(jī)寫(xiě)入操作時(shí)會(huì)返回一個(gè)ACK信號(hào);而在讀操作時(shí),如果RDA5807接收到單片機(jī)發(fā)出的NACK信號(hào),則終止讀操作[8]。
3.4.2 初始化子函數(shù)
模塊初始化主要完成晶振設(shè)置、收音開(kāi)關(guān)、音效模式等功能的設(shè)置,涉及到的寄存器為02H。
3.4.3 搜臺(tái)子函數(shù)
搜臺(tái)使能由02H寄存器的bit8控制,搜臺(tái)成功后,0AH寄存器的bit14置1,當(dāng)前頻點(diǎn)可從0AH寄存器讀出,當(dāng)前音量則位于05H寄存器的低4位。
程序編譯時(shí)需要在KeilμVision中設(shè)置存儲(chǔ)器模式為“Large”。編譯成功后,將生成的HEX文件燒寫(xiě)到STC89C51單片機(jī)中運(yùn)行。
圖5是設(shè)計(jì)的數(shù)碼相框在PHOENIX325上應(yīng)用的實(shí)況。數(shù)碼相框和FM模塊均可由旋轉(zhuǎn)飛梭和紅外遙控進(jìn)行控制,控制對(duì)象通過(guò)INT1快捷鍵來(lái)選擇,按下INT1按鍵,程序?qū)?shù)碼相框進(jìn)行控制,再按下INT1按鍵,程序?qū)M收音機(jī)進(jìn)行控制。
圖5 TFT模塊在PHOENlX325實(shí)驗(yàn)儀上的應(yīng)用
程序默認(rèn)數(shù)碼相框?yàn)樽詣?dòng)運(yùn)行模式,逐一顯示SD卡中的照片;當(dāng)轉(zhuǎn)動(dòng)一下旋轉(zhuǎn)飛梭手輪時(shí),程序退出自動(dòng)運(yùn)行進(jìn)入手動(dòng)模式,隨著旋轉(zhuǎn)飛梭的轉(zhuǎn)動(dòng)切換照片;按下旋轉(zhuǎn)飛梭手輪,程序重新進(jìn)入自動(dòng)運(yùn)行模式;按下遙控器數(shù)字鍵,程序則進(jìn)入紅外遙控模式。
再按一下INT1快捷鍵,程序轉(zhuǎn)而對(duì)FM模塊實(shí)施控制,此時(shí)按下旋轉(zhuǎn)飛梭按鈕,進(jìn)入搜臺(tái)模式,程序自動(dòng)搜索信號(hào)最強(qiáng)的頻點(diǎn);當(dāng)轉(zhuǎn)動(dòng)旋轉(zhuǎn)飛梭手柄時(shí),進(jìn)入音量調(diào)節(jié)模式,音量隨著旋轉(zhuǎn)飛梭的旋轉(zhuǎn)而變化;當(dāng)用紅外遙控時(shí),可自由定義遙控器按鍵,實(shí)現(xiàn)選臺(tái)、音量變大、音量變小、靜音等功能。
經(jīng)過(guò)6個(gè)班次的課堂教學(xué)和實(shí)驗(yàn)表明,本文設(shè)計(jì)的數(shù)碼相框控制方式靈活、顯示效果優(yōu)異、切換速度快捷;FM模塊結(jié)構(gòu)簡(jiǎn)單、音質(zhì)出色、搜臺(tái)豐富,效果令人滿意。能使彩屏顯示走進(jìn)51單片機(jī)的課堂,具有一定的趣味性,既鍛煉了動(dòng)手能力,又提高了學(xué)習(xí)效果,對(duì)51單片機(jī)的教學(xué)和實(shí)驗(yàn)起到了較好的補(bǔ)充,具有較好的教學(xué)和應(yīng)用前景。
編者注:本文為期刊縮略版,全文見(jiàn)本刊網(wǎng)站www. mesnet.com.cn。
[1]《單片機(jī)與嵌入式系統(tǒng)應(yīng)用》編輯部.8位單片機(jī)是否將被32位單片機(jī)替代[J].單片機(jī)與嵌入式應(yīng)用,2015(1):1-2.
[2]商廣良,趙天月.低功耗TFT-LCD驅(qū)動(dòng)方法RDA[J].液晶與顯示,2012,27(6):785-788.
[3]陳金立,高超.基于TFT-LCD顯示屏的電子相冊(cè)設(shè)計(jì)[J].自動(dòng)化技術(shù)與應(yīng)用,2013,(11):67-70.
[4]李世奇,董浩斌,李榮生.基于FatFs文件系統(tǒng)的SD卡存儲(chǔ)器設(shè)計(jì)[J].測(cè)控技術(shù),2011,30(12):79-81.
[5]崔鵬偉,閆學(xué)文.基于SD卡的FATFS文件系統(tǒng)的研究與應(yīng)用[J].工業(yè)控制計(jì)算機(jī),2013(11):141-142.
[6]王鐵成,杜占平.建立基于兩級(jí)旋轉(zhuǎn)編碼器的位置檢測(cè)系統(tǒng)[J].微計(jì)算機(jī)信息,2009(7):27-29.
[7]San Bergmans.A comprehensive understanding of the infrared remote control[EB/OL].[2015-01].http://wenku. baidu.com/view/417f0fc34028915f804dc242.html.
[8]李飛.具有旋轉(zhuǎn)飛梭和紅外遙控功能的單片機(jī)FM收音機(jī)[J].2013精選實(shí)用電子設(shè)計(jì)100例,2013(12):77-80.
李飛(博士研究生),主要從事汽車電子控制方向的研究工作。
(責(zé)任編輯:楊迪娜 收修改稿日期:2015-02-04)
Color Digital Photo Frame lntegrated FM Based on 8051※
Li Fei1,Wu Liyan2,Chen Wei3
(1.Department of Automotive Engineering,Tsinghua University,Beijing 100084,China;
2.Combat Training Experiment Center,Shijiazhuang Mechanized Infantry School;
3.Education and Safeguard Office of Training Department,Shijiazhuang Mechanized Infantry School)
The paper puts forward a design idea for digital photo frame which uses 8051as the control core and is integrated FM module. The design realizes a flexible operation,excellent performance,integrated FM and interesting TFT digital photo frame by adopting STC89C516RD+MCU and SD card as key component.It uses RDA5807as FM chip,and the MCU teaching experiment instrument-PHOENIX325as the platform.The TFT digital photo frame has three control models such as running automatically,rotating the shuttle and infrared remote control,as a result,it plays a good supporting role for the teaching of MCU related content.
MCU;TFT;FM;rotary shuttle;infrared remote control
TP211.5
A