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