国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于ARM9處理器的嵌人式音頻系統設計

發布時間:2010-8-9 15:32    發布者:lavida
1 引言  

隨著 Internet技術和多媒體技術的快速發展,語音通信技術的應用越來越廣泛,也越來越受到重視。如今的嵌人式設備日益復雜化,功能比以前更加豐富,性能也越來越高。在多種嵌人式終端產品中,音頻處理功能已成為不可缺少的重要組成部分,高質量的音效是當前發展的重要趨勢。  

本文利用 ATMEL公司 的 AT91RM9200型微處理器 和 Philips公司的 UDA1341型立體聲音頻編解碼器設計了一種嵌入式音頻系統。該嵌入式音頻系統硬件部分采用基于IIS總線的音頻系統體系結構,其主要硬件電路后文作了詳細的介紹。軟件上,筆者以嵌入式Linux操作系統作為平臺,重點介紹該音頻系統在此平臺下的驅動程序的實現。  

2 AT91RM9200處理器簡介  

AT91RM9200是 ATMEL公司針對系統控制以及通信領域推出的基于ARM920T內核的新型微處理器,在高性能和低功耗特性方面具有極大的優勢,而且具有很高的主頻,最高可達到180 MHz。該處理器具有獨立的16K指令和16K數據cache,全功能的MMU虛擬內存管理單元,以及內部的16KB SRAM和128KB ROM,EBI接口控制器。片上集成了豐富的外圍接口,包括網絡MAC、USB控制器、SDRAM 控制器、CF接口、NAND flash接口、IIC接口、JTAG調試器以及支持 256 MB的地址空間。而且處理器還提供自舉模式,供用戶寫入引導代碼,方便 Linux等操作系統的移植。  

3 UDA1341TS音頻芯片及IIS總線簡介  

PHILIPS公司的 UDA1341TS是一塊功能強大的專用語音處理芯片。該芯片集語音放大、濾波、采樣、A/D和D/A轉換等功能于一體,并且能進行數字語音處理。本設計使用的AT91RM9200處理器具有一個IIS音頻接口,此接口采用 DMA方式傳輸數據。在該方式下,由DMA控制器取代CPU,獲得總線控制權,從而實現內存與外設或者內存之間的不同區域之間大量數據的快速傳輸。用DMA接口傳輸數據,不僅可以降低CPU負擔,還可以節省系統的軟件設計時間,降低編程難度。而 UDA1341TS支持IIS總線格式,并且具有數字語音處理特性,由此決定了UDA1341TS與AT91RM9200處理器的電路連接比較簡單,并且能實現語音的 A/D和 D/A等預處理,而不需要再額外增加專門的A/D和 D/A器件。  

需要說明的是,數字音頻系統需要多種多樣的集成電路,因此,為這些電路提供一個標準的通信協議非常重要。IIS總線是由SONY和PHILIPS公司等電子巨頭共同提出的數字音頻總線協議,全稱是內部集成電路聲音總線 (Inter IC Sound Bus),它是一種串行的數字音頻總線協議,該總線專門用于音頻設備之間的數據傳輸,為數字立體聲提供一個序列連接至標準編解碼器,目前很多音頻芯片和處理器都提供了對IIS總線的支持。筆者根據IIS總線的原理,結合AT91RM9200處理器和數字音頻輸入/輸出接口芯片 UDA1341TS的結構特點,設計的嵌入式音頻系統可以運用到很多類似的音頻系統中。  

4 系統硬件設計方案  

由于IIS總線只處理音頻數據,而其他的信號如編碼、控制等信號單獨傳送。為了使必需的引腳數最小并且保持連線簡單,IIS總線由3條信號線組成:時分復用的數據通道線、字段選擇線和時鐘信號線。本系統由系統主控制器提供時鐘信號,控制數字音頻數據在各個IC之間的流向。此時,發送器在外部時鐘信號的控制下產生數據,處于從模式。  

本設計硬件連接圖比較簡單,如圖1所示。圖中的處理器采用了AT91RM9200處理器,其內置IIS音頻總線,內置的IIS接口能讀取IIS總線上的數據,并由UDA1341TS芯片外擴,通過總線和系統連接,需要處理器提供系統時鐘和3根控制線。  


圖1 硬件設計簡圖  

AT91RM9200的IIS控制器由5個引腳與外部的音頻編解碼器相連。這些引腳分別是:系統時鐘;位速率時鐘(可使用內部或外部時鐘源);字段選擇;串行聲音輸入;串行聲音輸出。本設計中,UDA1341TS使用的是L3接口 ,該接口用來控制音頻信號的音量大小以及低音等。L3接口有3個信號:L3MODE,L3CLK,L3DATA,將字節寫入 L3總線寄存器。IIS總線控制器通過軟件控制AT91RM9200的通用I/O引腳(筆者選用的是PA0、PA1、PA2三個通用I/O口)來支持L3接口。下圖是本嵌入式音頻系統的硬件電路連接圖,見圖2。


圖2 硬件電路的連接  

各個引腳的連接說明如下:  

SYSCLK:IIS總線的基本時鐘源,AT91RM9200處理器的TCLK3引腳與UDA1341TS芯片的系統時鐘相連接。由于UDA1341TS芯片僅支持從模式 ,因此在所有的應用中系統設備必須提供系統時鐘。系統時鐘頻率是可編程的,其分頻率可以是 256、384或512倍的采樣頻率。系統時鐘必須在頻率上與數字接口信號一致。在設計中筆者用的是256fs的時鐘。  
WS:字段選擇引腳,用于指出現行串行數據采樣值為左聲道還是右聲道數據,AT91RM9200處理器的TK0引腳與WS相連接。  
BCK:向UDA1341TS提供用作采樣邏輯的串行聲音位速率時鐘,AT91RM9200處理器的TD0引腳與 UDA1341TS芯片的BCK引腳相連接。  
DATAI, DATAO:用于從UDA1341TS接收、發送串行聲音數據,AT91RM9200處理器的RD0,RK0引腳分別對應UDA1341TS的音頻輸入、輸出引腳。  
L3M0DE,L3CLOCK,L3DATA:UDA1341TS的L3接口引腳,分別與AT91RM9200的3個通用數據輸出引腳PA0、PA1、PA2連接。
  
5 系統軟件設計方案  

嵌入式 Linux是一種完全開放且免費的操作系統,其支持多種硬件體系結構,運行穩定 ,擁有完善的開發工具,為開發人員提供了優良的開發環境。在嵌入式 Linux系統中,設備驅動程序提供了應用程序和實際設備之間的一個軟件層(接口),為應用程序屏蔽了硬件細節。本設計中,音頻設備驅動程序主要通過對硬件的控制實現音頻流的傳輸,同時向上層提供標準的音頻接口。整個音頻驅動程序包括設備初始化、打開設備、數字音頻處理(DSP)驅動、混頻器(MIXER)驅動和釋放設備等部分。本文由于篇幅的限制,僅介紹設備初始化及打開設備的實現。  
設備初始化是整個音頻驅動程序的開始部分,主要完成對UDA1341TS音量、采樣頻率、L3接口等的初始化,并且注冊設備。通過函數audio_init(void)完成以下具體功能: AT91RM9200控制端口(PA0、PA1、PA2)的初始化;為UDA1341TS分配 DMA通道;初始化UDA1341TS芯片;注冊音頻audio設備和混頻器設備。  

以下給出的是該函數總體框架:  
audio_init(void)  
{  
Set_gpio_ctrl(GPIO_L3CLOCK); /*CPU控制端口的初始化 */  
… … /*“……”表示省略部分代碼,以下同 */  
Input_stream.dma_ch=DMA_CH1; /*輸入 DMA通道的選擇 */  
Output_stream.dma_ch=DMA_CH2; /*輸出DMA通道的選擇 */  
Local_irq_restore(flags);  
Init_UDA1341(); /*初始化 UDA1341*/  
… …  
/*下面兩個函數用來注冊音頻 audio設備和混頻器設備 */  
Audio_dev_dsp=register_sound_dsp (&at91rm9200_audio_fops,-1);  
Audio_dev_mixer=register_ound_mixer (&at91rm9200_mixer_fops,-1);  
}  

打開設備由函數open()來實現,該函數可以完成以下功能:配置IIS總線接口;設置UDA1341TS聲道及采樣頻率等參數;計算緩沖區大小;為UDA1341TS分配DMA緩沖區。  

該音頻模塊經過正確的配置可以實現錄音、放音及循環放音等功能。本文給出初始化IIS接口、測試IIS接口以及運用IIS接口來播放一段音樂的程序設計基本流程,流程圖如圖3所示。錄音和循環播放功能的設計流程與放音類似,這里不再贅述。  


圖3 IIS接口功能測試軟件設計流程圖  

6 結論  

本文介紹了一種基于IIS總線的嵌入式音頻系統,該系統簡潔實用,可以實現音頻的采集和播放,文章具體講述了基于ATMEL公司AT91RM9200型微處理器與音頻編解碼芯片UDA1341TS的硬件連接及嵌入式 Linux下音頻驅動的實現。當然,這只是本系統的主要組成部分,至于其他相關組成部分如FLASH和SDRAM等,筆者在實際設計中已經完成,由于篇幅關系,文中沒有詳細介紹。該系統已經在AT91RM9200的開發平臺上得到了實現,可以順利進行音頻的采集和播放,并取得了良好的效果。另外,當今實時視頻處理和傳輸技術發展迅速,應用也日益廣泛,如視頻會議、VOIP電話等等,本設計適當加以擴展,特別是與視頻模塊結合,即可應用于更多相關的復雜系統中。
本文地址:http://m.qingdxww.cn/thread-20342-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本国产网站 | 一级毛毛片毛片毛片毛片在线看 | 国产日韩欧美综合色视频在线 | 91国内揄拍·国内精品对白 | 男人的天堂在线观看视频不卡 | 国产噜噜噜精品免费 | 四虎免费影院在线播放 | 热久久精品免费视频 | 色费女人18毛片a级视频在线 | 成人欧美一区二区三区在线 | 免费国产黄频在线观看视频 | 老司机在线精品视频 | 巨大黑人极品video | 精品国产第一国产综合精品 | 97公开免费视频 | www.av在线播放 | 亚洲激情自拍偷拍 | 欧美日韩在线看 | 国产人成精品综合欧美成人 | 天天色天天搞 | 亚欧洲精品在线视频免费观看 | 新国产视频 | 善良的妻子在线 | 久久亚洲成人 | 亚洲国产日韩在线人高清 磁力 | 亚洲精品嫩草研究院久久 | 九九香蕉视频 | 国产在线成人一区二区 | 亚洲欧美自拍一区 | 黑人视频在线观看 | 青青草国产97免久久费观看 | 日韩毛片在线 | 欧美日韩免费看 | 色视频在线网站 | 欧美在线看欧美视频免费网站 | 欧美成性色 | 久9久9精品视频在线观看 | 色一欲一性一乱一区二区三区 | 亚洲视频一区在线观看 | 一级毛片成人免费看a | 欧美在线成人午夜网站 |