基于FPGA和Qt技術(shù)的音頻廣播系統(tǒng)
3 終端設(shè)計
本文引用地址:http://butianyuan.cn/article/262225.htm 通過在SoPC中查看并更改SD卡音樂播放系統(tǒng)的鏈接結(jié)構(gòu),確定了系統(tǒng)的硬件平臺結(jié)構(gòu)如圖3所示,其主要改動為增加了網(wǎng)絡(luò)模塊。
如圖3所示,系統(tǒng)通過使用Nios II軟核來處理SD卡信息的讀取、發(fā)送數(shù)據(jù)到音頻解碼模塊以及和服務(wù)器進(jìn)行通信。硬件系統(tǒng)軟件的主要處理流程如圖4所示。
如圖4所示,當(dāng)終端上電后,首先將初始化外部設(shè)備,設(shè)置初始音量等參數(shù)。當(dāng)完成后,等待SD卡插入并掛載,系統(tǒng)創(chuàng)建支持的播放列表。上述初始化工作完成后,等待服務(wù)器發(fā)送播放命令并解析該播放項在播放列表中的索引值,找到后播放系統(tǒng)中存儲的音頻文件。
通常在Nios II軟核上實現(xiàn)UDP協(xié)議有兩種方式,一種為使用LwIp的方式進(jìn)行處理,另一種方式則為自己實現(xiàn)該協(xié)議的簡化版本。本系統(tǒng)因所需的通信量較少,為了簡化軟核程序采用了自己實現(xiàn)的方式。自己實現(xiàn)UDP協(xié)議主要需要注意的問題有兩點(diǎn):① ARP協(xié)議的實現(xiàn);② UDP報文的組包和解包操作。組包流程為首先組成UDP數(shù)據(jù)包,然后組成Ip報文最終生成以太網(wǎng)中傳輸?shù)囊蕴W(wǎng)幀。這些報文格式都可以很容易地通過相關(guān)標(biāo)準(zhǔn)得到。同時,在調(diào)試系統(tǒng)UDP實現(xiàn)情況時,可通過WireShark網(wǎng)絡(luò)監(jiān)測軟件對通信過程發(fā)送的信息進(jìn)行監(jiān)控,提高開發(fā)效率。
在UDP基本通信完成后,設(shè)定通信中服務(wù)器端命令報文的格式為:@@命令內(nèi)容@;終端命令報文的格式為:@@終端序列@命令內(nèi)容@。服務(wù)器程序和終端通過解析命令幀中的命令內(nèi)容進(jìn)行通信。
音頻編解碼芯片WM8731使用I2C協(xié)議進(jìn)行控制,在系統(tǒng)工作過程中,Nios II軟核首先將檢測音頻DAC控制模塊中的FIFO是否滿,如果檢測結(jié)果為非滿,則Nios II軟核將通過Avalon總線讀取512字節(jié)數(shù)據(jù)到FIFO中。音頻DAC控制模塊采用48 KHz的采樣頻率將數(shù)據(jù)送到音頻解碼模塊。目前系統(tǒng)實現(xiàn)所支持的文件格式只有采用48 KHz采樣頻率和16bit采樣深度的wav格式文件。所支持的SD卡文件格式為FAT格式。
3 總結(jié)
本文介紹了一種使用軟硬件相結(jié)合實現(xiàn)的網(wǎng)絡(luò)定時音頻廣播系統(tǒng),在Altera原有項目資源的基礎(chǔ)上通過擴(kuò)展實現(xiàn)網(wǎng)絡(luò)通信UDP協(xié)議、通信協(xié)議制定、服務(wù)器程序設(shè)計進(jìn)行設(shè)計。從上文中可以看出,本文所實現(xiàn)的平臺目前功能還比較單一,有待于借助網(wǎng)絡(luò)平臺的優(yōu)勢對系統(tǒng)進(jìn)一步擴(kuò)展,增加如視頻監(jiān)控、在線點(diǎn)播、流媒體播放等構(gòu)成真正意義上的IP廣播方案。
參考文獻(xiàn):
[1]陳琳.基于校園網(wǎng)的嵌入式廣播系統(tǒng)設(shè)計[J].計算機(jī)與數(shù)字工程,2009,37(7):96-98
[2]徐源.基于 FPGA 的以太網(wǎng)音頻廣播系統(tǒng)的設(shè)計[D].大連海事大學(xué),2011
[3]HAI X,ZHAO C,JIANG X.Train Station Classification for Passenger Dedicated Line[J]. International Journal of Advancements in Computing Technology,2012,4(15)
[4]Altera DE2 多媒體開發(fā)平臺[R/OL].http://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=China&CategoryNo=60&No=31&PartNo=4
[5]LU Z,Li J,ZHANG Y.The reading/writing SD card system based on FPGA[C].Pervasive Computing Signal Processing and Applications (PCSPA), 2010 First International Conference on.IEEE,2010:419-422
[6]UEHARA T,SATO T,YAMAOKA K.The design and implementation of a music broadcasting system via IP multicast with user-authentication[C].Communications, Computers and signal Processing,2003.PACRIM.2003 IEEE Pacific Rim Conference on.IEEE,2003(2):984-987
[7]Liang Hongwei,Li Jiangai,Kan Lingling.Implementation of SD Card Music Player Using Altera DE2-70[C].Multimedia and Signal Processing (CMSP), 2011 International Conference on.IEEE,2011(2):150-153
fpga相關(guān)文章:fpga是什么
c++相關(guān)文章:c++教程
評論