亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ARM的MP3播放器的研究與實(shí)現(xiàn)

        2018-01-18 07:10:43吳小鋒張西寧
        電子設(shè)計(jì)工程 2018年1期
        關(guān)鍵詞:嵌入式系統(tǒng)

        吳小鋒,張西寧,馬 博

        (1.西安郵電大學(xué)人事處,陜西西安710121;2.陜西廣電網(wǎng)絡(luò)傳媒(集團(tuán))股份有限公司技術(shù)部,陜西西安

        710061;3.西安郵電大學(xué)計(jì)算機(jī)學(xué)院,陜西西安710121)

        隨著編碼與解碼,以及壓縮技術(shù)的進(jìn)步,語(yǔ)音文件一直朝著高壓縮比、高保真的方向發(fā)展。在目前普遍應(yīng)用的音頻壓縮標(biāo)準(zhǔn)中,MP3具有算法復(fù)雜、壓縮比大、效果好等優(yōu)點(diǎn),其音質(zhì)在低碼率的條件下能夠接近CD的效果。在市場(chǎng)消費(fèi)刺激下,各大公司紛紛推出了自己的MP3播放器產(chǎn)品。為了進(jìn)一步改善市場(chǎng)上MP3播放器存儲(chǔ)容量小、價(jià)格昂貴、播放歌曲單一的不足,文中基于STM32F103VET6微控制器,結(jié)合芬蘭VLSI Solution公司生產(chǎn)的音頻編解碼芯片VS1003,設(shè)計(jì)實(shí)現(xiàn)了一種個(gè)性化的MP3播放器。

        1 MP3解碼原理

        1.1 MP3幀結(jié)構(gòu)

        MP3幀結(jié)構(gòu)如圖1所示,主要包含以下幾個(gè)字段,即幀頭、CRC校驗(yàn)、邊信息、主數(shù)據(jù)和附加數(shù)據(jù)等[1]。在每一個(gè)幀中都有一個(gè)幀頭,長(zhǎng)度為4個(gè)字節(jié),幀頭最前面的12比特總是被設(shè)置為1,被稱作為“幀同步字”。如果幀頭的校驗(yàn)位為0,則幀頭后面有長(zhǎng)度為2個(gè)字節(jié)的CRC校驗(yàn)值,把這個(gè)值和通過(guò)計(jì)算得出的CRC值進(jìn)行比較就可以得知該幀是否有效。對(duì)邊信息進(jìn)行解碼能夠找出主數(shù)據(jù)從哪里開(kāi)始以及尺度因子長(zhǎng)度等參數(shù)信息。

        圖1 MP3幀結(jié)構(gòu)

        1.2 解碼實(shí)現(xiàn)方式

        根據(jù)解碼方式不同,解碼MP3文件可以采用軟件解碼和硬件解碼兩種方式[2]。

        軟件解碼過(guò)程是通過(guò)解碼程序來(lái)實(shí)現(xiàn),這一程序依據(jù)解碼算法編寫,CPU執(zhí)行解碼程序后,就可以將音頻信號(hào)從MP3音頻文件中解析出來(lái)。該方案只需要開(kāi)發(fā)者提供基本的硬件條件,對(duì)硬件要求不高。經(jīng)過(guò)解碼得到的MP3數(shù)據(jù)通過(guò)主控板的數(shù)模轉(zhuǎn)換功能就可以生成音頻信號(hào),輸入功放后即可播放聲音。然而,如果有大量的MP3文件需要解碼,就需要占用大量的CPU時(shí)鐘,因此該方案對(duì)CPU性能要求相對(duì)高些。

        硬件解碼過(guò)程就是將解碼算法過(guò)程硬件化。解碼模塊集成專用的解碼芯片,自動(dòng)對(duì)MP3文件的音頻信號(hào)進(jìn)行解析,獲取解碼頻率和解碼時(shí)間。這一方案的顯著優(yōu)點(diǎn)是解碼速度快,同時(shí)不需要占用CPU對(duì)音頻文件進(jìn)行處理,只需要把MP3數(shù)據(jù)流送入解碼模塊中,芯片就會(huì)自動(dòng)解碼。

        由以上分析可以看出,通過(guò)硬件解碼方式能夠得到音質(zhì)較好的音頻信號(hào)[3],而軟件解碼中由于CPU性能和解碼算法中數(shù)據(jù)處理的優(yōu)化操作,導(dǎo)致其音頻信號(hào)會(huì)有損耗。文中采用硬件解碼MP3文件方式,使用具有SPI接口的專用MP3解碼芯片,同時(shí)保證了文件數(shù)據(jù)傳輸?shù)乃俣取?/p>

        2 MP3播放器的總體設(shè)計(jì)

        2.1 功能介紹

        設(shè)計(jì)實(shí)現(xiàn)的MP3播放器具備以下功能:

        1)支持對(duì)SD卡的訪問(wèn),能夠播放SD卡中的MP3文件;

        2)在播放音頻文件時(shí),同步顯示MP3文件的歌曲名、播放時(shí)間以及聲音幅度的大小變化;

        3)播放過(guò)程中,能夠?qū)Σシ盼募M(jìn)行上一曲、下一曲、循環(huán)等操作,以及對(duì)音效進(jìn)行改變;

        4)可以顯示SD卡中的文件夾和文件,調(diào)節(jié)播放音量的大小。

        2.2 系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì)

        通過(guò)對(duì)MP3播放器系統(tǒng)的功能需求分析,可以將系統(tǒng)劃分為STM32F103RB核心處理[4]、SD卡音頻文件讀取、觸摸屏控制、LED控制、SPI控制、音頻數(shù)據(jù)控制、MP3音頻解碼播放等多個(gè)模塊,系統(tǒng)總體功能結(jié)構(gòu)如圖2所示。

        圖2 MP3播放器系統(tǒng)總體結(jié)構(gòu)

        3 MP3播放器的具體實(shí)現(xiàn)

        3.1 主控程序設(shè)計(jì)

        主控制程序的流程如圖3所示,系統(tǒng)開(kāi)機(jī)后,依次按如下步驟執(zhí)行:

        圖3 系統(tǒng)主控程序流程圖

        1)對(duì)系統(tǒng)各個(gè)硬件模塊的初始化;

        2)對(duì)FAT文件系統(tǒng)[5]的初始化。這里需要判斷初始化是否成功,如果不成功,系統(tǒng)則會(huì)一直檢索SD卡[6],直到檢測(cè)到能被系統(tǒng)識(shí)別的SD卡和文件系統(tǒng)為止。

        3)查找系統(tǒng)文件。系統(tǒng)文件保持在SYSTEM文件夾下,該文件夾下又包括FONT子文件夾。FONT文件夾下包括FONT12.FON和FONT16.FON兩個(gè)字體文件。

        4)根據(jù)用戶輸入,執(zhí)行相應(yīng)功能。SD卡中有用戶建立的MUSIC文件夾,其中存放著歌曲文件。用戶插上耳機(jī),根據(jù)顯示界面上的提示選擇相應(yīng)功能,即可聽(tīng)到播放的歌曲。

        3.2 硬件平臺(tái)選擇

        STM32系列采用ARM Cortex-M3內(nèi)核,其功耗為36 mA,是市場(chǎng)上功耗最低的32位產(chǎn)品,相當(dāng)于0.5 mA/MHz[7],是專門為高性能、低成本、低功耗的嵌入式應(yīng)用而設(shè)計(jì)的。本項(xiàng)目實(shí)現(xiàn)過(guò)程中,采用STM32F103RB處理器。STM32系列處理器具有如下一些特點(diǎn):

        1)內(nèi)核:32位ARM Cortex-M3 CPU,最高工作頻率為72 MHz,1.25 DMIPS/MHz。單周期乘法和硬件除法[8-10]。

        2)存儲(chǔ)器:片上集成的Flash存儲(chǔ)器容量為32-512KB、SRAM存儲(chǔ)器容量為6-64KB[11]。

        3)DMA:DMA控制器的通道數(shù)為12[12]。支持的外設(shè)有多種,例如定時(shí)器、ADC、DAC、I2C、USART和SPI等。

        4)2個(gè)12位的微秒級(jí)的A/D轉(zhuǎn)換器(通道數(shù)為16):A/D測(cè)量范圍為0~3.6 V,雙采樣和保持能力。片上同時(shí)集成了一個(gè)溫度傳感器。

        5)2通道 12位 D/A轉(zhuǎn)換器:STM32F103xC、STM32F103xD、STM32F103xE獨(dú)有。

        6)多達(dá)13個(gè)通信接口:2個(gè)I2C接口(支持SMBus/PMBus),5個(gè) USART接口(支持 ISO7816、LIN、IrDA接口和調(diào)制解調(diào)控制),3個(gè)SPI接口(18 Mbit/s),其中2個(gè)可復(fù)用為I2S接口,CAN接口(2.0B),USB 2.0全速接口和SDIO接口。

        3.3 硬件解碼模塊

        硬件解碼過(guò)程通過(guò)解碼芯片VS1003來(lái)實(shí)現(xiàn)[13](如圖4所示)。輸入的比特流首先通過(guò)解碼芯片VS1003的串行接口來(lái)接收。輸入的比特流被解碼后,通過(guò)一個(gè)數(shù)字音量控制器到達(dá)一個(gè)過(guò)采樣立體聲DAC(18位)。VS1003模塊的初始化是通過(guò)XRST、XDCS、XCS、DREQ、SCK、SO、SI等7個(gè)引腳來(lái)實(shí)現(xiàn)的。VS1003芯片工作時(shí),首先進(jìn)行硬件復(fù)位,經(jīng)過(guò)延時(shí)處理后,再進(jìn)行軟件復(fù)位,等待DREQ信號(hào)為高;軟件復(fù)位結(jié)束后便可設(shè)置VS1003芯片,最后向VS1003發(fā)送4個(gè)字節(jié)無(wú)效數(shù)據(jù),啟動(dòng)SPI發(fā)送后,即可完成對(duì)VS1003芯片的初始化工作。

        3.4 SD卡中音頻文件讀取

        系統(tǒng)采用FAT文件系統(tǒng)管理SD卡。文件分配表FAT采用鏈?zhǔn)浇Y(jié)構(gòu),在FAT32文件系統(tǒng)中用于磁盤數(shù)據(jù)(文件)索引和定位。讀取SD卡文件時(shí),SD卡上的文件存取都是以簇為單位,首先根據(jù)文件名查找到該文件的目錄登記項(xiàng),然后根據(jù)目錄登記項(xiàng)中的簇號(hào)便可以讀取文件的全部?jī)?nèi)容。在需要讀取SD卡中數(shù)據(jù)時(shí),使用的命令字為CMD17,接收正確時(shí)第一個(gè)響應(yīng)命令字節(jié)為0xFE,隨后是512字節(jié)的用戶數(shù)據(jù)塊,最后為2個(gè)字節(jié)的CRC校驗(yàn)碼。

        圖4 VS1003硬件結(jié)構(gòu)圖

        3.5 顯示模塊

        1)TFT觸摸屏

        系統(tǒng)采用2.4寸的TFT液晶屏,其分辨率為240*320,65K色,通過(guò)TI公司ADS7846觸摸屏控制芯片增添觸摸功能[14]。

        2)觸摸屏工作原理

        觸屏校準(zhǔn)是使用觸摸屏之前必須進(jìn)行的操作,通過(guò)采集觸摸屏上4個(gè)角的物理坐標(biāo),然后使用一定方法(如待定系數(shù)法)就可以算出坐標(biāo)系之間的平移關(guān)系。

        3)uC/GUI顯示模塊

        uC/GUI是一種圖形支持系統(tǒng),主要應(yīng)用于嵌入式環(huán)境,具有以下特點(diǎn)[15]:只要有合適的C編譯器提供支持,可以適用于任何8/16/32位CPU;只要有合適的LCD驅(qū)動(dòng)(小模式顯示時(shí)除外),可以適用于任何類型的液晶顯示,支持單色、灰度和彩色;所有接口支持使用宏進(jìn)行配制;可以定制顯示尺寸;字符和位圖對(duì)液晶顯示的起點(diǎn)沒(méi)有特別要求,可以從任意起點(diǎn)開(kāi)始顯示。此模塊利用uC/GUI顯示播放器的界面,包括歌曲的名字、音量大小、上一曲、下一曲、循環(huán)、列表瀏覽等功能。

        4)字庫(kù)設(shè)計(jì)

        由于CPU的Flash存儲(chǔ)器容量只有512KB,無(wú)法一次把所有的字庫(kù)數(shù)據(jù)全部寫入到W25X16芯片。可以將這些數(shù)據(jù)分為5部分寫入,依次為:ASCII字符的寫入、GB2312字庫(kù)文件前半部分的寫入、GB2312字庫(kù)文件后半部分的寫入、unicode碼到oem碼轉(zhuǎn)換表[16]的寫入、oem碼到unicode碼轉(zhuǎn)換表的寫入。

        4 結(jié)束語(yǔ)

        本項(xiàng)目以STM32F103RB為核心控制器,結(jié)合VS1003音頻解碼器,設(shè)計(jì)實(shí)現(xiàn)了一個(gè)MP3播放器。STM32系列CPU擁有豐富的資源,基本不需要添加外部器件,可以通過(guò)軟件升級(jí)來(lái)增加產(chǎn)品的功能,性能提升非常方便。播放器系統(tǒng)采用觸摸屏控制,使得系統(tǒng)操作更為人性化,可以方便地控制整個(gè)系統(tǒng)。同時(shí)實(shí)現(xiàn)了MP3歌曲的播放、換歌、循環(huán)等功能,具有成本低、存儲(chǔ)容量大、擴(kuò)展性強(qiáng)、攜帶方便等優(yōu)點(diǎn),必將在智能汽車、智能家居等領(lǐng)域得到廣泛應(yīng)用。該系統(tǒng)實(shí)現(xiàn)了MP3播放器的主要功能,可以對(duì)一些輔助功能進(jìn)一步加以完善,例如增加鬧鐘、電子書等功能,以使得系統(tǒng)更具實(shí)用性。

        [1]王星磊,于蓮芝,孫金,等.基于MP3編碼過(guò)程的音頻加密研究[J].信息技術(shù),2014(10):191-193.

        [2]董寧.MP3編碼器算法原理研究[J].電子設(shè)計(jì)工程,2013,21(5):47-49.

        [3]杜春雷.ARM體系結(jié)構(gòu)與編程[M].2版.北京:清華大學(xué)出版社,2015.

        [4]肖俊生,周小鳳,左鴻飛.基于STM32的高爐爐身厚度監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2014,27(3):113-114,116.

        [5]梁鐘麗.基于嵌入式平臺(tái)的文件系統(tǒng)研究[D].大連:大連海事大學(xué),2016.

        [6]常亮亮,王廣龍,張成吉.基于SOPC的圖像采集與存儲(chǔ)系統(tǒng)設(shè)計(jì)[J].測(cè)控技術(shù),2012,31(11):11-14.

        [7]周官喜.基于STM32低功耗云臺(tái)控制系統(tǒng)設(shè)計(jì)[D].青島:青島理工大學(xué),2012.

        [8]馬忠梅,張子劍,張全新,等.ARM&Linux嵌入式系統(tǒng)教程[M].3版.北京:北京航空航天大學(xué)出版社,2014.

        [9]徐成波,張常年.基于嵌入式Linux的移動(dòng)機(jī)器人控制系統(tǒng)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2014(7):24-27.

        [10]陳永強(qiáng),陶品,王篤強(qiáng).嵌入式Linux移植[J].實(shí)驗(yàn)室研究與探索,2012,31(9):67-68,72.

        [11]方海濤.高速低功耗嵌入式SRAM的設(shè)計(jì)[D].武漢:華中科技大學(xué),2012.

        [12]李濤濤.基于PCIE的高速存儲(chǔ)系統(tǒng)設(shè)計(jì)[D].西安:西安電子科技大學(xué),2014.

        [13]郝迎吉,關(guān)強(qiáng).基于VS1003解碼器的信號(hào)發(fā)生器[J].儀表技術(shù)與傳感器,2013(2):19-20,54.

        [14]于春濤,馮奇,孫濤,等.基于TPS65105的TFT?LCD電源設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(18):155-156,163.

        [15]楊存祥,張春蕾,龐永超.基于uC/GUI的虛擬儀表盤的設(shè)計(jì)[J].化工自動(dòng)化及儀表,2012,39(4):511-514.

        [16]馮靈清,楊懷卿,劉宇晶.常用編碼方式及其格式轉(zhuǎn)換[J].計(jì)算機(jī)時(shí)代,2012(1):33-35.

        猜你喜歡
        嵌入式系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
        電子制作(2019年7期)2019-04-25 13:17:14
        嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
        電子制作(2018年18期)2018-11-14 01:48:16
        搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        欧美色综合高清视频在线| 男女性杂交内射女bbwxz| 国产又色又爽又高潮免费视频麻豆 | 少妇被躁到高潮和人狍大战| 狠狠躁日日躁夜夜躁2022麻豆| 九九久久精品无码专区| 国产精品99久久久精品免费观看| 国产国语一级免费黄片| 变态调教一区二区三区女同| 午夜成人鲁丝片午夜精品| 久久久久久久98亚洲精品| 国产av一区二区内射| 久久午夜av一区二区三区| 999久久久国产精品| 亚洲精品6久久久久中文字幕| 亚洲精品综合久久国产二区 | 中文字幕日本av网站| 亚洲成熟丰满熟妇高潮xxxxx | 国产精品国产精品国产专区不卡| 亚洲欧美日韩综合久久| 无码91 亚洲| 在线国人免费视频播放| 久久99精品久久久久久9蜜桃 | 最新福利姬在线视频国产观看| 国产在线一区二区av| 亚洲啪av永久无码精品放毛片| 日韩AV无码一区二区三区不卡毛片| 精品国精品自拍自在线| 国产乱码人妻一区二区三区| 国产精品欧美成人| www.亚洲天堂.com| 国产三级精品三级在线专区| 曰韩亚洲av人人夜夜澡人人爽 | 亚洲一区在线二区三区| 亚洲 欧美 国产 制服 动漫| 无码AV高潮喷水无码专区线| 亚洲av人片在线观看调教| 日本视频一区二区三区一| 中文无码一区二区不卡αv| 97精品国产高清自在线看超| 日韩精品久久午夜夜伦鲁鲁|