• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于STM32的MP3播放器設(shè)計(jì)與實(shí)現(xiàn)

      2016-03-22 15:53:11周雙飛黃海波簡(jiǎn)煒高云王志
      電腦知識(shí)與技術(shù) 2016年1期

      周雙飛++黃海波++簡(jiǎn)煒++高云++王志虎

      摘要:基于STM32F103VET6增強(qiáng)型微控制器設(shè)計(jì)了一款MP3播放器,基于硬件解碼實(shí)現(xiàn)了多頁(yè)顯示歌曲播放列表、換頁(yè)、觸摸換歌以及支持MP3、WAV等格式歌曲的播放等功能的操作。硬件系統(tǒng)包括VS1003音頻解碼器、TDA1308功放模塊、MicroSD卡以及液晶觸摸屏;軟件系統(tǒng)基于VS1003驅(qū)動(dòng)、液晶觸摸屏的驅(qū)動(dòng)、μC/OS- 實(shí)時(shí)操作系統(tǒng)和FATFS文件系統(tǒng)等進(jìn)行實(shí)現(xiàn),系統(tǒng)實(shí)現(xiàn)表明具有很好的播放和界面操作效果。

      關(guān)鍵詞:STM32;MP3播放器;μC/OS-

      中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)01-0260-03

      Design and Implementation of MP3 Player Based on STM32

      ZHOU Shuang-fei1, HUANG Hai-bo1, JIAN Wei1, GAO Yun2, WANG Zhi-hu2

      (School of Electrical & Information Engineering, Hubei University of Automotive Technology, Shiyan 442002, China; 2. Power Equipment Plant of Dongfeng Motor Group Co., Ltd., Shiyan 442000, China)

      Abstract: A MP3 player was designed based on STM32F103VET6, which is an enhanced micro controller. Based on hardware decode, main functions are achieved, such as multiple pages show the songs list, paging, touch to change songs and support MP3,WAV format songs play, and so on. The hardware system included VS1003 audio decoder, TDA1308 power amplifier module, MicroSD card and LCD touch screen. The software was implemented based on VS1003 driver, LCD touch screen driver, μC/OS-II real-time operating system and FATFS file system. The implementation shows that the MP3 player has the very good play and interface operation effect.

      Key words: STM32;MP3 player;μC/OS-

      MP3播放器被廣泛應(yīng)用于各種消費(fèi)類電子領(lǐng)域,如新型的車載音頻設(shè)備、移動(dòng)手機(jī)、網(wǎng)絡(luò)MP3等,所以對(duì)MP3的研究還具有很高的市場(chǎng)價(jià)值。國(guó)內(nèi)外現(xiàn)有的MP3解碼方案實(shí)現(xiàn)有2種方案:硬件和軟件解碼,由于軟件解碼借助軟件提供的算法來實(shí)現(xiàn)音頻的分析、解碼等工作,程序復(fù)雜,實(shí)現(xiàn)難度大且相對(duì)來講非常耗電,所以本文采用硬件解碼設(shè)計(jì)MP3播放器。

      1 硬件設(shè)計(jì)

      1.1 硬件系統(tǒng)方案設(shè)計(jì)

      基于STM32F103VET6微控制器所設(shè)計(jì)的MP3播放器,主要包括三個(gè)模塊:存儲(chǔ)模塊、播放模塊和顯示模塊。系統(tǒng)方案設(shè)計(jì)的系統(tǒng)框圖如圖1所示。音頻文件存儲(chǔ)在MicroSD卡內(nèi)(支持文件夾),通過微控制器讀取歌曲數(shù)據(jù)發(fā)送到VS1003音頻解碼器,經(jīng)解碼后發(fā)送給TDA1308功放模塊,放大后在通過耳機(jī)外放出來,同時(shí)通過液晶顯示器實(shí)時(shí)的顯示播放的狀態(tài)信息。

      圖1 系統(tǒng)框圖

      STM32F103VET6增強(qiáng)型微控制器使用的是高性能、低成本、低功耗的Cortex-M3內(nèi)核,支持睡眠、停機(jī)、待機(jī)三種低功耗模式[1]。工作頻率為72MHZ,內(nèi)置64KB的SRAM和 512KB的閃存,包含2個(gè)USART、2個(gè)SPI、1個(gè)USB和1個(gè)CAN等通信接口,還具有豐富外設(shè)和增強(qiáng)I/O端口。下面對(duì)系統(tǒng)中的幾個(gè)主要模塊進(jìn)行設(shè)計(jì)說明。

      1.2 MicroSD卡模塊

      MicroSD卡與STM32開發(fā)板的連接采用SDIO接口,其中SDIO有多種工作模式,本次采用SDIO的DMA模式,管腳連接如圖2所示。MicroSD卡的驅(qū)動(dòng)采用FATFS文件系統(tǒng),F(xiàn)ATFS是面向小型嵌入式系統(tǒng)的一種通用的FAT文件系統(tǒng)模塊,F(xiàn)ATFS完全獨(dú)立于底層的I/O介質(zhì),因此獨(dú)立于硬件架構(gòu),可以很方便的移植到處理器當(dāng)中,F(xiàn)ATFS里面的各個(gè)函數(shù)都是封裝好的函數(shù),只需要添加底層介質(zhì)函數(shù),就可以對(duì)MicroSD卡進(jìn)行讀寫操作。

      圖2 MircroSD管腳連接圖

      1.3 液晶模塊

      LCD與CPU的連接采用FSMC接口,F(xiàn)SMC接口初始化完成后,就可以對(duì)液晶屏控制芯片ILI9341進(jìn)行控制,其中液晶屏的掃描方式、像素點(diǎn)的顏色及橫/豎屏的控制都是通過調(diào)用液晶屏寄存器初始配置函數(shù)向ILI9341寫控制參數(shù)來實(shí)現(xiàn)。對(duì)不同圖片及文字的顯示實(shí)質(zhì)是控制液晶的所有像素點(diǎn)的顏色來達(dá)到預(yù)期的結(jié)果。顯示器的觸摸屏使用的是電阻觸摸屏,通過TSC2046芯片控制。要實(shí)現(xiàn)觸摸功能首先要對(duì)觸摸屏進(jìn)行觸摸校準(zhǔn),校準(zhǔn)成功后,保存校準(zhǔn)參數(shù)(為避免每次開機(jī)都進(jìn)行校準(zhǔn),將參數(shù)保存在MircroSD中),當(dāng)再次點(diǎn)擊時(shí),就可以把測(cè)量出來的觸點(diǎn)電壓經(jīng)轉(zhuǎn)換公式計(jì)算出對(duì)應(yīng)的液晶屏坐標(biāo)。

      1.4 VS1003解碼模塊和TDA1308功放模塊

      VS1003音頻解碼芯片為VS10xx系列的第三代產(chǎn)品,是芬蘭VLSI Solution公司出品的單片MP3/WMA/MIDI解碼和ADPCM編碼芯片[2]。VS1003使用的是數(shù)字信號(hào)處理器VS_DSP,具有功耗低,性能高等特點(diǎn)。VS1003具有串行的控制和數(shù)據(jù)接口,片內(nèi)帶有一個(gè)高品質(zhì)可變采樣的ADC和多速立體聲DAC,其工作的主時(shí)鐘為12.288MHz,VS1003通過開發(fā)板中的SPI2來控制,解碼電路如圖3所示。數(shù)據(jù)的寫入主要通過DREQ信號(hào)控制,當(dāng)VS1003的FIFO能夠接收數(shù)據(jù)時(shí),DREQ為高向VS1003發(fā)送32Byte的數(shù)據(jù)(當(dāng)DREQ變低時(shí)停止發(fā)送數(shù)據(jù)),接收數(shù)據(jù)后進(jìn)行解碼、高低音配置,然后流向音量控制單元和音頻FIFO,最后通過低通濾波輸送到音頻放大器。

      圖3 MP3解碼電路

      由于從VS1003輸出的功率太小,播放的音效不佳,所以將輸出的信號(hào)送往TDA1308功放模塊,放大后在經(jīng)過耳機(jī)播放出來。

      2 軟件系統(tǒng)設(shè)計(jì)

      要實(shí)現(xiàn)本系統(tǒng)的MP3功能,需要做的準(zhǔn)備工作有在SD卡內(nèi)新建兩個(gè)文件夾,分別命名為MP3Ready和Music。MP3Ready文件夾內(nèi)存放list1.txt和list2.txt兩個(gè)空文件, list1.txt用于存放掃描到的可播放文件名及路徑, list2.txt用于存放播放歌曲列表不添加路徑,同時(shí)還要將預(yù)先制作好的用于LCD顯示的字模及圖片存放到此文件夾下;Music文件夾用于存放要播放的音頻文件。做完這些工作后,把液晶屏驅(qū)動(dòng)、觸摸屏驅(qū)動(dòng)、MicroSD卡驅(qū)動(dòng)、VS1003驅(qū)動(dòng)等驅(qū)動(dòng)程序添加到工程中,通過μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)調(diào)度整個(gè)程序的運(yùn)行,軟件部分總體框圖如圖4所示。

      圖4 軟件部分總體框架

      2.1 μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)

      μC/OS-Ⅱ是一個(gè)代碼完全開放的多任務(wù)實(shí)時(shí)操作系統(tǒng),其結(jié)構(gòu)簡(jiǎn)單明了,代碼嚴(yán)謹(jǐn),雖然它只是一個(gè)內(nèi)核,但包括了一個(gè)操作系統(tǒng)基本的特性:中斷管理、內(nèi)存管理、多任務(wù)的管理、定時(shí)管理等,而且具有很強(qiáng)的移植性,很容易被移植到各種微處理器上,它還具有可裁剪、實(shí)時(shí)性好、高可靠性等特點(diǎn)[3],所以MP3的設(shè)計(jì)選擇μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)。

      本系統(tǒng)使用μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng),涉及μC/OS-Ⅱ?qū)崟r(shí)操作系統(tǒng)的移植,移植成功后,還要對(duì)任務(wù)的建立、任務(wù)的堆棧及任務(wù)優(yōu)先級(jí)配置等進(jìn)行編程。要實(shí)現(xiàn)μC/OS-Ⅱ的運(yùn)行首先要對(duì)操作系統(tǒng)的所有變量和數(shù)據(jù)結(jié)構(gòu)初始化,創(chuàng)建一個(gè)空任務(wù),然后創(chuàng)建播放器運(yùn)行、指示燈等任務(wù),最后通過多任務(wù)任務(wù)調(diào)度及中斷實(shí)現(xiàn)就緒表中最高優(yōu)先級(jí)任務(wù)的切換。

      2.2 主程序的流程實(shí)現(xiàn)

      要實(shí)現(xiàn)MP3的功能,其主程序首先要完成對(duì)開發(fā)板所用到的外設(shè)進(jìn)行初始化和文件系統(tǒng)的初始化,進(jìn)而將MicroSD卡中可播放的音頻文件(支持長(zhǎng)文件名,如果文件名過長(zhǎng),超出部分忽略不顯示)掃描到播放列表中,同時(shí)將播放列表中的文件名以列表的形式在LCD上顯示出來,然后按照播放指令將要播放的音頻文件發(fā)送給VS1003模塊,經(jīng)過VS1003的解碼、高低音配置等處理,最后發(fā)送給功放模塊將歌曲播放出來,一首歌播放完之后,自動(dòng)播放歌曲列表的下一首,直至所有歌曲播放完畢。主程序流程框圖如圖5所示。

      圖5 主程序流程框圖

      3 系統(tǒng)實(shí)現(xiàn)效果

      MP3播放器的設(shè)計(jì)用到多種調(diào)試手段,主要通過JTAG接口調(diào)試,其次通過指示燈的狀態(tài)和串口在電腦屏幕上打印MP3播放器運(yùn)行過程的參數(shù)協(xié)助調(diào)試。設(shè)計(jì)的界面效果如圖6所示,歌曲名稱以列表的形式顯示,單頁(yè)最多顯示8首歌曲,正在播放的歌曲用三角圖標(biāo)指示。開始按鍵兩邊的按鍵實(shí)現(xiàn)直接切換上一首、下一首歌曲的功能;左下角菱形的左右頂角區(qū)域分別是上一頁(yè)、下一頁(yè)的按鍵;對(duì)于歌曲的切換還可以直接點(diǎn)擊列表歌曲名稱進(jìn)行切換。

      圖6 界面效果

      4結(jié)束語

      本文對(duì)MP3硬件解碼技術(shù)進(jìn)行了研究,并成功開發(fā)了一款MP3播放器。在硬件上解碼器與存儲(chǔ)器分離,增加了歌曲存儲(chǔ)容量(可支持4G的MicroSD卡),既節(jié)省了成本,又極大地方便了應(yīng)用,同時(shí)還采用了觸摸屏顯示器,使操作更加便捷,具有一定的使用和推廣價(jià)值。

      參考文獻(xiàn):

      [1] 馬忠梅,徐琰.ARM Cortex 微控制器教程[M]. 北京:北京航空航天大學(xué)出版社,2010:59-61.

      [2] VLSI Solusion.VS1003.Version:1.06,2012-03-16.

      [3] 任哲.嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-Ⅱ原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2014:7-13.

      界首市| 蓝田县| 九台市| 双桥区| 三门县| 高雄市| 梨树县| 嵩明县| 宁化县| 永宁县| 三门峡市| 阳谷县| 甘泉县| 泰兴市| 左贡县| 雷波县| 盘锦市| 旺苍县| 哈密市| 长治市| 万安县| 仁怀市| 靖远县| 逊克县| 英德市| 内江市| 宜良县| 金坛市| 大足县| 黄大仙区| 贵港市| 平昌县| 黄陵县| 吉木萨尔县| 锡林郭勒盟| 南城县| 安庆市| 肇东市| 武冈市| 福安市| 长治县|