www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件

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

音頻系統(tǒng)的硬件實(shí)現(xiàn)

本設(shè)計(jì)中的音頻驅(qū)動(dòng)采用UnifiedAudio模型實(shí)現(xiàn),基于IntelXscale處理器和TI的音頻芯片,使用了基于I2S(Inter-ICSound)總線的音頻系統(tǒng)體系結(jié)構(gòu),系統(tǒng)原理圖如圖1所示。IntelXscale芯片集成了I2S控制器,通過(guò)I2S總線處理音頻數(shù)據(jù)。信號(hào)(如控制信號(hào))則需要單獨(dú)傳輸,在本設(shè)計(jì)中將XscalePXA272芯片的SSP串口配置為SPI串口以實(shí)現(xiàn)控制信號(hào)的傳輸。

圖1系統(tǒng)原理圖

I2S是菲利浦公司提出的串行數(shù)字音頻總線協(xié)議。PXA272的I2S控制器控制了I2S鏈接,I2S控制器由數(shù)據(jù)緩沖、狀態(tài)和控制寄存器、計(jì)數(shù)器組成。它們將系統(tǒng)內(nèi)存和外設(shè)的音頻解碼芯片()連接,產(chǎn)生同步音頻。播放音頻文件時(shí),I2S控制器通過(guò)I2SLINK連接將系統(tǒng)內(nèi)存中數(shù)字化的聲音樣本發(fā)送到外設(shè)的TSC2101音頻解碼芯片中,然后由TSC2101芯片的數(shù)模轉(zhuǎn)換器將數(shù)字音頻信號(hào)轉(zhuǎn)換成模擬信號(hào)。對(duì)于錄音來(lái)說(shuō),I2S控制器從外部的TSC2101音頻芯片接收到數(shù)字信號(hào),然后將它們存儲(chǔ)到系統(tǒng)內(nèi)存中。I2S提供了普通I2S和MSB-justified-I2S格式。通過(guò)5根引腳連接TSC2101芯片和PXA272的I2S控制器,形成音頻數(shù)據(jù)傳輸?shù)耐ǖ馈2S控制器必需的信號(hào)主要有:一個(gè)碼率時(shí)鐘,可以引用外部或者內(nèi)部時(shí)鐘源;一個(gè)控制信號(hào)提供“左/右”聲道控制信息;兩個(gè)串行音頻引腳,一個(gè)輸出一個(gè)輸入;碼率時(shí)鐘,I2S控制器會(huì)將可選的系統(tǒng)時(shí)鐘信號(hào)也發(fā)送到外部解碼器中。

I2S控制器通過(guò)DMA方式來(lái)訪問(wèn)。DMA方式下,DMA控制器只能通過(guò)串行音頻數(shù)據(jù)寄存器()訪問(wèn)。DMA控制器通常以8、16或32字節(jié)大小的塊存取隊(duì)列數(shù)據(jù)的。

本設(shè)計(jì)中采用的音頻芯片TSC2101集成了立體聲音頻解碼、控制芯片,立體聲DAC能以高達(dá)48Kb/s的采樣率播放音頻文件,專供、PMP、智能手機(jī)和播放機(jī)使用。TSC2101將、耳機(jī)和四線控制器與音頻編解碼器集成再一起,帶有一個(gè)立體聲頭戴送受話器接口、一個(gè)手機(jī)送受話器接口、一個(gè)單聲道8Ω以及一個(gè)32Ω受話器驅(qū)動(dòng)器,并集成有一個(gè)監(jiān)控器和一個(gè)片上溫度。

TSC2101芯片的電路設(shè)計(jì)如圖2所示。

圖2TSC2101芯片電路設(shè)計(jì)

本設(shè)計(jì)為TSC2101在智能手機(jī)中的運(yùn)用,CP-IN為通信模塊的語(yǔ)音輸入,CP-OUT則為音頻系統(tǒng)到通信模塊的輸出,在實(shí)際的應(yīng)用中可以通過(guò)TSC2101的內(nèi)部PGA(可編程增益放大)、AGC(自動(dòng)增益控制)電路連接到CP-OUT,實(shí)現(xiàn)智能手機(jī)的話筒功能;同時(shí),輸入還可以通過(guò)內(nèi)部的ADC將語(yǔ)音數(shù)據(jù)采樣后經(jīng)I2S總線傳輸?shù)教幚砥鞔鎯?chǔ)空間實(shí)現(xiàn)錄音功能。當(dāng)然,在智能手機(jī)通話的同時(shí),還可以實(shí)現(xiàn)通話錄音功能。中的38~41引腳為SPI接口,42~46引腳為I2S控制引腳,引腳9~12為輸入,引腳27和28為音頻輸出可以連接耳機(jī),引腳26連接手機(jī)聽筒,引腳33、35連接外置。

采用UnifiedAudio模型實(shí)現(xiàn)音頻驅(qū)動(dòng)

音頻驅(qū)動(dòng)的實(shí)現(xiàn)方式包括MDD-PDD分層模式和不分層的UnifiedAudio模型。MDD-PDD作為直接實(shí)現(xiàn)流接口的一種方法,使用微軟提供的模型設(shè)備驅(qū)動(dòng)程序(MDD)庫(kù)——Wavemdd.dll。這個(gè)庫(kù)根據(jù)音頻設(shè)備驅(qū)動(dòng)程序服務(wù)供應(yīng)者接口(DDSI)函數(shù)來(lái)實(shí)現(xiàn)流接口函數(shù),如果使用了Wavemdd.dll就必須生成一個(gè)匹配的平臺(tái)依賴驅(qū)動(dòng)程序(PDD)庫(kù),該庫(kù)能實(shí)現(xiàn)音頻DDSI函數(shù),這個(gè)PDD庫(kù)通常叫做Wavepdd.lib。然后把兩個(gè)庫(kù)連接起來(lái)形成Wavedev.dll。

作為音頻驅(qū)動(dòng)的另外一種方法,就是采用UnifiedAudio模型,即不分層的音頻驅(qū)動(dòng)模型,這種模型的音頻驅(qū)動(dòng)支持標(biāo)準(zhǔn)的波形驅(qū)動(dòng)接口。在本設(shè)計(jì)中就是使用的這種方式來(lái)實(shí)現(xiàn)音頻驅(qū)動(dòng)(PlatformBuilder的驅(qū)動(dòng)目錄下包括有基于這種模型驅(qū)動(dòng)的實(shí)例代碼)。在分層的音頻驅(qū)動(dòng)中,驅(qū)動(dòng)程序由MDD和PDD組成,MDD層執(zhí)行與硬件平臺(tái)無(wú)關(guān)的功能,PDD層則是直接與硬件平臺(tái)相關(guān)的操作,而在UnifiedAudio模型中,MDD和PDD的分層是不必要的,圖3是UnifiedAudio模型的音頻驅(qū)動(dòng)結(jié)構(gòu)。

圖3UnifiedAudio模型的音頻驅(qū)動(dòng)結(jié)構(gòu)

在這種模型下,音頻驅(qū)動(dòng)仍然是以流接口的形式實(shí)現(xiàn),分別實(shí)現(xiàn)了WAV-close()、WAV-PowerDown()、WAV-Deinit()、WAV-PowerUp()、WAV-Init()、WAV-Read()、WAV-IOControl()、WAV-Seek()、WAV-Open()、WAV-Write()這幾個(gè)標(biāo)準(zhǔn)的流接口函數(shù)。

DMA緩存區(qū)設(shè)計(jì)與實(shí)現(xiàn)

由于音頻設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)對(duì)設(shè)備的實(shí)時(shí)性要求較高,所以DMA緩存區(qū)設(shè)計(jì)以及合理地利用緩存區(qū)加快對(duì)音頻數(shù)據(jù)的處理,減少延時(shí)變得十分重要。

DMA控制器是使CPU處理與數(shù)據(jù)總線無(wú)關(guān)的處理,而由DMA控制器負(fù)責(zé)數(shù)據(jù)傳輸?shù)臋C(jī)制,這種機(jī)制使得CPU從繁重的數(shù)據(jù)傳輸中解脫出來(lái),可以執(zhí)行計(jì)算,從而提高了系統(tǒng)運(yùn)行速度。PXA272的DMA控制器提供了32個(gè)DMA通道,0~31。這些通道提供了flow-through和flyby的數(shù)據(jù)傳輸方式。

在本設(shè)計(jì)中,使用雙緩存區(qū)DMA通道設(shè)計(jì),如圖4所示,當(dāng)CPU正在處理某一個(gè)緩存區(qū)數(shù)據(jù)的同時(shí),DMA控制器可以完成另一個(gè)緩存區(qū)數(shù)據(jù)的傳輸,如此交替下去,則可以提高系統(tǒng)的并行能力,提高的實(shí)時(shí)性。

雙緩存區(qū)驅(qū)動(dòng)程序設(shè)計(jì)當(dāng)中,以播音為例,新的音頻數(shù)據(jù)在CPU的控制下先寫到緩存1中,此時(shí)DMA控制器正在處理緩存2的數(shù)據(jù)傳輸。當(dāng)緩存2的數(shù)據(jù)全部傳完之后,會(huì)產(chǎn)生一個(gè)DMA中斷,該中斷通知CPU開始往緩存2里寫新的音頻數(shù)據(jù),與此同時(shí),DMA也繼續(xù)處理緩存1的數(shù)據(jù)。這樣,由于CPU和DMA沒(méi)有處理同一段DMA緩存區(qū),就減少了資源訪問(wèn)的沖突,并且能夠最大程度上保證音頻數(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é)束語(yǔ)

本文分析了嵌入式操作系統(tǒng)基于TSC2101音頻芯片的音頻系統(tǒng)實(shí)現(xiàn)的基本原理及其驅(qū)動(dòng)程序模型,并結(jié)合具體程序重點(diǎn)描述了DMA雙緩存區(qū)的實(shí)現(xiàn)方法和原理。本設(shè)計(jì)在實(shí)際運(yùn)用中能夠滿足音頻系統(tǒng)的實(shí)時(shí)性要求,在實(shí)際測(cè)試中,緩存區(qū)大小設(shè)置為0x1000(s),位時(shí)鐘頻率為2.,DMA數(shù)據(jù)傳送的數(shù)據(jù)大小分別在32B、16B、8B的情況下,播放效果均清晰無(wú)雜音,達(dá)到了預(yù)期的效果。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

汽車座艙聲學(xué)測(cè)試的黃金標(biāo)準(zhǔn)

關(guān)鍵字: 汽車座艙 傳聲器 音頻系統(tǒng)

美國(guó)俄勒岡州比弗頓市 — 2023年6月15日 — 為智能設(shè)備和下一代家庭娛樂(lè)系統(tǒng)提供沉浸式無(wú)線聲效技術(shù)的領(lǐng)先供應(yīng)商WiSA Technologies股份有限公司(NASDAQ股票代碼:WISA),與領(lǐng)先的多媒體和汽車應(yīng)...

關(guān)鍵字: 條形音箱 芯片 音頻系統(tǒng)

領(lǐng)先的音頻行業(yè)期刊CE Pro將Platin Audio的最新系統(tǒng)評(píng)為年度最佳智能家居產(chǎn)品和技術(shù)之一

關(guān)鍵字: WiSA 音頻系統(tǒng)

音頻放大器產(chǎn)品在產(chǎn)品外觀、風(fēng)格、系統(tǒng)控制和音質(zhì)方面越來(lái)越先進(jìn)。經(jīng)驗(yàn)豐富的電子工程師在他們的音頻放大器設(shè)計(jì)中使用了不同類型的電路。

關(guān)鍵字: 音頻放大器 音頻系統(tǒng)

雙射極跟隨器或達(dá)林頓對(duì)通常具有高電流增益系數(shù)。電流增益系數(shù)應(yīng)與負(fù)側(cè)和正側(cè)的電流放大相匹配,以增加輸出級(jí)的穩(wěn)定性。 對(duì)于并聯(lián)晶體管配置,請(qǐng)確保中等功率晶體管處于驅(qū)動(dòng)能力。中功率晶體管的輸出電流必須大于大功率晶體管的最...

關(guān)鍵字: 音頻放大器 音頻系統(tǒng)

摘 要:?jiǎn)?dòng)裝載程序是嵌入式系統(tǒng)的重要組成部分。文章結(jié)合在ARM平臺(tái)上廣泛使用的U-Boot,詳細(xì)討論了Boot Loader開發(fā)中用到的主要技術(shù),分析引導(dǎo)程序的執(zhí)行流程,提出了WinCE和Linux在ARM平臺(tái)下...

關(guān)鍵字: 啟動(dòng)裝載程序 U-Boot 嵌入式系統(tǒng) WinCE Linux

摘 要:火車貨運(yùn)在高速發(fā)展的同時(shí),也帶來(lái)了越來(lái)越多的不安全因素,貨運(yùn)物資被盜是鐵路貨運(yùn)事故的主要原因之一。 基于此,設(shè)計(jì)和實(shí)現(xiàn)了基于ZigBee和WinCE技術(shù)的火車貨運(yùn)防盜預(yù)警系統(tǒng),用于解決站停、待編、待卸和運(yùn)行途中...

關(guān)鍵字: 火車貨運(yùn) 智能防盜 Zigbee WinCE PDA軟件

電源大家都知道,為我們的社會(huì)的發(fā)展,貢獻(xiàn)了很大的能量,現(xiàn)有的所有的電子產(chǎn)品都離不開電源,那么你知道電源管理嗎?伴隨著移動(dòng)嵌入式產(chǎn)品的普及,電源管理已經(jīng)成為重要技術(shù)指標(biāo)和產(chǎn)品的有機(jī)組成。典型移動(dòng)嵌入式設(shè)備對(duì)能耗越來(lái)越敏感,...

關(guān)鍵字: 電源管理 WinCE 有機(jī)組成

DVD區(qū)域碼是由美國(guó)八大影業(yè)所共同制定的,為了保護(hù)各地區(qū)電影放映時(shí)的權(quán)益。   將全世界分成六個(gè)區(qū)域,并且限定每個(gè)區(qū)域中流通的DVD光盤必須設(shè)定影片區(qū)域碼。如此一來(lái),每個(gè)區(qū)域的戲院或家庭使用者就無(wú)法

關(guān)鍵字: 音頻系統(tǒng) 網(wǎng)絡(luò)時(shí)代 數(shù)字影院

ADI今日推出采用SHARC?音頻模塊(SAM)的完整音頻系統(tǒng),可用于數(shù)字音頻設(shè)備,包括音頻FX處理器、多通道音頻系統(tǒng)、MIDI合成器,以及其他基于DSP的音頻系統(tǒng)。

關(guān)鍵字: 音頻總線技術(shù) 音頻系統(tǒng) 數(shù)字音頻
關(guān)閉