<optgroup id="5f505"><i id="5f505"></i></optgroup>
  1. <ol id="5f505"><output id="5f505"></output></ol>

    
    
  2. <sub id="5f505"><sup id="5f505"><strike id="5f505"></strike></sup></sub>

      <cite id="5f505"><li id="5f505"></li></cite><ol id="5f505"><blockquote id="5f505"></blockquote></ol>

        行業資訊

        您所在的位置:首頁 > 關于飛凌 > 行業資訊
        飛凌嵌入式FET1052-C解決方案 實現7.1聲道FLAC播放器
        發布人:管理員   發布時間:2018/10/18 15:39:53

        本文介紹了采用飛凌嵌入式FET1052-C核心板快速的實現7.1聲道FLAC播放器。核心板CPU采用i.MX RT1052,具備528MHz的主頻,其Arm Cortex-M7核心支持三個SAIs和SAI1有四個傳輸(TX)數據線,支持7.1環繞聲數據傳輸。CPU的高性能和四線SAI為本方案的實現提供支持。

        i.MX RT1052是NXP i.MX RT1050系列跨界處理器中性價比較高的一款,所謂跨界指的是其兼具MPU的高性能和MCU的低功耗與實時性。

        1、i.MX RT1052 SAI特性介紹

        •具有獨立位時鐘和幀同步的發送器,支持四條數據線。

        •接收器與獨立位時鐘和幀同步,支持四數據線。

        •每個數據線支持最大32字的幀大小。

        •字大小從8位到32位可編程。

        •幀的第一個字和其余字大小分別可配置。

        •每個傳輸和接收數據線支持異步32×32位FIFO。

        •支持在FIFO錯誤后自動重啟,無需軟件干預。

        •支持將8位和16位數據打包到每個32位FIFO字中。

        •支持將多數據線FIFOs組合成單數據線FIFO。

        2、FLAC解碼

        FLAC(Free Lossless Audio Codec)是一種類似于MP3但無損的音頻格式,這意味著FLAC中的音頻壓縮沒有任何質量損失。

        我們所說的FLAC是自由(free)的不僅僅意味著你可以不花錢而得到它。更重要的是FLAC的文件格式是對公眾完全開放的,你可以以任何目的使用它(FLAC 項目只FLAC保留維護 FLAC 格式規格和確認兼容特性的權利),FLAC的文件格式和編碼/解碼的實現方式都不受任何已知專利的限制。還有,所有的源代碼都在開放源代碼的授權方式下可以得到。它是第一個真正開放和免費無損音頻格式。

        八個頻道分配是:前左、前右、前中、LFE、后左、后右、左、右。

        FLAC在i.MX RT1052上的解碼完全是通過軟件實現的。

        3、方案實現

         3.1硬件實現原理

        基于RT1052設計 7.1聲道系統架構.png

        圖1  7.1聲道系統架構

        RT1052核心板從SD卡和USB解碼FLAC文件并將數據傳輸到SAI1, SAI1有四條傳輸數據線(一條數據線包含兩個數據通道)。然后,Codec芯片CS42448 獲取4個數據線和時鐘來處理數據并使用DACs向后級功放傳輸8個聲道的模擬音頻信號。

        筆者帶著大家來熟悉使用PINMUX表選擇核心板上的引腳,用于制作原理圖。

        首先打開“**_PINMUX.xlsx”文件,表頭中Pin Name是引腳的名稱,用這個名字可以從i.MX RT1052 CPU手冊中找到關于引腳的詳細說明;Coords是CPU的球號坐標;Alt0~7是引腳的8種功能描述。

        那么我們以本文中最關鍵的SAI1功能做示例,從表中可以找到支持4個數據線的SAI1,如下圖2:

        iMXRT1052 PINMUX表.jpg

        圖2

        根據這些CPU球號,就可以在飛凌提供的OK1052-C底板原理圖中找到這些引腳在底板連接器上的位置(如圖3),不過可以發現,這幾個引腳已經被QSPI所占用,而QSPI在核心板上用做了QSPI的ROM,所以不建議使用這幾個引腳了。

        圖3

        換一組其它引腳,可以找到另外一組支持4 TX線的SAI1引腳,如下圖:

        圖4

        同樣的方法,可以在OK1052-C底板原理圖中找到引腳所在位置,通過圖5可以看出,目前飛凌默認配置的是LCD的功能,但是本方案用不到LCD,可以將其用于SAI1的。

        圖5

        按照表格中引腳功能名稱,修改原理圖標號如下:

        圖6

        其它引腳的配置也是同樣的方法,如果所用功能和飛凌OK1052-C底板一致的,可以不修改其功能引腳位置,這樣也便于程序的修改、開發。

        3.2軟件實現流程


        S1、CPU、功能引腳和時鐘初始化,如USDHC、USB、IIC和SAI。

        S2、看門狗初始化,以防止程序錯誤。

        S3、使用IIC實現CS42448編解碼器的初始化和配置。

        S4、創建和初始化一個新的FLAC流解碼器。

        S5、檢測FLAC文件的信息以配置SAI TX。

        S6、解碼過程中的音頻回放。

        S7、當一個音頻文件結束,下一個文件開始(到步驟4)。如果SD卡上的所有文件都播放完成后,從頭播放音頻。

        4、附件說明

        4.1:《Sch》文件夾,參考原理圖源文件。

        4.2:《CDB42448_DB2.pdf》CS42448評估板參考手冊

        4.3:《CS42448_F5.pdf》CS42448芯片手冊

        4.4:《FET1052-C&FLAC7.1player_PINMUX.xlsx》FET1052-C核心板引腳配置表

        附件下載地址:https://pan.baidu.com/s/17VXLkYe2GSJVlQTP4YlJMA


             i.MX RT1052核心板詳細介紹以及關于RT1052的方案及資料您可聯系頁面左側在線客服人員。

        Copyright © 2007-2015 保定飛凌嵌入式技術有限公司 All Rights Reserved  冀ICP備12004394號  
        色综合导航