畢業(yè)設(shè)計基于單片機(jī)的便攜式MP3播放器設(shè)計_第1頁
畢業(yè)設(shè)計基于單片機(jī)的便攜式MP3播放器設(shè)計_第2頁
畢業(yè)設(shè)計基于單片機(jī)的便攜式MP3播放器設(shè)計_第3頁
畢業(yè)設(shè)計基于單片機(jī)的便攜式MP3播放器設(shè)計_第4頁
畢業(yè)設(shè)計基于單片機(jī)的便攜式MP3播放器設(shè)計_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1 便攜式MP3播放器基本原理本章首先討論便攜式MP3播放器的結(jié)構(gòu)、然后介紹多種存儲器類型、接著介紹各種通信接口及其擴(kuò)展功能,其中簡要介紹了USB2.0通信協(xié)議。最后說明便攜式MP3播放器的擴(kuò)展功能。1.1 便攜式MP3播放器的結(jié)構(gòu)對于便攜式MP3系統(tǒng),主要考慮的是其體積小巧、低功耗、高容量、低價格。當(dāng)前流行的MP3播放器其主要結(jié)構(gòu)如圖2.1所示??梢?,一個MP3播放器主要應(yīng)包括:(1)單片機(jī)控制系統(tǒng)(2)大容量的移動存儲設(shè)備(3)MP3解碼器(4)D/A轉(zhuǎn)換芯片(5)音頻放大電路(6)USB接口(7)LCD顯示和鍵盤電路USB大容量移動存儲器LCD顯示器鍵盤按鈕單片機(jī)控制系統(tǒng)MP3解碼D/A

2、轉(zhuǎn)換音頻放大聲音輸出 圖2.1 MP3播放器的主要結(jié)構(gòu)示意圖事實上,隨著MP3播放器的激烈競爭和產(chǎn)品開發(fā)的發(fā)展。一些芯片廠商已經(jīng)推出了集成MP3解碼及其它附加功能的單片機(jī),使MP3播放器向集成化發(fā)展,如ATMEL的AT89C51SND1芯片。另一方面,MP3播放器的附加功能也越來越具有吸引力,如將MP3中的儲存器開辟為移動存儲設(shè)備,增加了MP3錄音、調(diào)頻收音機(jī)以及多種現(xiàn)場環(huán)境感覺功能的播放模式,在MP3播放器集成時鐘功能等。總之,MP3播放器在不斷集成化的同時,功能正朝著多樣化方向發(fā)展。2.2 MP3播放器的通信接口MP3播放器的通信接口MP3的通信方式已從PC并口的Normal方式過渡到EC

3、P或EPP方式,上/下載速率從100Kbytes/s上升到300Kbytes/s;最新的產(chǎn)品,大多已經(jīng)使用了支持熱插拔的USB接口,通信速率最高可達(dá)400到500Kbytes/s,用戶下載32Mbytes的MP3音樂只需大約一分半鐘時間,大大縮短了用戶上/下載MP3音樂的時間,有的甚至采用了USB2.0接口。當(dāng)前,USB已經(jīng)是便攜式MP3通信接口的主流標(biāo)準(zhǔn),不過,將來甚至可能采用1394火線技術(shù)。USB2.0簡介通用串行總線(USB)是由INTEL,DEC,MICROSOFT和IBM等公司聯(lián)合提出的一種新的串行總線標(biāo)準(zhǔn),主要用于PC機(jī)與外接設(shè)備的互聯(lián)。眾所周知,計算機(jī)外設(shè)的豐富及消費(fèi)電子設(shè)備與

4、計算機(jī)連接的實現(xiàn),擴(kuò)展了PC的應(yīng)用空間,同時外設(shè)的日益豐富也給用戶造成了連接上的困難。USB技術(shù)的提出就是基于通用連接技術(shù)實現(xiàn)外設(shè)的簡單連接,以達(dá)到方便用戶,降低成本,擴(kuò)展PC機(jī)外設(shè)的目的。通用串行總線是一種快速,靈活的總線接口。與其它通信接口比較,USB接口的最大特點(diǎn)是易于使用,這也是USB的主要設(shè)計目標(biāo)。作為一種高速總線接口,USB適用于多種設(shè)備,其易于使用表現(xiàn)在USB接口支持熱插拔,并且所有的配置過程都由系統(tǒng)自動完成,無須用戶干預(yù)。USB協(xié)議的傳輸速率USB是一種支持在USB主機(jī)和USB設(shè)備之間進(jìn)行串行數(shù)據(jù)傳輸?shù)耐ㄐ艆f(xié)議。主機(jī)作為總線的主叫方,采用兩種信令模式:全速模式12Mb/S和低速

5、模式1.5Mb/S。目前普通采用的USB1.1主要應(yīng)用在中低速外部設(shè)備上,它提供的傳輸速率有低速1.5Mb/S和全速12Mb/S兩種。扣除用于總線狀態(tài),控制和錯誤監(jiān)測等的數(shù)據(jù)傳輸,USB的最大理論傳輸速率仍達(dá)1.2Mb/S或9.6Mb/S, 高于一般的串行總線接口?,F(xiàn)在的2.0可以達(dá)到500Mb/S??偟膩碚f,中速的傳輸是同步的,低速的數(shù)據(jù)來自交互的設(shè)備。USB設(shè)計的初速率是針對桌面計算機(jī)而不是應(yīng)用于可移動的環(huán)境下的。軟件系統(tǒng)通過對各種主機(jī)控制器提供支持以保證將完成USB的擴(kuò)充。USB的4個層次·USB物理設(shè)備(USB physical device):USB上的一種硬件,可運(yùn)行一些

6、用戶程序。·客戶軟件(dent software):為一個特定的USB設(shè)備而在主機(jī)上運(yùn)行的軟件。這種軟件由USB設(shè)備的提供者提供或由操作系統(tǒng)提供。·USB系統(tǒng)軟件(USB system software):此軟件用于在特定的操作系統(tǒng)中支持USB,它由操作系統(tǒng)提供。與具體的USB設(shè)備無關(guān),也獨(dú)立于客戶軟件。·USB主機(jī)控制器(USB host controvert):總線在主機(jī)方面的總和。用于支持USB設(shè)備通過USB連接到主機(jī)上。一臺主機(jī)與一個USB設(shè)備間的連接是由許多層上的連接組成的。USB總線接口層提供了在主機(jī)和設(shè)備之間的物理連接,發(fā)送連接,數(shù)據(jù)包連接。USB設(shè)

7、備層對USB系統(tǒng)軟件是可見的,系統(tǒng)軟件基于它所見的設(shè)備層 完成對設(shè)備的一般的USB操作。應(yīng)用層可以通過與之相配合的客戶軟件向主機(jī)提供一些額外的功能。USB設(shè)備層和應(yīng)用層的通信是邏輯上的,對應(yīng)于這些邏輯通信的實際物理通信由USB總線接口層速完成。2.3便攜式MP3播放器的擴(kuò)展功能播放數(shù)字音樂的同時,消費(fèi)者還希望能夠有多種功能,比如用于實時記錄語音信號等,一些廠商在他們的MP3中又加入了使用G.726標(biāo)準(zhǔn)的ADPCM語音編碼算法,實現(xiàn)MP3的實時語音錄音功能,由于該算法的編碼速率為32Kbps,因而可以在32Mbytes的Flash中連續(xù)錄音2個小時左右,能夠滿足一般記錄語音的質(zhì)量要求。許多MP3

8、還具有日歷、秒表甚至萬年歷等輔助功能。此外,市面上還出現(xiàn)了嵌入MP3播放器功能的各種形式的電子產(chǎn)品,如能夠播放MP3的手機(jī),PDA,車載音響和數(shù)字相機(jī)等。2 便攜式MP3播放器的方案分析本章分兩大部分MP3播放器的硬件解決方案和MP3播放器的軟件解決方案4。硬件方面包括:基于分離芯片的MP3播放器方案、基于集成MP3功能單片機(jī)的MP3播放器方案、基于定制ASIC電路的MP3播放器方案及彩FPGA實現(xiàn)MP3播放器的方案。3.1MP3播放器的硬件解決方案從技術(shù)角度上說,MP3播放器存在多種方案,其分類方法也較多。這里僅從主要的MP3解碼芯片類型,即按MP3播放器內(nèi)部的主要芯片類型進(jìn)行分類,大體可分

9、為:·基于分離芯片的MP3播放器(存在多種方案)·基于集成MP3功能單片機(jī)(MCU)的MP3播放器·基于定制ASIC電路的MP3播放器·采用FPGA實現(xiàn)MP3播放器的方案2.1.1 基于分離芯片的MP3播放方案采用分離芯片的MP3的播放器,主要包括MP3解碼芯片、立體聲D/A轉(zhuǎn)換芯片、移動存儲設(shè)備、微控制器芯片(單片機(jī))和LCD顯示電路等,下面分別介紹這些芯片的可選方案,并簡述其技術(shù)特性。1、MP3解碼芯片早期的MP3播放器大多采用基于解碼芯片的方案,隨著MP3播放器市場的發(fā)展,幾乎所有的半導(dǎo)體公司都推出了自己的MP3解碼芯片和MP3解決方案。2、立體聲

10、D/A轉(zhuǎn)換器立體聲D/A轉(zhuǎn)換器是MP3播放器極其重要的部件。其功能是將已經(jīng)解碼的立體聲位流數(shù)據(jù)轉(zhuǎn)換為合適大小級別的模擬電壓,并通過耳機(jī)或揚(yáng)聲器進(jìn)行播放??梢哉f,人們從MP3播放器聽到的聲音質(zhì)量幾乎完全取決于該部件,因此,選擇一個高質(zhì)量的D/A轉(zhuǎn)換器是至關(guān)重要的。3、微控制器(單片機(jī))對MP3播放器而言,一個微控制器是必需的,作為播放器的控制器,它從內(nèi)存中讀入數(shù)據(jù),并將數(shù)據(jù)發(fā)送給MP3解碼器,獲取鍵盤和按鈕的輸入,處理用戶選擇,并提供給LCD控制器控制信號和數(shù)據(jù)。4、大容量的可擦除存儲器對于便攜式MP3播放器,大容量的可擦除存儲器是其必備的,同時該設(shè)備的類型,質(zhì)量和容量大小,直接決定了MP3播放

11、器的價格,當(dāng)前MP3播放器都具有大容量的可擦除存儲器,而且其容量有越來越大之趨勢。5、液晶顯示面板為了實現(xiàn)良好的交互操作,MP3基本上都提供了一個液晶顯示面板LCD,主流的MP3通常都采用字符型LCD。2.1.2 基于集成MP3功能單片機(jī)的MP3播放方案當(dāng)前市場比較流行的是基于集成MP3功能單片機(jī)的MP3播放器,該方案僅需少量的外圍器件就可以構(gòu)成MCU單芯片的MP3播放器,這些芯片提供豐富的接口功能。2.1.3 基于定制ASIC電路的MP3播放器方案MP3播放器有一塊定制的ASIC電路,它比通常MCU的功能要強(qiáng)大,且速度也快。由于該設(shè)計的ASIC具有并口和USB口可復(fù)用通信的特性,因而使用不同

12、連接電纜和適配器,就能夠?qū)崿F(xiàn)與PC機(jī)不同的通信方式,對于PC僅有并口的用戶和具有USB口的用戶均能使用該款機(jī)器。使用PC并口通信時,最高可達(dá)300KB/s的通信頻率;使用USB通信時,最高可達(dá)400500KB/s的通信頻率。2.1.4 采用FPGA實現(xiàn)MP3播放器的方案Xilinx公司采用了具有現(xiàn)場可編程門陣列(FPGA)的MP3,實現(xiàn)具有先進(jìn)用戶接口特性的MP3播放器。其中,F(xiàn)PGA器件主要用于實現(xiàn)存儲器與輸入/輸出器件的管理和接口功能。2.1.5 各個方案的比較基于分離芯片的MP3播放器成本大,現(xiàn)在已經(jīng)逐漸淘汰?,F(xiàn)在大部分采用的是基于集成MP3功能單片機(jī)的MP3播放方案?;诙ㄖ艫SIC電

13、路的MP3播放器方案的顯著特點(diǎn)是電路集成度高,可降低成本,擴(kuò)展功能,增強(qiáng)競爭力,但不普及。采用FPGA實現(xiàn)MP3播放器的方案比較完美,但難度大我沒有采用。基于以上分析,又由于本人能力和時間所限,本文采用基于集成MP3功能單片機(jī)進(jìn)行MP3的研究和設(shè)計。4基于AT89C51SND1的MP3播放器設(shè)計開發(fā)AT89C51SND1C單片機(jī)是ATMEL公司的系列單片機(jī)之一,本章將以該芯片為核心來開發(fā)MP3播放器。4. 1 系統(tǒng)分析本系統(tǒng)主要實現(xiàn)一個MP3播放器的功能,由于涉及文件傳輸和存儲問題,所以附帶需要實現(xiàn)USB存儲器的功能。整個系統(tǒng)由AT89C51SND1C(MCU)、K9F2808U0A(Flas

14、h芯片),電源部分、音頻部分、串行通信部分和人機(jī)接口部分組成。·MCU部分:控制整個系統(tǒng),提供USB控制和MP3解碼功能;·Flash芯片:存放系統(tǒng)文件;·電源部分:提供系統(tǒng)工作所需要的電源,包括1個升壓和1個降壓部分;·音頻部分:把數(shù)據(jù)流轉(zhuǎn)化為聲音信號;·人機(jī)接口部分:包括按鍵和LED指示等等為了方便調(diào)試,系統(tǒng)中還提供了串行通信部分,在這個部分中主要詳細(xì)介紹電源、音頻部分。·電源部分:整個開發(fā)板上所有芯片統(tǒng)一采用3.3伏供電,對開發(fā)板的供電采取2種形式:USB供電和7號電池供電。USB供電模式:USB供電參數(shù)如下:USB接口提供5V

15、電壓和200mA電流,Imax=500mA;PC機(jī)為500mA;筆記本電腦為100mA。由于AT89C51SND1所需要的電壓為3V(±10%),25mA,所以能夠滿足需要。把5V電壓轉(zhuǎn)為成3.3V電壓方案有兩種:電位器分壓和DC-DC芯片。在ATMEL提供的開發(fā)板中采用的是第一種方案,為了保證輸出電壓的穩(wěn)定,我采取第2種方案:第2種方案備選芯片為AS1117和MAX1626/7,參數(shù)比較如表4.1所列。表4.1 降壓電源芯片比較名 稱性 能價 格AS1117IOUT=10 mA,VIN=5.0V0IOUT800 mA,4.75VIN10V1元MAX1626/715IOUT50mA,

16、3.0VIN16.5V$1.50電池供電模式:考慮到產(chǎn)品的完整性,故同時設(shè)置用7號干電池進(jìn)行供電的模式,這就需要一個1.53.3V的DC芯片,備選芯片為LM2621和MAX1642/3。參數(shù)比較如表4.2所列。本設(shè)計中選MAX856芯片。表4.2 升壓電源芯片比較名 稱性 能價 格LM26211.2至14 V Input Voltage1.24至14 V Adjustable Output VoltageUp to 1A Load Current$0.75MAX856Vout=3.3 V 0.7Vm1.65 V Iout=0.03 A$1.76結(jié)合比較,在系統(tǒng)設(shè)計中我們分別選擇芯片AS1117

17、和MAX856。·音頻部分:AT89C51SND1C的音頻輸出提供PCM和I2S2種模式,使得音頻芯片的選擇變得比較容易。綜合考慮數(shù)據(jù)精度和供電電壓等因素,選擇CS4330為音頻DAC芯片,CS4330可是兼容性標(biāo)準(zhǔn)的48kHz、44.1kHz和32kHz音頻信號,音頻信號通過串行數(shù)據(jù)口SDATA送入,左右時鐘信號LRCK控制左右聲道和描繪數(shù)據(jù)和串行時鐘系統(tǒng)的其它部分可以參照前面章節(jié)中提到的設(shè)計思想。4.2 系統(tǒng)開發(fā)系統(tǒng)開發(fā)包括硬件和軟件兩個部分,其中硬件主要是指開發(fā)電路板,軟件部分主要包括軟件模塊分析,解碼和音頻的分析。 硬件設(shè)計整個系統(tǒng)劃分成幾個部分:電源部分、控制器部分、存儲器

18、部分、音頻部分、人機(jī)接口和RS232通信部分。電路圖見附錄A。·電源部分:整個系統(tǒng)采用3V電源供電,系統(tǒng)電源可以取自USB接口,也可來自干電池,所以系統(tǒng)電源由兩個部分組成,一個部分提供從USB接口的5到3V的DC-DC降壓轉(zhuǎn)化;另外一個部分提供從1.5V干電池到3V的DC-DC升壓轉(zhuǎn)化。圖4.1是利用AS1117進(jìn)行電壓轉(zhuǎn)換的電路圖。如圖4.1所示,從USB接口出來的5V電源通過AS1117芯片被轉(zhuǎn)化為3V電源,給整個系統(tǒng)供電。圖4.1 利用AS117進(jìn)行電壓轉(zhuǎn)化XX-1117芯片(其中XX是公司給產(chǎn)品的系列名字,如AS-1117、LM1117等,其大體功能相同,只是在具體參數(shù)上有細(xì)

19、微的差別)有多種不同的封裝形式,重要的是有不同的電壓輸出型號,在本系統(tǒng)中一定要選擇XX-1117芯片輸出電壓是3V的芯片,否則調(diào)試起來很麻煩。圖4.2是利用MAX856進(jìn)行升壓的電路圖,通過MAX856把干電池的1.5V電壓轉(zhuǎn)化為供系統(tǒng)使用的3V電壓。整個電路中比較重要的是二極管1N5817,總的說來,按照圖4.2連接之后,在輸入端加上1.5V電壓,就可以在輸出端上得到需要的電壓,相當(dāng)方便。圖4.2 MAX856外圍電路·控制器部分:控制器是整個系統(tǒng)的核心部分,其電路圖如圖4.3所示。需要注意的是,由于在系統(tǒng)中有MP3和USB傳輸?shù)认鄬碚f是高頻的信號,為了避免噪聲對系統(tǒng)的影響,尤其

20、是對音頻輸出信號的影響,所以在AT89C51SND1C的正負(fù)電源之間需要加上一個RC濾波電路以消除電路中的噪聲,而且對于AVDD和UVDD兩個模擬電壓和數(shù)字電源而言,兩者需要在數(shù)字地和模擬地處單點(diǎn)通過一個磁珠相連接,以避免數(shù)字電源和模擬電源之間的影響,在系統(tǒng)中A3V是模擬電源,3V是數(shù)字電源。圖4.3 控制芯片AT89C51SND1C·音頻部分:音頻部分是整個系統(tǒng)中最為重要的一個部分,在把數(shù)字信號轉(zhuǎn)化為模擬信號的過程中,容易產(chǎn)生噪聲,這個關(guān)系到MP3播放器的聲音效果的好壞。本系統(tǒng)選擇的是CS4330芯片,其外圍電路連接如圖4.4所示。CS4330能夠兼容48kHz、44.1kHz和3

21、2kHz的音流頻。聲音數(shù)據(jù)通過串行輸入引腳SDATA輸入。左右輸入時鐘LRCK決定了左右聲道,而在串行輸入時鐘SCLK的驅(qū)動下數(shù)據(jù)被送入CS4330的數(shù)據(jù)緩存中,而主時鐘決定了數(shù)據(jù)濾波器的使用。圖4.4 CS4330的外圍電路(a)圖4.4 CS4330的外圍電路(b)1、主時鐘Master Clock(MCLK)主時鐘MCLK必須是采樣時鐘的256、384或者512倍,采樣時鐘和LRCK的頻率相等,而MCLK對LRCK的頻率可以自動的檢測和初始化。CS4330內(nèi)部的分頻器在初始化的時候自動把時鐘信號轉(zhuǎn)化為需要的時鐘信號。2、串行時鐘Serial Clock(SCLK)串行時鐘驅(qū)動了數(shù)據(jù)的輸入

22、,CS4330支持內(nèi)部和外部的串行時鐘模式。3、初始化和掉電模式CS4330進(jìn)入掉電模式?jīng)Q定于初始化上電。內(nèi)部分類濾波器和delta-sigma調(diào)制器重置,內(nèi)部的電壓參考,一位數(shù)字-模擬轉(zhuǎn)化器選擇電容低通濾波器并且掉電。一直到MCLK和LRCK提供,CS4330都會保持在掉電模式。當(dāng)檢測到MCLK和LRCK后,MCLK將計算一個LRCK時鐘周期來決定MCLK/LRCK的頻率。隨即根據(jù)供給內(nèi)部的電壓參考,決定是5V或者3V電壓模式。最后,電壓提供給D/A轉(zhuǎn)化器和選擇電容濾波器,模擬輸入也會變化為大約2.3V(1.3V在3V模式下)。這個過程需要大約1ms,1024個LRCK時鐘周期。在一個LRC

23、K時鐘周期下,如果MCLK或者CRCK都沒有,CS4330進(jìn)入掉電模式。當(dāng)MCLK和LRCK恢復(fù)后初始化順序馬上進(jìn)行。如果MCLK/LRCK頻率或者電壓在掉電模式下發(fā)生了改變,CS4330將進(jìn)行相應(yīng)的改變。在有時鐘輸入的時候,CS4330最好不要進(jìn)行上電操作。4、供電模式CS4330名義上的供電可以是5V或者3V?!癝MART類似電路”在進(jìn)入初始化的時候或者跳出掉點(diǎn)模式的時候?qū)⒆詣拥倪x擇電壓。當(dāng)VA+引腳上輸入電壓為4.755.5V時候,輸出電壓是3.7V;當(dāng)VA+引腳上輸入電壓為2.74.0V時,輸出電壓為1.85V。在4.04.75V的時候,輸出電壓將是3.7V,但是這種情況必須要盡量避免

24、,因為這種情況將帶來極大的功耗損失。同樣的,CS4330也需要加上濾波電路,而且這個電路離CS4330越近越好。CS4330的模擬濾波器是一個開關(guān)電容濾波器,而且該濾波器的頻率決定于時鐘頻率以及采樣頻率。(1)人機(jī)接口部分人機(jī)接口部分主要是提供一個人和系統(tǒng)進(jìn)行信息交換的接口,包括鍵盤輸入、LED顯示以及串行接口3個部分。鍵盤輸入提供給用戶選擇功能的能力、LED顯示系統(tǒng)現(xiàn)在的工作狀態(tài),如前面章節(jié)中提到,串行接口可以方便開發(fā)過程中的調(diào)試,通過串行調(diào)試助手等工具,把系統(tǒng)運(yùn)行情況反饋到PC機(jī)的屏幕。鍵盤輸入、數(shù)碼管、撥碼以及LED的顯示電路圖如圖4.5,圖4.6和圖4.7。以下給出各個人機(jī)接口的功能定

25、義。圖4.5 鍵盤輸入電路圖4.6 數(shù)碼管顯示電路 圖4.7 LED顯示和撥碼開關(guān)撥碼開關(guān)1(供電選擇):用于控制由USB接口還是由干電池給系統(tǒng)供電,當(dāng)撥碼位于左邊時候,由USB接口供電,USB電纜給系統(tǒng)提供5V電壓,電壓通過AS1117轉(zhuǎn)化為3V供給芯片;當(dāng)撥碼位于右邊的時候,由7號干電池通過MAX856升壓后給芯片供電,串口不可用。(這個控制開關(guān)的設(shè)置是為了方便調(diào)試,否則可以把這個控制開關(guān)和撥碼開關(guān)合二為一)。撥碼開關(guān)2(系統(tǒng)功能選擇):用于控制系統(tǒng)是執(zhí)行U盤功能還是MP3功能,這兩者的初始化狀態(tài)不同。當(dāng)撥碼位于左邊時,執(zhí)行U盤功能,系統(tǒng)上電之后處于U盤初始化狀態(tài);當(dāng)撥碼位于右邊時候,執(zhí)行

26、MP3功能,系統(tǒng)上電之后處于MP3初始化狀態(tài)。撥碼開關(guān)3(系統(tǒng)上電):由于開始給系統(tǒng)供電,當(dāng)撥碼位于左邊時候,系統(tǒng)上電,控制器根據(jù)系統(tǒng)能夠選擇的不同位于不同的初始化狀態(tài),對應(yīng)的指示燈2/3亮/滅;當(dāng)撥碼位于右邊時候,系統(tǒng)斷電,關(guān)閉。撥碼開關(guān)4(ISP選擇):當(dāng)撥碼位于左邊時候,AT89C51SND1的ISP引腳為低電平,允許進(jìn)行ISP編程,否則接到高電平,不允許進(jìn)行ISP編程。指示燈1(供電指示燈1):當(dāng)53V供電正常時,供電指示燈1亮。指示燈2(供電指示燈2):當(dāng)1.53V供電正常時候,供電指示燈2亮。指示燈3(U盤指示燈):當(dāng)執(zhí)行U盤功能時,無數(shù)據(jù)傳輸時燈亮,有數(shù)據(jù)傳輸時閃爍。指示燈4(M

27、P3指示燈):當(dāng)執(zhí)行MP3功能時候,等待播放的時候該燈亮,播放時候該燈閃爍。按鍵1(系統(tǒng)復(fù)位鍵):按該銨鈕幾秒鐘,整個系統(tǒng)回到系統(tǒng)上電時候的狀態(tài)。按鍵2(MP3歌曲選擇鍵):每按一次,歌曲序號自動向上加1,馬上從該首進(jìn)行播放,當(dāng)?shù)阶詈笠皇讜r候從第一首開始計數(shù)。按鍵3(MP3聲音控制鍵):每按一次,聲音級別自動向上加1,當(dāng)達(dá)到31級時候從0級開始重新播放。按鍵4(MP3開始鍵):當(dāng)處于MP3系統(tǒng)初始化狀態(tài)時候,按一下開始播放歌曲,指示燈3開始閃爍;如果沒有歌曲可供播放,則沒有作用。數(shù)碼管:在U盤模式下顯示U字樣;在MP3模式下顯示現(xiàn)在播放的是第幾首歌曲。U盤初始化狀態(tài):上電后,當(dāng)系統(tǒng)功能撥碼開關(guān)

28、位于左邊時,數(shù)碼管顯示U字,等待和PC進(jìn)行數(shù)據(jù)變換。MP3初始化狀態(tài):上電后,當(dāng)系統(tǒng)功能撥碼開關(guān)位于右邊時,數(shù)碼管顯示整個MP3存儲器中一共有幾首歌曲可供播放,聲音級別位于第10級。(2)Flash存儲芯片MP3系統(tǒng)仍然選擇了前面USB實驗系統(tǒng)中使用的Flash芯片K9F2808U0A,F(xiàn)lash芯片的電路,如圖4.8所示。圖4.8 Flash芯片電路圖4.2.2 軟件系統(tǒng)設(shè)計1、軟件模塊分析MP3播放系統(tǒng)中的軟件設(shè)計按照模塊可以劃分為以下幾個部分:Flash存儲模塊、USB通信驅(qū)動模塊、MP3解碼控制模塊、音頻解碼接口模塊。2 、Flash存儲部分對Flash的讀/寫操作的相關(guān)知識在本小節(jié)中

29、僅僅對FAT文件系統(tǒng)進(jìn)行詳細(xì)地介紹。一個FAT(FAT12/FAT16/FAT32)文件系統(tǒng)卷(卷可以理解為是一張軟盤、一個硬盤或是一個Flash電子盤)由4個部分組成:保留區(qū)(reserved region),F(xiàn)AT區(qū),根目錄區(qū)(root directory region)和文件和目錄數(shù)據(jù)區(qū)。FAT分配空間的時候,是按簇來分配的,但是其給出的地址卻是LBA(Logical Block Address),即它只給出一個扇區(qū)號,比如對此Flash而言,若給出LBA為0x40,代表簇1的扇區(qū)1。因此需要將Logical Block Address轉(zhuǎn)換為物理地址,這樣,才可以對數(shù)據(jù)進(jìn)行存取操作。根據(jù)

30、我們定義的結(jié)構(gòu),轉(zhuǎn)換公式為:Flash的Block=Logical Block Address/0x20Flash的Page=Logical Block Address/0x20因此簇和扇區(qū)的概念只是在BPB中給出存儲介質(zhì)信息的時候告之系統(tǒng)就可以了,我們只要做好LBA與物理地址間的轉(zhuǎn)換即可。由于作為U盤的Flash不要求啟動,因此可以沒有MBR區(qū),只包含DBR、FAT、DIR和DATA4個區(qū)。當(dāng)Host發(fā)出READ命令后,F(xiàn)lash讀/寫操作即告開始,Host首先讀取MBR,得到有關(guān)存儲介質(zhì)的信息,諸如扇區(qū)長度、每簇扇區(qū)數(shù)以及總扇區(qū)數(shù)等內(nèi)容,以便知道此盤有多大。如果讀取正確,會接著讀取文件分配

31、表,借以在PC機(jī)上的可移動盤符中顯示文件目錄,并可以復(fù)制、刪除或是創(chuàng)建文件。系統(tǒng)自動將這些命令都轉(zhuǎn)換成READ或WRITE兩種命令,通過USB的READ或WRITE命令塊描述符來從Flash中相應(yīng)扇區(qū)讀取數(shù)據(jù),或是將特定長度的數(shù)據(jù)寫入Flash相應(yīng)簇中。3、MP3解碼部分AT89C51SND1C提供一個MPEG I/II的解碼器,而不僅僅是一個MP3解碼器。MPEG I標(biāo)準(zhǔn)僅僅支持48Hz、44.1Hz以及32Hz的采樣頻率。在這些層中,第三層壓縮率能夠在保持CD音質(zhì)的前提下達(dá)到以12:1的壓縮比率。舉一個例子,3分鐘的CD音頻(16位PCM編碼,44.1Hz)數(shù)據(jù)需要的存儲容量大概是32MB

32、,而對應(yīng)的壓縮MPEG I第三層壓縮率的數(shù)據(jù)僅僅需要2.7M的空間。在MPEG II中提供了另外三種采樣頻率24kHz、22.05kHz以及15kHz。AT89C51SND1C能夠?qū)崟r解碼MPEG I第三層音頻流到PCM音頻流,同時也支持MEPG II中提出的附加頻率。AT89C51SND1C同時還提供類似于聲音控制、重音控制等附加功能。MSC-51核和MP3的解碼器接口是通過11個特殊功能寄存器來實現(xiàn)的。這11個寄存器如下:(1)MP3控制寄存器MP3CON(the MP3 Control register)。(2)MP3解碼狀態(tài)寄存器MP3STA(MP3 Decoder Status Re

33、gister)。(3)MP3數(shù)據(jù)寄存器MP3DAT(MP3 Data Register)。(4)MP3狀態(tài)寄存器1 MP3STA1(MP3 State Resigter1)。(5)MP3附加數(shù)據(jù)寄存器MP3ANC(MP3 Ancillary Data Register)。(6)MP3左聲道控制寄存器MP3VOL(MP3 Volume Left Control Register)。(7)MP3右聲道控制寄存器MP3VOR(MP3 Volume Right Control Register)。(8)MP3重音控制寄存器MP3BAS(MP3Volume Bass Control Register)。

34、(9)MP3中音控制寄存器MP3MED(MP3Volume Medium Control Register)。(10)MP3高音控制寄存器MP3TRE(MP3Volume Treble Control Register)。(11)MP3時鐘寄存器MP3CLK(MP3 Clock Divider Register)。MP3解碼器要在一個完整的數(shù)據(jù)幀到達(dá)輸入緩存中之后才開始解碼操作。為了管理MP3數(shù)據(jù)幀在緩存中的負(fù)擔(dān),使用一個硬件的握手協(xié)議來管理數(shù)據(jù)的需求和確認(rèn)。每當(dāng)MP3解碼器需要MP3數(shù)據(jù)時候,其設(shè)置MP3STA和MP3STA1寄存器中相應(yīng)的MPREQ、MPFREQ和MPBREQ標(biāo)志位。MP3

35、的解碼時鐘由鎖相環(huán)的時鐘分頻率產(chǎn)生,這個分頻參數(shù)可以由MP3CLK寄存器重的MPCD4:0位決定,而解碼時鐘由MP3的數(shù)據(jù)幀所決定。當(dāng)對MP3數(shù)據(jù)幀頭進(jìn)行解碼之后就可以得到MP3的版本號,在MPEG I中,最小的MP3時鐘為21MHz,而在MPEG II中為10.5MHz。MP3解碼器提供了對左右聲道的控制,MP3VOR和MP3VOL寄存器提供了一個32級別的音量控制。該解碼器也可以調(diào)節(jié)聲音的高音(3300kHz以上)、中音(7503300kHz)、低音(低于750kHz),同樣有32級別調(diào)節(jié)。在AT89C51SND1C中斷之后,根據(jù)中斷的不同,硬件將進(jìn)入中斷并且把對應(yīng)的數(shù)據(jù)位置位,在程序編寫

36、過程中可以從不同的中斷入口進(jìn)入相應(yīng)的中斷服務(wù)子程序,圖4.9是對應(yīng)的MP3解碼器服務(wù)流程,整個MP3解碼程序的書寫可以參照這個流程。 讀MP3STA寄存器數(shù)據(jù)要求?MPFREQ=1?附加數(shù)據(jù)?MPANC=1?同步錯誤?ERRSYN=1?層錯誤?ERRLAY=1?CRC錯誤處理再次讀入MP3幀數(shù)據(jù)要求處理寫數(shù)據(jù)到MP3DAT附加數(shù)據(jù)處理寫入附加數(shù)據(jù)同步錯誤處理重寫數(shù)據(jù)到MP3DAT層錯誤處理YNNYNYNY圖4.9 MP3解碼流程4.3 MP3播放器的主要程序代碼分析以下將要介紹關(guān)于MP3解碼部分的部分代碼。4.3.1 MP3解碼部分MP3解碼部分中有以下函數(shù):·MP3_Reg_Ini

37、t(),MP3寄存器初始化函數(shù),對MP3的各個寄存器進(jìn)行初始化,主要是MP3CON寄存器中間的中斷控制位的設(shè)置。·MP3_Data_Input(),把數(shù)據(jù)送入到MP3解碼緩存中去,需要送入1024字節(jié),當(dāng)緩存中需要數(shù)據(jù)的時候,位于MP3STA寄存器中的MPREQ被置位,在對MP3STA進(jìn)行讀操作之后被清除。如果緩存沒有滿,那么MPFREQ位一直被置位,并且MPBREQ位也被置位,不同的是當(dāng)緩存被裝滿時候MPFREQ才復(fù)位,而MPBREQ是每次寫入一字節(jié)數(shù)據(jù)之后就會復(fù)位一次。本函數(shù)通過查詢MPREQ、MPFREQ和MPBREQ的狀態(tài)來決定是否給緩存中送入數(shù)據(jù)。·MP3_Err

38、or_Del(),這是一個錯誤處理函數(shù),當(dāng)出現(xiàn)層錯誤、同步錯誤和CRC校驗錯誤中任意一種的時候,這個時候需要重新往緩存中裝載數(shù)據(jù)。·MP3_Clk_Contr(),這是MP3解碼器的時鐘控制函數(shù),根據(jù)MPVER和MPFS1:0的獲取MPEG的標(biāo)準(zhǔn)類型和采樣率,然后根據(jù)標(biāo)準(zhǔn)類型和采樣率對解碼是時鐘進(jìn)行設(shè)置。·MP3_Audio_Contr(),根據(jù)人機(jī)接口提供的相應(yīng)數(shù)據(jù)對MP3解碼器中的音量、聲道和音效進(jìn)行控制。·MP3_AncData_Contr(),對MP3文件中的附加數(shù)據(jù)進(jìn)行處理,在本系統(tǒng)中無處理。·MP3_Int_Del(),這是中斷處理函數(shù),在進(jìn)

39、入處理過程后再根據(jù)相應(yīng)位的狀態(tài)來判斷引起中斷的原因,進(jìn)行相應(yīng)的處理。部分解碼程序見附錄B。4.3.2音頻控制部分在音頻處理部分中有以下函數(shù):Audio_Reg_ Init():這是MP3音頻部分的初始化函數(shù),用于初始化音頻控制器的寄存器控制信號;Audio_ Clk_Set():用于設(shè)置音頻部分的時鐘信號,在下面的例子中假設(shè)外部提供的PLL時鐘是24M;Audio_ Data_ Input():根據(jù)外部的啟動信號來控制對數(shù)據(jù)的獲取和音頻信號的輸出。提示:AT89C51SND1C音頻部分的數(shù)據(jù)可以來源于C51核和MP3解碼部分,本小節(jié)僅僅給出了對MP3部分的控制。 圖4.10給出了音頻系統(tǒng)工作流

40、程圖,程序的編寫可以參照這個流程MP3模式配置編程音頻時鐘配置接口HLR=XDSIZ=XPOL=X SRC=0JUST4:0= XXXXXb啟動DAC時鐘AUDEN=1等待DAC設(shè)置等待數(shù)據(jù)DRQEN=1圖4.10 音頻配置流程結(jié) 論由于MP3的普及,MP3受到越來越多的重視。同時由于MP3技術(shù)的復(fù)雜性,使得MP3播放器的實現(xiàn)更加困難,更具挑戰(zhàn)性。本文討論便攜式MP3播放器的結(jié)構(gòu)、多種存儲器類型、各種通信接口及其擴(kuò)展功能。通過對各類便攜式MP3播放器的方案進(jìn)行了總結(jié)和分析,以基于AT89C51SND1芯片的MP3播放器為例,實現(xiàn)一個MP3播放器的功能。本文主要成果和結(jié)論如下:以MP3播放器的原

41、理及其系統(tǒng)構(gòu)成為基礎(chǔ),對各種便攜式MP3播放器的方案進(jìn)行了總結(jié)和分析,包括:1、分離芯片的MP3播放器方案、基于集成MP3功能單片機(jī)的MP3播放器方案、基于定制ASIC電路的MP3播放器方案及以FPGA實現(xiàn)MP3播放器的方案。然后介紹MP3播放器的軟件解決方案。2、以基于AT89C51SND1芯片的MP3播放器為例,實現(xiàn)一個MP3播放器的功能。整個系統(tǒng)由AT89C51SND1C(MCU)、K9F2808U0A(Flash芯片),電源部分、音頻部分、串行通信部分和人機(jī)接口部分組成并給出了解碼和音頻控制部分的參考程序。由于本人能力和時間的限制,我只是對MP3播放器的硬件方面做了一些初步的研究。其中

42、不足之出希望各位老師諒解。我以后還要在MP3播放器方面進(jìn)行進(jìn)一步的研究。致 謝經(jīng)過三個多月的努力,我終于順利地完成了畢業(yè)設(shè)計。在我論文寫作期間的工作自始自終都是在指導(dǎo)老師張慶思全面、具體地指導(dǎo)下進(jìn)行的,大到文章的選題謀篇、布局結(jié)構(gòu),小到文章的詞語搭配、標(biāo)點(diǎn)符號。張慶思老師多次以民主的方式引導(dǎo)學(xué)生以自己的視角發(fā)現(xiàn)問題、分析問題、解決問題,使自己體會到畢業(yè)論文不僅是對大學(xué)所學(xué)知識的再學(xué)習(xí)、再檢驗、再提高的過程,更是一次將所學(xué)運(yùn)用到實踐將其升華的過程。導(dǎo)師在學(xué)術(shù)上孜孜不倦、嚴(yán)謹(jǐn)求實,在我的學(xué)習(xí)過程中,這種精神時刻影響和激勵著我。老師淵博的學(xué)識、敏銳的思維、民主而嚴(yán)謹(jǐn)?shù)淖黠L(fēng)使學(xué)生受益匪淺,并終身難忘。在此表示衷心的感謝!導(dǎo)師給予我的不僅僅有知識上、學(xué)術(shù)上的幫助,更有方法上、思想上的,這些將使我受益終生。再一次感謝我的導(dǎo)師張慶思老師!同時非常感謝在完成畢業(yè)設(shè)計期間給予我各方面支持與幫助的其他老師。非常感謝我的學(xué)友和朋友們的支持與鼓勵!參考文獻(xiàn)1 李軍51系列單片機(jī)高級開發(fā)指南M北京:北京航空航天大學(xué)出版社,2004,287-3042 楊心懷,周潔便攜MP3播放器的設(shè)計J電子技術(shù)的應(yīng)用,2003(2):55-57.3 李華主編MCS-51系列單片機(jī)實用接口技術(shù)M北

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論