网站大量收购独家精品文档,联系QQ:2885784924

第十六章 內部整合電路聲音(I2S)控制器.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第十六章 內部整合電路聲音(I2S)控制器

第十六章 內部整合電路聲音I2S控制器 嵌入式系統硬體架構設計教材 第十六章 內部整合電路聲音(I2S)控制器 大綱 概觀 訊號說明 控制器操作 序列音訊時脈與取樣頻率 資料格式 暫存器 中斷 概觀 I2S是一種數位立體音訊協定 I2S控制器(I2SC)控制I2S連結(I2SLINK) I2S連結是一個立體音訊的低電源四支腳位的序列介面 I2S介面和音訊編碼解碼器‘97 (AC’97)介面可能不能同時使用 概觀(cont.) I2SC是由緩衝器、狀態暫存器、控制暫存器、平行序列轉換器和計數器組成 使用在應用程式處理器系統記憶體和一個外部I2S編碼解碼器之間的數位化音訊傳輸。 為了重播放數位化音訊的或合成音訊的產生,I2SC從應用程式處理器系統記憶體檢索數位化音訊取樣且將它們經由I2SLINK傳送到編碼解碼器,再由編碼解碼器中的外部數位到類比轉換器轉換音訊取樣成為類比音訊波形 概觀(cont.) 為了記錄數位化音訊,I2SC從一個編碼解碼器(經由I2SLINK)接收數位化音訊取樣且將它們儲存到應用程式處理器系統記憶體 I2S控制器支援 標準I2S與 MSB調整I2S格式 I2S資料能夠由DMA控制器或程式I/O來儲存到系統記憶體或是從系統記憶體取得 概觀(cont.) I2S控制器以四或五支腳位連接到一個外部編碼解碼器: 一個位元率時脈,能使用一個內部或一個外部來源資料 一種格式化或“左/右”控制訊號 二個序列音訊腳位,一個做為輸入和另一個做為輸出 位元率時脈,一個可選擇的系統時脈也由I2SC傳送到編碼解碼器 訊號說明 SYSCLK是I2S單元中所有時脈的基礎時脈 在2 MHz與12.2 MHz之間 頻率是256倍於音訊取樣頻率 只有在BITCLK組態為輸出時,SYSCLK由應用程式處理器驅動 訊號說明(cont.) 控制器操作 I2S控制器(I2SC)能經由處理器或DMA控制器其中一個來進行存取 處理器使用程式I/O指令來存取I2SC且能存取下列型式的資料 ? I2SC暫存器資料 ? I2SC FIFO資料 ? I2S編碼解碼器資料 控制器操作(cont.) DMA控制器能夠只存取FIFO DMA控制器對I2SC發出的下列DMA要求做出回應 傳送FIFO要求是以傳送臨界值(TFTH)設定為基礎,如果所傳送的FIFO數少於傳送臨界值(TFTH)加一個通道時,則傳送FIFO要求被設定 接收FIFO要求是以接收臨界值(RFTH)設定為基礎,如果所接收FIFO數多於接收臨界值(RFTH)加一個通道時,則接收FIFO要求被設定 初始化 1. 藉由設計SYSUNIT的GPIO方向暫存器、SYSUNIT的GPIO交替功能選擇暫存器和I2SC的序列音訊控制器廣域控制暫存器(位元2)來設置BITCLK方向。 2. 選擇標準I2S或MSB調整I2S模式的操作,可以由設計序列音訊控制器I2S/MSB調整控制暫存器(SACR1)的位元0來完成 關閉與啟動音訊重播 當I2SC啟動時,音訊傳輸會自動啟動 重播可以藉由觸發SACR1暫存器中的DRPL位元來停止 影響 ?所有I2SLINK重播活動關閉 ?傳送FIFO指標會重置為0 ?傳送FIFO填入值會重置為0 ?0會透過I2SLINK傳送 ?傳送的DMA要求是關閉 關閉與啟動音訊錄音 當I2SC啟動時,音訊錄音會自動啟動 錄音也可以藉由觸發SACR1暫存器中的DREC位元來停止 影響 ?I2SLINK記錄活動關閉 ?接收FIFO指標會重置為0 ?接收FIFO填入值會重置為0 ?任何由DMA/CPU的讀取操作會以0回傳 ?接收的DMA要求關閉 傳送FIFO錯誤 狀態位元在傳送欠載狀況期間設置,它會觸發一個中斷(假如中斷是致能的話) 1.有效傳送的資料在記憶體中仍然是可用的但是DMA控制器極需要傳送的FIFO因為它在服務其他有較高優先權的週邊設備。 2. DMA控制器已經從記憶體傳送所有有效資料到傳送的FIFO 第二個情況促使最後的有效取樣透過I2SLINK來回應直到關閉SACR0[ENB]位元來關掉I2SC。 接收FIFO錯誤 狀態位元在接收滿溢狀況期間設置,它會觸發一個中斷(假如中斷是致能的話) 尾部位元組 當編碼解碼器已經完成傳送有效資料,I2SC將記錄零,且這將繼續直到關閉SACR0[ENB]位元來關掉單元。 假如接收資料的總緩衝區容量小於接收臨界值時,I2SC將記錄零,當所設計的臨界值到達時,接收DMA要求將執行。 序列音訊時脈與取樣頻率 FIFO與記憶體格式 FIFO緩衝區為16個字元的深度和32

文档评论(0)

ligennv1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档