999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32的MP3播放器設計與實現

2016-03-22 15:53:11周雙飛黃海波簡煒高云王志
電腦知識與技術 2016年1期

周雙飛++黃海波++簡煒++高云++王志虎

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

關鍵詞:STM32;MP3播放器;μC/OS-

中圖分類號:TP393 文獻標識碼:A 文章編號: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播放器被廣泛應用于各種消費類電子領域,如新型的車載音頻設備、移動手機、網絡MP3等,所以對MP3的研究還具有很高的市場價值。國內外現有的MP3解碼方案實現有2種方案:硬件和軟件解碼,由于軟件解碼借助軟件提供的算法來實現音頻的分析、解碼等工作,程序復雜,實現難度大且相對來講非常耗電,所以本文采用硬件解碼設計MP3播放器。

1 硬件設計

1.1 硬件系統方案設計

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

圖1 系統框圖

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

1.2 MicroSD卡模塊

MicroSD卡與STM32開發板的連接采用SDIO接口,其中SDIO有多種工作模式,本次采用SDIO的DMA模式,管腳連接如圖2所示。MicroSD卡的驅動采用FATFS文件系統,FATFS是面向小型嵌入式系統的一種通用的FAT文件系統模塊,FATFS完全獨立于底層的I/O介質,因此獨立于硬件架構,可以很方便的移植到處理器當中,FATFS里面的各個函數都是封裝好的函數,只需要添加底層介質函數,就可以對MicroSD卡進行讀寫操作。

圖2 MircroSD管腳連接圖

1.3 液晶模塊

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

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

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

圖3 MP3解碼電路

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

2 軟件系統設計

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

圖4 軟件部分總體框架

2.1 μC/OS-Ⅱ實時操作系統

μC/OS-Ⅱ是一個代碼完全開放的多任務實時操作系統,其結構簡單明了,代碼嚴謹,雖然它只是一個內核,但包括了一個操作系統基本的特性:中斷管理、內存管理、多任務的管理、定時管理等,而且具有很強的移植性,很容易被移植到各種微處理器上,它還具有可裁剪、實時性好、高可靠性等特點[3],所以MP3的設計選擇μC/OS-Ⅱ實時操作系統。

本系統使用μC/OS-Ⅱ實時操作系統,涉及μC/OS-Ⅱ實時操作系統的移植,移植成功后,還要對任務的建立、任務的堆棧及任務優先級配置等進行編程。要實現μC/OS-Ⅱ的運行首先要對操作系統的所有變量和數據結構初始化,創建一個空任務,然后創建播放器運行、指示燈等任務,最后通過多任務任務調度及中斷實現就緒表中最高優先級任務的切換。

2.2 主程序的流程實現

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

圖5 主程序流程框圖

3 系統實現效果

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

圖6 界面效果

4結束語

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

參考文獻:

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

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

[3] 任哲.嵌入式實時操作系統μC/OS-Ⅱ原理及應用[M].北京:北京航空航天大學出版社,2014:7-13.

主站蜘蛛池模板: 波多野结衣无码视频在线观看| 亚洲人成电影在线播放| 国产视频入口| 91精品国产91久无码网站| 热99精品视频| 自偷自拍三级全三级视频| 久久综合国产乱子免费| 日本一本在线视频| 人妻中文久热无码丝袜| 精品少妇人妻无码久久| 国产大片喷水在线在线视频| 福利在线不卡| 日本道中文字幕久久一区| 国产日韩欧美中文| 亚洲综合激情另类专区| 91精品免费高清在线| 国产毛片一区| 国产真实自在自线免费精品| 六月婷婷激情综合| 国产成人欧美| 午夜日韩久久影院| 91小视频在线| 久久精品国产91久久综合麻豆自制 | 国产色网站| 国产精品久久国产精麻豆99网站| 国产精品成人免费视频99| 57pao国产成视频免费播放| 97精品国产高清久久久久蜜芽| 九九热视频精品在线| 国产福利小视频在线播放观看| 波多野结衣爽到高潮漏水大喷| 91 九色视频丝袜| 精品少妇人妻一区二区| 亚洲国产精品无码AV| 亚洲精品第五页| 日韩av资源在线| 亚洲天堂视频在线观看免费| 亚洲第一极品精品无码| 91免费国产高清观看| 伊人精品成人久久综合| 国产浮力第一页永久地址| 亚洲欧洲日韩综合| 久久综合色视频| 在线观看欧美精品二区| jizz在线免费播放| 夜夜操国产| 黄色网页在线观看| 色亚洲成人| 国产精品手机视频一区二区| 国产成人麻豆精品| 无码国内精品人妻少妇蜜桃视频 | 成年人福利视频| 美女潮喷出白浆在线观看视频| 97视频在线精品国自产拍| 伊在人亞洲香蕉精品區| 无码免费视频| 无码丝袜人妻| 91色爱欧美精品www| 人妻精品久久无码区| 国产主播喷水| 亚洲精品成人福利在线电影| 熟女视频91| 日韩高清欧美| 中文字幕在线一区二区在线| 中文字幕在线看| 欧美午夜一区| 99在线观看视频免费| 999在线免费视频| 国产成在线观看免费视频| 欧美中日韩在线| 亚洲免费福利视频| 欧美在线一二区| 国产69精品久久久久妇女| 美女一级毛片无遮挡内谢| 国产69精品久久久久妇女| 波多野结衣第一页| 国产流白浆视频| 毛片在线播放网址| 亚洲欧美一级一级a| 欧美日韩中文国产va另类| 欧美国产日韩一区二区三区精品影视| 高潮毛片免费观看|