Windows CE下基于TSC2101的音頻系統(tǒng)設(shè)計(jì)_第1頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、windows ce下基于tsc2101的音頻系統(tǒng)設(shè)計(jì)windows ce是一個(gè)開放的、可裁剪的、32位的實(shí)時(shí)操作系統(tǒng)。它具有牢靠性好、實(shí)時(shí)性高、內(nèi)核體積小的特點(diǎn),所以被廣泛用于各種嵌入式智能設(shè)備的開發(fā),其應(yīng)用涉及工業(yè)控制、信息家電、移動通信、個(gè)人消費(fèi)品等各個(gè)領(lǐng)域,是當(dāng)今應(yīng)用最多、增長最快的嵌入式操作系統(tǒng)。而在這些嵌入式應(yīng)用中,音頻模塊成為了大多數(shù)產(chǎn)品不行或缺的一部份。本文針對windows ce操作系統(tǒng),構(gòu)造了基于intel xscale pxa272和tsc2101音頻芯片的音頻系統(tǒng),并簡要介紹了其實(shí)現(xiàn)辦法。音頻系統(tǒng)的硬件實(shí)現(xiàn)本設(shè)計(jì)中的音頻驅(qū)動采納unified audio模型實(shí)現(xiàn),基于i

2、ntel xscale pxa272處理器和ti 的tsc2101音頻芯片,用法了基于i2s(inter-ic sound)的音頻系統(tǒng)體系結(jié)構(gòu),系統(tǒng)原理圖1所示。intel xscale pxa272芯片集成了i2s控制器,通過i2s總線處理音頻數(shù)據(jù)。其他信號(如控制信號)則需要單獨(dú)傳輸,在本設(shè)計(jì)中將xscale pxa272芯片的ssp串口配置為spi串口以實(shí)現(xiàn)控制信號的傳輸。圖1 系統(tǒng)原理圖i2s是菲利浦公司提出的串行數(shù)字音頻總線協(xié)議。pxa272的i2s控制器控制了i2s鏈接,i2s控制器由數(shù)據(jù)緩沖、狀態(tài)和控制寄存器、計(jì)數(shù)器組成。它們將系統(tǒng)內(nèi)存和外設(shè)的音頻解碼芯片(tsc2101)銜接,

3、產(chǎn)生同步音頻。播放音頻文件時(shí),i2s控制器通過i2slink銜接將系統(tǒng)內(nèi)存中數(shù)字化的聲音樣本發(fā)送到外設(shè)的tsc2101音頻解碼芯片中,然后由tsc2101芯片的數(shù)模轉(zhuǎn)換器將數(shù)字音頻信號轉(zhuǎn)換成模擬信號。對于錄音來說,i2s控制器從外部的tsc2101音頻芯片接收到數(shù)字信號,然后將它們存儲到系統(tǒng)內(nèi)存中。i2s提供了一般i2s和msb-justified-i2s格式。通過5根引腳銜接tsc2101芯片和pxa272的i2s控制器,形成音頻數(shù)據(jù)傳輸?shù)耐ǖ馈2s控制器必須的信號主要有:一個(gè)碼率時(shí)鐘,可以引用外部或者內(nèi)部時(shí)鐘源;一個(gè)控制信號提供“左/右”聲道控制信息;兩個(gè)串行音頻引腳,一個(gè)輸出一個(gè)輸入;

4、碼率時(shí)鐘,i2s控制器會將可選的系統(tǒng)時(shí)鐘信號也發(fā)送到外部中。i2s控制器通過dma方式來拜訪。dma方式下,dma控制器只能通過串行音頻數(shù)據(jù)寄存器(sadr)拜訪fifo。dma控制器通常以8、16或32字節(jié)大小的塊存取fifo隊(duì)列數(shù)據(jù)的。本設(shè)計(jì)中采納的音頻芯片tsc2101集成了立體聲音頻解碼、控制芯片,立體聲能以高達(dá)48kb/s的采樣率播放音頻文件,專供pda、pmp、智能手機(jī)和mp3播放機(jī)用法。tsc2101 將揚(yáng)聲器、耳機(jī)放大器和四線觸摸屏控制器與音頻編解碼器集成再一起,帶有一個(gè)立體聲頭戴送受話器接口、一個(gè)手機(jī)送受話器接口、一個(gè)單聲道8揚(yáng)聲器放大器以及一個(gè)32受話器驅(qū)動器,并集成有一個(gè)

5、電池監(jiān)控器和一個(gè)片上溫度。tsc2101芯片的設(shè)計(jì)2所示。圖2 tsc2101芯片電路設(shè)計(jì)本設(shè)計(jì)為tsc2101在智能手機(jī)中的運(yùn)用,cp-in為通信模塊的語音輸入,cp-out則為音頻系統(tǒng)到通信模塊的輸出,在實(shí)際的應(yīng)用中mic1可以通過tsc2101的內(nèi)部pga(可編程增益放大)、agc(自動增益控制)電路銜接到cp-out,實(shí)現(xiàn)智能手機(jī)的話筒功能;同時(shí),mic1輸入還可以通過內(nèi)部的將語音數(shù)據(jù)采樣后經(jīng)i2s總線傳輸處處理器存儲空間實(shí)現(xiàn)錄音功能。固然,在智能手機(jī)通話的同時(shí),還可以實(shí)現(xiàn)通話錄音功能。中的3841引腳為spi接口,4246引腳為i2s控制引腳,引腳912為觸摸屏輸入,引腳27和28為

6、音頻輸出可以銜接耳機(jī),引腳26銜接手機(jī)聽筒,引腳33、35銜接外置揚(yáng)聲器。采納unified audio模型實(shí)現(xiàn)音頻驅(qū)動音頻驅(qū)動的實(shí)現(xiàn)方式包括mdd-pdd分層模式和不分層的unified audio模型。mdd-pdd作為挺直實(shí)現(xiàn)流接口的一種辦法,用法微軟提供的模型設(shè)備驅(qū)動程序(mdd)庫,該庫能實(shí)現(xiàn)音頻ddsi函數(shù),這個(gè)pdd庫通常叫做wavepdd.lib。然后把兩個(gè)庫銜接起來形成wavedev.dll。作為音頻驅(qū)動的另外一種辦法,就是采納unified audio模型,即不分層的音頻驅(qū)動模型,這種模型的音頻驅(qū)動支持標(biāo)準(zhǔn)的波形驅(qū)動接口。在本設(shè)計(jì)中就是用法的這種方式來實(shí)現(xiàn)音頻驅(qū)動(plat

7、form builder的驅(qū)動名目下包括有基于這種模型驅(qū)動的實(shí)例代碼)。在分層的音頻驅(qū)動中,驅(qū)動程序由mdd和pdd組成,mdd層執(zhí)行與硬件平臺無關(guān)的功能,pdd層則是挺直與硬件平臺相關(guān)的操作,而在unified audio模型中,mdd和pdd的分層是不須要的,圖3是unified audio模型的音頻驅(qū)動結(jié)構(gòu)。圖3 unified audio模型的音頻驅(qū)動結(jié)構(gòu)在這種模型下,音頻驅(qū)動仍然是以流接口的形式實(shí)現(xiàn),分離實(shí)現(xiàn)了wav-close()、wav-powerdown()、wav-deinit()、 wav-powerup()、wav-init()、wav-read()、wav-iocont

8、rol()、wav-seek()、wav-open()、wav-write()這幾個(gè)標(biāo)準(zhǔn)的流接口函數(shù)。dma緩存區(qū)設(shè)計(jì)與實(shí)現(xiàn)因?yàn)橐纛l設(shè)備驅(qū)動程序設(shè)計(jì)對設(shè)備的實(shí)時(shí)性要求較高,所以dma緩存區(qū)設(shè)計(jì)以及合理地利用緩存區(qū)加快對音頻數(shù)據(jù)的處理,削減延時(shí)變得非常重要。dma控制器是使cpu處理其他與數(shù)據(jù)總線無關(guān)的處理,而由dma控制器負(fù)責(zé)數(shù)據(jù)傳輸?shù)臋C(jī)制,這種機(jī)制使得cpu從繁重的數(shù)據(jù)傳輸中解脫出來,可以執(zhí)行其他計(jì)算,從而提高了系統(tǒng)運(yùn)行速度。pxa272的dma控制器提供了32個(gè)dma通道,031。這些通道提供了flow-through 和fly by的數(shù)據(jù)傳輸方式。在本設(shè)計(jì)中,用法雙緩存區(qū)dma通道設(shè)計(jì),

9、4所示,當(dāng)cpu正在處理某一個(gè)緩存區(qū)數(shù)據(jù)的同時(shí),dma控制器可以完成另一個(gè)緩存區(qū)數(shù)據(jù)的傳輸,如此交替下去,則可以提高系統(tǒng)的并行能力,提高音頻處理的實(shí)時(shí)性。雙緩存區(qū)驅(qū)動程序設(shè)計(jì)當(dāng)中,以播音為例,新的音頻數(shù)據(jù)在cpu的控制下先寫到緩存1中,此時(shí)dma控制器正在處理緩存2的數(shù)據(jù)傳輸。當(dāng)緩存2的數(shù)據(jù)所有傳完之后,會產(chǎn)生一個(gè)dma中斷,該中斷通知cpu開頭往緩存2里寫新的音頻數(shù)據(jù),與此同時(shí),dma也繼續(xù)處理緩存1的數(shù)據(jù)。這樣,因?yàn)閏pu和dma沒有處理同一段dma緩存區(qū),就削減了資源拜訪的矛盾,并且能夠最大程度上保證音頻數(shù)據(jù)不走失,提高音頻處理的實(shí)時(shí)性,也提高了系統(tǒng)的并行能力。本設(shè)計(jì)中用法mapdmabuffers()函數(shù)實(shí)現(xiàn)dma音頻數(shù)據(jù)緩存區(qū)的分配,函數(shù)主要實(shí)現(xiàn)的功能是:分配接收和發(fā)送音頻數(shù)據(jù)的dma緩存區(qū)。結(jié)束語本文分析了嵌入式windows ce操作系統(tǒng)基于tsc2101音頻芯片的音頻系統(tǒng)實(shí)現(xiàn)的基本原理及其驅(qū)動程序模型,并結(jié)合詳細(xì)程序重點(diǎn)描

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論