<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > 基于MTM809的硬盤(pán)MP3的設(shè)計(jì)

          基于MTM809的硬盤(pán)MP3的設(shè)計(jì)

          作者: 時(shí)間:2007-01-15 來(lái)源:網(wǎng)絡(luò) 收藏
          摘要:本文首先介紹了嵌入式處理器的系統(tǒng)框架及各部分功能,而后介紹的移動(dòng)播放器的原理。
          關(guān)鍵字:嵌入式;微處理器;

          一 MTM809處理器系統(tǒng)簡(jiǎn)介
          ---MTM809是一款以8051CPU為核心的嵌入式處理器。作為專(zhuān)門(mén)應(yīng)用于便攜式系統(tǒng)的MCU,它采用0.25μm CMOS工藝,內(nèi)核運(yùn)行電壓2.5V,IO輸入輸出電壓3.3V。它的在片資源豐富,內(nèi)嵌有USB2.0控制器,一個(gè)FLASH卡讀卡器控制器,ATA/ATAPI控制器及一個(gè)解碼器等外設(shè)。在各個(gè)外設(shè)之間的數(shù)據(jù)傳送由于不需要CPU的介入而使得數(shù)據(jù)的傳送效率很高。MTM809的主要特性如下:

          ---
          1.256B的內(nèi)部在片數(shù)據(jù)存儲(chǔ)器,10KB的數(shù)據(jù)SRAM,64KB的ROM和內(nèi)嵌I2C,SPI和UART/RS-232接口,2個(gè)在片ADC,RTC電路。
          ---2.與USB2.0全兼容的接口: 支持多配置和多界面的高速(480Mbps)及全速(12Mbps)數(shù)據(jù)傳送,具有一個(gè)設(shè)備地址和三個(gè)端點(diǎn)(Endpoint)。
          ---3.支持SM 卡/CF卡/SD卡/MMC卡/xD卡/MS(Pro)卡/ PC ATA卡接口和微/ATA/ATAPI設(shè)備接口。
          ---4.內(nèi)嵌具有I2S總線接口的解碼器。
          ---5.帶有LCD接口。

          二 MTM809系統(tǒng)結(jié)構(gòu)
          ---MTM809系統(tǒng)內(nèi)部框圖如圖1所示。

          ---
          下面介紹MTM809 SOC的主要組成部分:
          --
          -
          1. 微控制器(Micro-controller)
          ---微控制器以單周期DCD 8051為CPU為核心,主要特點(diǎn)有:
          ---(1) 在軟件上與工業(yè)標(biāo)準(zhǔn)的80390兼容;
          ---(2) 增強(qiáng)的單周期精簡(jiǎn)指令系統(tǒng);
          ---(3) 256B的內(nèi)部在片數(shù)據(jù)存儲(chǔ)器,10KB的數(shù)據(jù)SRAM,64KB ROM;
          ---(4) 15個(gè)中斷源兩個(gè)優(yōu)先級(jí);具有與特殊功能寄存器的界面;
          ---(5) 外設(shè)包括:內(nèi)嵌的I2C總線主控制器,SPI總線主控制器,三個(gè)16位定時(shí)/計(jì)數(shù)器,兩個(gè)UART,四個(gè)8位的GPIO端口及看門(mén)狗定時(shí)器;
          ---(6) 支持電源管理功能。

          2.開(kāi)關(guān)盒(Switch Box)
          ---MTM809內(nèi)部的開(kāi)關(guān)盒在不需要微控制器介入的情況下為各個(gè)外設(shè)之間大數(shù)據(jù)的傳送提供通道。圖1中的FLASH控制器邏輯電路、ATA控制器邏輯電路和USB控制器邏輯電路都需要DMA功能,故在這些外設(shè)中內(nèi)建有DMA。

          3.各類(lèi)存儲(chǔ)器接口(Storage Interface)
          ---FLASH 存儲(chǔ)器接口是FLASH卡與其他外設(shè)數(shù)據(jù)交換的橋梁。一方面,它能夠與每一種卡通信,另一方面,它實(shí)現(xiàn)在其他外設(shè)之間數(shù)據(jù)的交換。在FLASH 存儲(chǔ)器接口與其他外設(shè)之間是MMU(Memory Management Unit)。
          ---ATA 存儲(chǔ)器接口是硬盤(pán)UDMA、CF卡控制器與其他外設(shè)接口數(shù)據(jù)交換的橋梁。
          ---USB 接口是USB數(shù)據(jù)包管理器與其他外設(shè)接口數(shù)據(jù)交換的橋梁。

          4. 音頻邏輯電路(Audio Logic Interface)
          ---MTM809的內(nèi)部解碼器將MP3的數(shù)據(jù)流解碼為PCM采樣數(shù)據(jù),并將它們發(fā)送到音頻緩沖區(qū),最后這些數(shù)據(jù)將通過(guò)I2S總線傳送到片外的DAC。當(dāng)實(shí)現(xiàn)錄音回放或測(cè)試功能的時(shí)候,微控制器可直接將音頻采樣數(shù)據(jù)寫(xiě)入到音頻解碼接口。

          5. 液晶顯示器(LCD) 接口
          ---具有支持狀態(tài)LCD控制/驅(qū)動(dòng)器的接口,并帶有專(zhuān)用EL背光控制引腳。

          三 硬盤(pán)MP3播放器系統(tǒng)
          ---由分析可知,系統(tǒng)的主要功能是提取存儲(chǔ)在硬盤(pán)中的MP3數(shù)據(jù),將其解碼得到PCM數(shù)據(jù),再將該數(shù)據(jù)輸送到語(yǔ)音芯片,語(yǔ)音芯片數(shù)模轉(zhuǎn)換PCM數(shù)據(jù)得到模擬信號(hào)經(jīng)過(guò)放大器輸出給耳機(jī)或喇叭。同時(shí),該系統(tǒng)都可作為一個(gè)大容量移動(dòng)硬盤(pán)使用。

          ---
          因此,系統(tǒng)主要包括硬盤(pán)電路、MP3播放電路兩個(gè)部分。另外為了從計(jì)算機(jī)上拷貝MP3等數(shù)據(jù)到硬盤(pán)上,本系統(tǒng)還需要一個(gè)計(jì)算機(jī)通信的接口。

          ---
          由于MTM809內(nèi)部嵌入了MP3解碼邏輯電路,這給我們時(shí)帶來(lái)了方便。同時(shí)我們還可以選擇片內(nèi)帶有放大器的語(yǔ)音芯片使本系統(tǒng)設(shè)計(jì)更為簡(jiǎn)化。通用串行總線(Universal Serial Bus,USB)是一種快速、靈活的高速總線接口。與其他通信接口比較,USB接口的最大特點(diǎn)是易于使用,應(yīng)用范圍廣。MTM809帶有USB控制器 ,因此,選擇USB接口作為系統(tǒng)與計(jì)算機(jī)通信的接口是顯而易見(jiàn)的。

          1. USB接口設(shè)計(jì)
          ---眾所周知在進(jìn)行一個(gè)USB設(shè)備開(kāi)發(fā)之前,首先要根據(jù)具體使用要求選擇合適的USB控制器。目前,市場(chǎng)上供應(yīng)的USB控制器主要有兩種:帶USB接口的單片機(jī)(MCU)或純粹的USB接口芯片。MTM809就是一種帶USB控制器的MCU,它支持USB2.0協(xié)議,這使得MTM09在設(shè)計(jì)上非常簡(jiǎn)單。

          ---
          一個(gè)USB接口有兩根數(shù)據(jù)線(DM,DP)和電源線(VCC,GND)。MTM809的USB模塊的對(duì)外接口線分別為:DM,DP,UVDD,UVSS。設(shè)計(jì)時(shí),只要將數(shù)據(jù)線和電源線對(duì)應(yīng)連接就可以了。MTM809的USB接口設(shè)計(jì)如圖2所示。

          2. 硬盤(pán)子系統(tǒng)的設(shè)計(jì)
          ---在選擇硬盤(pán)時(shí),應(yīng)選用帶標(biāo)準(zhǔn)接口的通用硬盤(pán),并且體積小,重量輕,容量大,功耗低。

          ---
          日立(Hitachi)公司開(kāi)發(fā)的Travelstar系列硬盤(pán)專(zhuān)門(mén)為便攜式設(shè)備而設(shè)計(jì):價(jià)格低;受沖擊能力強(qiáng);體積?。╩m):100709.5(長(zhǎng)寬高,2.5 英寸時(shí));容量大:20~80GB不等;功率消耗指數(shù)低于0 .033 W/GB;接口簡(jiǎn)單:標(biāo)準(zhǔn)ATA接口。

          ---
          日立硬盤(pán)的接口引腳說(shuō)明如表1所示。

          ---
          MTM809與硬盤(pán)接口設(shè)計(jì)如圖3所示。

          ---
          圖中硬盤(pán)被設(shè)置在主工作模式下(CSEL引腳置為高電平)。為了顯示硬盤(pán)是否工作,利用引腳/DASP在硬盤(pán)工作時(shí)的電平變?yōu)榈碗娖竭@一特性設(shè)計(jì)了一個(gè)由PNP三極管和發(fā)光LED組成的狀態(tài)顯示電路。

          3. MP3播放電路設(shè)計(jì)
          ---MTM809芯片內(nèi)部集成MP3解碼電路和數(shù)據(jù)緩沖區(qū),對(duì)片外的DAC的接口采用的是I2S總線。在設(shè)計(jì)時(shí),應(yīng)該選擇具有I2S總線接口的CODEC芯片。在設(shè)計(jì)中,我們選擇CODEC芯片的型號(hào)為WM8721。它是專(zhuān)門(mén)為便攜式MP3音頻與語(yǔ)音播放器/錄音器而設(shè)計(jì)的:功耗低,語(yǔ)音播放時(shí)的信噪比可達(dá)100dB。內(nèi)部集成了雙耳式耳機(jī)驅(qū)動(dòng)器,控制界面可選擇為兩線或三線串行總線接口。

          ---
          WM8721封裝形式為28引腳SSOP時(shí),引腳的說(shuō)明如表2所示。

          ---
          MTM809與WM8721之間的設(shè)計(jì)如圖4所示。

          ---
          WM8721的工作模式被設(shè)置為從模式,其控制界面選擇為三線制MPU控制界面(MODE被置為高電平)。設(shè)計(jì)中利用MTM809的SPI總線接口(時(shí)鐘引腳EECLK, 數(shù)據(jù)輸出引腳EEDO, 片選引腳EECS1)作為WM8721的控制界面。MTM809的I2S總線引腳(ADO, ADI,AWS,ABCK,AMCK)按圖中所示的方式與WM8721的總線引腳連接,這些引腳負(fù)責(zé)與WM8721進(jìn)行通信將解碼后的MP3數(shù)據(jù)傳送到CODEC。WM8721的引腳LPOUT、RPOUT輸出的數(shù)模轉(zhuǎn)換后的音頻信號(hào),將這兩引腳直接與耳機(jī)插座的信號(hào)引腳對(duì)應(yīng)連接起來(lái)即可。

          參考文獻(xiàn)
          1 世紀(jì)民生公司. MTM809 Datasheet, 2004
          2 邊海龍等. USB2.0設(shè)備的設(shè)計(jì)與開(kāi)發(fā).北京:人民郵電出版社,2004
          3 Hitachi公司. Travelstra 4K40 Hard Disk Drives Datasheet,2004
          4 Wolfson公司. WM8721 Datasheet, 2004



          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();