• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 模擬技術 > 設計應用 > 一種基于EFSL的嵌入式MP3播放器設計方法

    一種基于EFSL的嵌入式MP3播放器設計方法

    作者: 時間:2012-11-02 來源:網絡 收藏
    -stroke-width: 0px">  2.2.4 配置EFS文件

      存放在。MP3Playerefslinc目錄下的debug.h文件支持半主機調試功能。通過相關代碼可以設置所有調試消息并通過JTAG調試器的I/O終端窗口進行顯示。通過。MP3Playerefslconf下的config.h配置文件,可以設置RAM 內存使用水平和緩沖區大小。

      2.2.5 配置系統文件

      由于文件初始化需要良好的LPC2148運行環境,需要把LPC2148提高到最大性能(60Hz),同時需要開啟PLL功能,設置IRQ 中斷管理定時器為0和VPB分頻器為1.同時Philips_LPC2148_Startup.s必須包括相關預處理編譯指令。要在IDE中設置編譯器指令,只需要在項目瀏覽器窗口選擇Philips_LPC2148_Startup.s的文件,然后選擇預處理選項卡,并填寫預處理器定義此屬性。

      2.2.6 編譯批處理文件

      要進行編譯批處理文件,需要具備兩個文件,一個是項目文件MP3Player,一個是針對ARM 的RowleyCross Studio文件Rowley Associates Limited.Cross-Works for ARM 1.6文件中有可以自行批處理文件:

      build_all_debug.bat,build_all_release.bat.

    3 系統流程

      系統啟動后,先初始化硬件模塊。由LPC2148讀取SD卡的一些基本信息,如容量、扇區大小、FAT表及根目錄所在的啟始扇區等。通過獲得這些信息后,就可以找出SD卡是否有可以播放的音樂文件。若有音樂文件,微處理器將通過SPI總線方式讀出該文件的音頻信息,并將歌曲的碼流信息送入到VS1003芯片中,通過VS1003芯片解碼以及其內含的高質量的立體DAC和耳機驅動電路,實現MP3歌曲的播放功能,軟件系統流程圖如圖3所示。

      一種基于EFSL的嵌入式MP3播放器設計方法

      圖3 軟件系統流程圖

      4 調 試

      Main.c文件(源代碼略)顯示的工作過程。init_IO()函數LPC2148定時器0進行初始化,使之產生周期性的中斷,并啟動了一些數據結構。周期性中斷速率要與解碼器數據流一樣,然后由efs_init(efs,″″)進行MP3文件調用,若找不到文件則會通過JTAG interface 接口向CrossStudio IDE 傳入“Could not open filesystem”參數,否則正常顯示文件信息。其文件處理結果顯示如圖4所示。通過調試顯示信息可知能正常顯示文件信息。另經過實物制作并測試,此能流暢播放SD 卡中的MP3文件,驗證了本設計是正確可行的。

      一種基于EFSL的嵌入式MP3播放器設計方法

      圖4 調試終端顯示信息

      5 結 語

      本文基于開源軟件項目設計了一款,介紹了播放器系統的硬件架構和軟件架構以及相關碼源移植和修改。通過CrossWorks forARM 1.6軟件調試,驗證了設計的可行性。整個設計體現了碼源移植簡單、配置方便的優點。

    linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 葫芦岛市| 泽库县| 滦南县| 驻马店市| 诸城市| 江陵县| 玛沁县| 江西省| 正安县| 库伦旗| 乌拉特中旗| 即墨市| 明星| 中西区| 陕西省| 龙南县| 宕昌县| 富裕县| 香格里拉县| 宜黄县| 噶尔县| 兴城市| 常德市| 永清县| 松原市| 中牟县| 松溪县| 武宣县| 甘孜| 大厂| 奈曼旗| 汾西县| 临高县| 江川县| 昌邑市| 正宁县| 镇江市| 海口市| 宜宾市| 甘德县| 陇川县|