新聞中心

        EEPW首頁 > 消費電子 > 設計應用 > 帶SD/MMC存儲卡接口的MP3和弦芯片ft1780

        帶SD/MMC存儲卡接口的MP3和弦芯片ft1780

        作者: 時間:2006-09-27 來源:網絡 收藏

        隨著手機的興起,用戶不僅對手機音樂的音量、音質要求越來越高,而且對手機的存儲容量的要求也越來越大,總希望能多存些歌,可以省去頻繁換歌的煩惱。但目前一般手機自帶的內存遠遠不能滿足這些要求,而且很多手機平臺也無法支持外接,為了解決這一問題,就需要有配套的存儲管理

        方泰電子的可以幫手機設計工程師很好的解決這個難題。它不僅可以提供專業的音樂,而且集成了,由于內置文件管理系統,可以方便地升級原有的手機產品,使之具有可更換外接的功能。本文介紹了音頻處理的功能特點,并詳細敘述了其在手機上的應用實例。

        內部結構和特點

        圖1是ft1780芯片的內部框圖,從中可以看出,ft1780主要由7部分組成。

        圖1:ft1780芯片內部框圖。

        1. 主機:與Baseband相連,Baseband通過它向ft1780發命令和讀取狀態;

        2. 音頻/系統引擎:芯片的核心部分,完成64MIDI合成,解碼,七段數字均衡器,文件系統管理,系統控制等功能;

        3. 卡控制器:完成SD/MMC卡功能;

        4. 輸入/輸出控制器:完成I2S接口,四路LED控制,馬達和背光控制等功能;

        5. 電源管理系統:可以關掉不用的功能模塊,節省系統功耗;

        6. 立體聲耳機功放:可以直接驅動16ohm的耳機,輸出功率可達到20mW以上;

        7. 喇叭功放:可以直接驅動8ohm喇叭,輸出功率可達到500mW以上;

        ft1780芯片采用6mmx7mm 48Pin的BGA封裝,與其它普通MP3解碼芯片相比,它有以下幾個主要特色:

        1. 工作電流小,具有高效的省電設計電路,芯片內各模塊可以單獨控制開和關,可滿足手機上不同的工作模式要求;

        2. 支持全系列采樣率和編碼率的MP3數據,包括MPEG Version1 Layer3,MPEG Version2 Layer3和MPEG Version2.5 Layer3標準,采樣率范圍是8~48kHz,編碼率是8~320kbps,解碼品質高,聲音音質好;

        3. 支持64的鈴聲,支持自有的人聲音效格式(FTF格式),同時支持自然音和背景音的播放;

        4. 內置SD/MMC卡的文件管理系統程序,不需要手機的基帶來解析SD/MMC卡上的文件系統,基帶只要發簡單的命令就可以控制ft1780的播放功能,SD/MMC卡的數據可以不經過基帶,由ft1780芯片自己讀取和播放,這樣可以大大減輕基帶的負擔,也因此拓寬了ft1780的應用面。

        5. 內置高品質立體聲耳機功率放大電路,輸出功率大,并具有無耦合電容設計的耳機輸出電路。普通的耳機輸出需要兩個較大的隔直電容,若電容容量太小,會使低頻響應變差,聲音低頻失真。而無耦合電容設計可以節省成本,節省手機電路板寶貴的空間,增加耳機輸出的保真度。

        6. 內置喇叭功率放大電路,在8ohm喇叭上可以輸出500mW以上的功率。

        圖2:典型應用示意圖。

        ft1780芯片的曲型應用

        ft1780的應用電路比較簡單,所需的外圍器件很少,只需要十幾個電阻和電容,典型應用線路如2所示。通過調整R1和R3的比值可以調節ft1780內部輸出到喇叭的增益,通過調整C1和C3可以調節喇叭輸出聲音的高頻和低頻特性,對于圖中所列參數,R1=33k歐姆,C1=330pF,R3=33k歐姆,C3=0.1uF,增Gain=R1/R3=1,高頻截止頻率為FH=1/(2*π*R1*C1)=14.6kHz,低頻截止頻率為FL=1/(2*π*R3*C3)=48.2Hz。從Audio In進來的音頻信號可以通過控制從喇叭或耳機出來,并且可以根據需要通過R2和C2調節它的低頻響應曲線。圖中,耳機的輸出已用了無耦合電容設計,所以圖上沒有輸出耦合電容,但要注意的是,耳機的公共端不是通常的“地”,需是芯片上的虛擬地腳“HPR”。另外芯片的VDDA腳可以直接與電池的正級相接,在不需芯片工作時,可以用軟件來控制芯片進入"Power Down"狀態,這時芯片的耗電只有幾微安。

        相關軟件和播放流程

        ft1780芯片的工作需要相應的驅動程序支持。驅動程序采用模塊化結構,各功能都有相應的程序,在Design In過程中,只要修改硬件相關的地址參數,加入中斷服務程序(也可以使用定時器相關的查詢模式),然后調用相應的API就可以正常工作(發出聲音)了。圖3是軟件模塊示意圖,下面簡單介紹一下各模塊的功能:

        圖3:軟件模塊示意圖。

        1. 硬件平臺相關模塊:需要根據手機平臺的情況修改相應的參數,主要有芯片寄存器的操作地址,輸入時鐘的頻率等;

        2. MIDI模塊:MIDI數據解析和處理,MIDI播放控制和回調控制;

        3. ADPCM模塊:ADPCM數據解析和處理,ADPCM播放控制和回調控制;

        4. FTF模塊:FTF數據解析和處理,FTF播放控制和回調控制;

        5. SD/MMC模塊:SD/MMC命令解析和處理,SD/MMC播放控制和回調控制;

        6. MP3模塊:MP3數據解析和處理,MP3播放控制和回調控制;

        7. 中斷服務模塊:對芯片的各個中斷事件作相應的處理,主要補充數據,播放結束控制和出錯信息處理等;

        8. 驅動程序API模塊:提供用戶所需的所用功能的調用,用戶不必關心具體底層模塊的細節,只需與上層API打交道;

        9. 用戶參考模塊:如何使用API控制播放的一個例子,也可以作為API的進一步包裝,供用戶直接使用。

        下面我們介紹一下ft1780軟件的使用方法。

        播放Baseband上文件的流程

        圖4是播放Baseband上文件的流程圖。當用戶想播放Baseband上的音頻數據時,首先是要對ft1780芯片做初始化,然后對要播放的數據做預處理,驅動程序會分析數據格式,并根據格式自動調用底層處理函數,再下一步是啟動中斷或定時器、消息等機制,這一步的目的是啟動后臺處理任務,當進入播放狀態時,需由后臺任務完成后續的處理工作,最后就是發播放開始命令,開始播放聲音,進入播放狀態。

        圖4:播放Baseband上文件的流程圖。

        在播放狀態下,ft1780芯片會根據內部運作情況發出中斷請求,Baseband必需在一定時間內處理相應事件,否則會出現聲音停頓,不連續等現象。在ft1780芯片內部有很大的FIFO(先進先出存儲器)來保存播放的數據,可以適應低端Baseband中斷反應延時比較大的問題,保證聲音播放的順暢。

        在播放過程中,Baseband隨時可以調用相應的API來停止當前的播放,或讀取播放信息,暫停/恢復等操作。

        播放SD/MMC卡上文件的流程

        圖5是播放SD/MMC卡上文件的流程圖。當用戶想播放SD/MMC卡上的聲音文件時,首先是要對ft1780芯片做初始化,然后讀出卡上的聲音文件,選擇要播放的文件,調用簡單的API播放命令后,進入播放狀態,芯片會自動讀取卡上的數據,播放出聲音,再下一步是啟動中斷或定時器、消息等機制,這一步的目的是啟動后臺處理任務,處理中斷事務。

        圖5:播放SD/MMC卡上文件的流程圖。

        雖然看上去與播放Baseband上文件的流程差不多,但主要有以下不同:當播放Baseband上文件時,Baseband必須不斷地送數據到ft1780芯片內部,中斷會比較頻繁(與所播放的文件的碼流率有關),而當播放SD/MMC卡上的文件時,ft1780芯片自己從SD/MMC卡里讀取所需數據,不需要Baseband的干預,在播放過程中基本上沒有中斷任務,只有在播放結束時會發出中斷告知Baseband,由Baseband決定下一步的工作,如重復播放、或播放下一個文件,所以對Baseband的要求更低,適應性更廣。

        在播放過程中,Baseband隨時調用相應的API函數,完成停止播放,暫停/恢復等功能。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 黑河市| 柘城县| 奇台县| 陵川县| 简阳市| 包头市| 神农架林区| 莱西市| 日喀则市| 永靖县| 搜索| 鸡泽县| 杭州市| 靖宇县| 七台河市| 长岛县| 土默特右旗| 扬州市| 江山市| 大洼县| 邮箱| 和平区| 阳江市| 密山市| 桃园县| 石阡县| 平顺县| 北碚区| 天津市| 井研县| 岫岩| 江西省| 龙门县| 西吉县| 安庆市| 缙云县| 湘潭市| 江陵县| 黄梅县| 舞钢市| 胶南市|