
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于ddk的tlv320aic23型編解碼器的驅(qū)動(dòng)設(shè)計(jì)tlv320aic23是ti公司推出的一款高性能立體聲音頻編,內(nèi)置耳機(jī)輸出,支持mic和line in二選一的輸入方式。輸入和輸出都具有可編程的增益調(diào)整功能。tlv320aic23的模數(shù)轉(zhuǎn)換器()和數(shù),模轉(zhuǎn)換器()集成在芯片內(nèi)部采納先進(jìn)的一過采樣技術(shù)可以在8khz至96khz的采樣率下提供16bit、20bit、24bit和32bit的采樣數(shù)據(jù)。adc和dac的輸出信噪比分離可達(dá)90db和100db。同時(shí)。tlv320aic23還具有很低的功耗(回放模式為23mw。節(jié)電模式為15w)。上述優(yōu)點(diǎn)使得tlv320aic23成為一款十分抱負(fù)的音頻
2、編解碼器,與ti的系列相協(xié)作更是相得益彰。dspbios driver developers kit(ddk)是ti為簡化驅(qū)動(dòng)程序開發(fā)為tms320系列dsp及其evm板等提供的驅(qū)動(dòng)程序開發(fā)套件。該套件為tms320系列各種外圍器件提供完整的標(biāo)準(zhǔn)化驅(qū)動(dòng)程序模型,使得驅(qū)動(dòng)程序可以很便利地移植到其他應(yīng)用中,大大提高驅(qū)動(dòng)程序開發(fā)的效率。ddk是對每種tms320系列dsp都提供的芯片支持庫(chip support librarycsl)的補(bǔ)充,csl提供對外圍器件寄存器配置及初始化等的低級控制,ddk徹低通過csl來對外圍器件舉行控制。容易地說。ddk建立在csl上層所以用ddk來開發(fā)驅(qū)動(dòng)程序?qū)⒏?/p>
3、為快捷且可移植性更好。ddk為開發(fā)驅(qū)動(dòng)程序定義了標(biāo)準(zhǔn)模型和一系列的api。為簡化程序設(shè)計(jì)。標(biāo)準(zhǔn)模型又被分為二個(gè)層次其中高層稱為class driver,低層稱為minidriver。class drivei與器件相對自立完成諸如緩沖區(qū)管理和哀求同步等功能同時(shí)飾演著與api和minidriver二者接口的角色。minidriver完成特定的器件初始化和控制功能它符合iom(io minidriver)的接口標(biāo)準(zhǔn)。ddk的這種分層結(jié)構(gòu)使得驅(qū)動(dòng)開發(fā)人員僅需了解單一的minidriver api就可以完成整體外圍器件的驅(qū)動(dòng)設(shè)計(jì),而且這一過程比設(shè)計(jì)囫圇驅(qū)動(dòng)程序要容易得多,由于class driver控制
4、了緩沖區(qū)管理和同步等。ddk提供3種class driver分離為siodio、pippio和gio,它們都可以和任何minidriver結(jié)合用法。2 tlv320aic23的驅(qū)動(dòng)設(shè)計(jì)基礎(chǔ)ddk的標(biāo)準(zhǔn)模型結(jié)構(gòu)1所示。高層的應(yīng)用和底層驅(qū)動(dòng)互相沒有挺直的關(guān)聯(lián),開發(fā)中只需通過class driver控制minidriver。下面以dm642 evm板為例解釋基于ddk的tlv320aic23的驅(qū)動(dòng)程序設(shè)計(jì)辦法。首先,需要用法配置工具建立驅(qū)動(dòng)程序的入口。在dspbios con_fig下的cdb文件中依次挑選in-puffoutplut-deviee driversuserdefined driver
5、s在這些例程中普通已經(jīng)添加了udevcodec假如需要的話,用戶可以自行添加或編輯。右鍵單擊挑選properties選項(xiàng)來編輯其屬性,其屬性應(yīng)設(shè)置如下:comment:可以加入自己的注釋lnit function:鍵入evmdm642_edma_aic23一initfunction table ptr:鍵入 evmdm642_edma_a-ic23一fxn8function table type:挑選iom_fxnsdeviceid:該項(xiàng)會(huì)被自動(dòng)忽視由于dm642 evm板上惟獨(dú)一塊tlv320aic23device params ptr:tlv320aic23參數(shù)結(jié)構(gòu)的入口指針用法缺省參數(shù)時(shí)
6、設(shè)為0x0device global data ptr:必需設(shè)置為oxo正確配置驅(qū)動(dòng)程序入口后就要根據(jù)需要設(shè)置相關(guān)的參數(shù)。下面詳細(xì)研究tlv320aic23參數(shù)的設(shè)置。tlv320aic23的參數(shù)結(jié)構(gòu)體原型如下:typedef struct在普通應(yīng)用中。上述結(jié)構(gòu)體的大多數(shù)參數(shù)無需更改,需要修改的主要是aie23config它是tlv320aic23控制寄存器值需要通過它來控制tlv320aic23的工作模式、輸入輸出挑選、采樣率等重要參數(shù)。除了復(fù)位寄存器外tlv320aic23共有9個(gè)控制寄存器每個(gè)寄存器控制字長為9bit地址位為7bit,共有16bit。地址位為高7位而控制字在低9位。詳細(xì)如
7、下:register0:左聲道輸入音量控制,缺省值為 0x0017register1:右聲道輸入音量控制,缺省值為 0x0017register 2:左聲道輸出音量控制。缺省值為ox01f9register 3:右聲道輸出音量控制,缺省值為ox01f9register 4:模擬音頻通道設(shè)置缺省值為ox0011register 5:數(shù)字音頻通道設(shè)置。缺省值為0x0000register 6:節(jié)電模式控制缺省值為0x0000register 7:數(shù)字音頻接口格式控制,缺省值為0x0043register 8:采樣率控制,缺省為48khz,對dm642evm板缺省值為ox0002register 9
8、:數(shù)字音頻接口激活開關(guān)缺省值為0x0001通常狀況下需要修改的寄存器包括4號(hào)和8號(hào)寄存器即挑選是由mic輸入還是由line in輸入和按照需要挑選采樣率。這2個(gè)寄存器的具體配置如下:4號(hào)寄存器配置見表1,其中,d2位。insel(in-put select for adc)是輸入挑選,“o”為line in;“l(fā)”為mic.d1位micm(microphone mute)是mic靜音開關(guān)為“l(fā)”表示靜音。do位micb(microphone boost)如設(shè)置為“1”將為mic輸入提供20db的增益。8號(hào)寄存器配置見表2,其中,采樣率控制位為d5"d2的sr3:o。對于dm642 e
9、vm板,設(shè)置方式見表3。可見需要通過4號(hào)寄存器的d2來挑選輸入,同時(shí)考慮dl和do對mic的控制;采樣率的控制通過設(shè)置8號(hào)寄存器的sr3:0來實(shí)現(xiàn)。3 tlv320aic23的驅(qū)動(dòng)配置辦法無數(shù)初學(xué)者在運(yùn)行dm642 evm的echo或其他音頻例程時(shí),最簡單遇到的問題是通過line in輸入時(shí)有輸出而通過mic輸入時(shí)沒有輸出,更不要說轉(zhuǎn)變采樣率了。即使參考資料編輯aic23-h和emvdm642_edma_aic23h修改dcfauh參數(shù)仍然無法解決。浮現(xiàn)這樣的問題時(shí)。首先要了解tlv320aic23的模擬音頻輸入為mic和line in二選一的,第二要知道如何能夠正確配置tlv320aic23
10、的參數(shù)使之滿足特定應(yīng)用的需要。假如認(rèn)真分析echo例程和其他音頻例程的話,可以發(fā)覺惟獨(dú)在echo例程中包含了aie23.h和emvdm642_edma_aie23h 2個(gè)頭文件。其實(shí)在echo例程中所包含的這2個(gè)頭文件和tlv320aic23的初始化語句實(shí)際并未用法。假如屏蔽掉對這2個(gè)頭文件的包含以及tlv320aic23的初始化語句,會(huì)發(fā)覺編譯后仍然能夠正常運(yùn)行。事實(shí)上echo例程中的tlv320aic23初始化語句只是提供了對,v320aic23舉行配置的一種辦法而并未挺直用法。該辦法在ddk包的emvdm642部分解釋文件中也已提及。因?yàn)樵趀cho例程中初始化驅(qū)動(dòng)程序人口和其他的音頻例程
11、一樣用法了默認(rèn)參數(shù),而默認(rèn)參數(shù)是通過調(diào)用ddk包中的evmdm642_edma_aic23164庫獲得的該庫不變則配置也不變,于是就會(huì)浮現(xiàn)上述問題。在明確了以上原理后通過實(shí)踐證實(shí),本文提供的以下三種配置辦法可以適應(yīng)各種應(yīng)用。辦法一既然默認(rèn)參數(shù)是通過調(diào)用evmdm642_edlna_a-ic23164庫獲得的那么自然可以通過修改該庫來達(dá)到修改參數(shù)的目的。ti提供的ddk包中包含了各種庫的源代碼這使得修改庫文件成為可能。本文用到的庫生成工程是tiddksrcaudioevmdm642名目下的evmdm642_edma_mc23_64pjt,只需要打開該工程修改其中aic23h中的默認(rèn)參數(shù),重新編譯
12、就能生成新的庫文件。這樣,全部的音頻例程都會(huì)默認(rèn)按修改過的參數(shù)運(yùn)行。這種辦法適合tlv320aic23參數(shù)配置相對固定的應(yīng)用場合。配置徹低通過調(diào)用evmdm642_ed_ma_aic23164庫初始化時(shí)舉行不用在應(yīng)用工程文件中添加任何附加代碼使得工程文件更簡潔可移植性更高。辦法二自定義符合標(biāo)準(zhǔn)結(jié)構(gòu)evmdm642_edma_aic23一devparams的結(jié)構(gòu)體,例如:然后將“_myparms”作為device params ptr在指定人口指針時(shí)替代默認(rèn)的0x0。這就符合ti推舉的辦法,在echo例程中的相關(guān)代碼也解釋了這種辦法。這種辦法能夠適應(yīng)幾乎任何用法狀況,初始化參數(shù)自定義十分明確,代碼易讀性較高。但是不建議像echo例程中那樣挺直包含默認(rèn)參數(shù)的頭文件最好參照該頭文件定義自己的結(jié)構(gòu)體。辦法三通過認(rèn)真分析生成evmdm642_edma_aic23164庫的源代碼,可以發(fā)覺對tlv320aic23寄存器的設(shè)置是通過aic23_setparams()函數(shù)來完成的。在大多數(shù)狀況下,只要修改寄存器值而不必修改標(biāo)準(zhǔn)結(jié)構(gòu)evmdm642_edma_aic23_devparams結(jié)構(gòu)體中的其他變量。所以可以調(diào)用aic23_setparams()函數(shù)來完成對tlv320aic23參數(shù)的配置。這樣就只需要定義1個(gè)符合標(biāo)準(zhǔn)的寄
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《藥品市場營銷學(xué)》課程標(biāo)準(zhǔn)
- 農(nóng)莊轉(zhuǎn)讓帳篷合同范本
- 化肥區(qū)域授權(quán)合同范本
- 上海電子營銷咨詢合同范例
- 余姚市房地產(chǎn)經(jīng)紀(jì)合同范本
- 接觸網(wǎng)中級工題庫與參考答案
- 化工總控工高級測試題及參考答案
- 道路交通安全模擬試題含參考答案
- 個(gè)人安全與社會(huì)責(zé)任心得體會(huì)
- 公司收購資產(chǎn)合同范本
- 《又見平遙》課件
- 噴涂設(shè)備點(diǎn)檢表
- GB/T 2831-2009光學(xué)零件的面形偏差
- 廣東省佛山市《綜合基礎(chǔ)知識(shí)》事業(yè)單位國考真題
- 02 第2章 城市與城市化-城市管理學(xué)
- 六年級上冊英語教案-Culture 2 Going Green 第二課時(shí) 廣東開心英語
- 警察叔叔是怎樣破案的演示文稿課件
- 2019石景山初三一模語文試題及答案
- 09式 新擒敵拳 教學(xué)教案 教學(xué)法 圖解
- CAD術(shù)語對照表
- 學(xué)術(shù)論文的寫作與規(guī)范課件
評論
0/150
提交評論