摘 要: 介紹了Dialog公司的DA9034芯片在多功能數(shù)碼相框中的應(yīng)用。利用DA9034的電源管理功能及音頻子系統(tǒng),實(shí)現(xiàn)嵌入式處理器及外設(shè)的電源供給和音頻編解碼。實(shí)驗(yàn)證明,DA9034的應(yīng)用使系統(tǒng)集成度大大提高,功耗大幅下降,穩(wěn)定性也有一定提升,并且成本不高,具有廣泛的應(yīng)用前景。
關(guān)鍵詞: DA9034;電源管理;音頻子系統(tǒng);數(shù)碼相框;軟件模型
?
近年來,消費(fèi)類電子產(chǎn)品的集成度和功耗受到越來越多的關(guān)注,特別是對于一些使用電池供電的手持式產(chǎn)品,消費(fèi)者的要求越來越高。在這樣的背景下,若選用傳統(tǒng)的、使用分立元件設(shè)計(jì)電源模塊的設(shè)計(jì)方案,不但其集成度達(dá)不到要求,而且功耗也難以降低。而電源管理芯片的應(yīng)用將使這樣的情況大大改善,不但可以有效減小PCB尺寸、提高系統(tǒng)集成度,而且可以方便地實(shí)現(xiàn)功耗的控制,動態(tài)智能地切換系統(tǒng)的功耗模式以延長電池的使用時間。這對于生產(chǎn)廠家和消費(fèi)者來說均具有重要的現(xiàn)實(shí)意義,也是衡量一個產(chǎn)品優(yōu)劣的重要標(biāo)準(zhǔn)。
1 基于DA9034的電源管理模塊設(shè)計(jì)
圖1所示為DA9034模塊框圖,DA9034集電源管理、音頻編解碼及觸摸屏接口于一體, 是為快速增長的新興產(chǎn)品(如智能手機(jī)、便攜式多媒體播放機(jī)、PDA及數(shù)碼相框等)所采用的最新一代應(yīng)用處理器量身打造的高集成度芯片。DA9034在基于PXA310的多功能數(shù)碼相框中的使用,使系統(tǒng)更加小型化、輕巧化;先進(jìn)的電源管理功能使系統(tǒng)根據(jù)實(shí)際情況選擇合適的功耗模式,有效延長電池壽命。
1.1 處理器及外設(shè)電源分配
由圖1可知,DA9034集成了兩路高效BUCK電路、一路升壓變換電路(BOOST)、18路高性能可編程LDO穩(wěn)壓器(具有極高的電源電壓抑制比和極低的靜態(tài)電流)[1],可向多功能數(shù)碼相框的CPU及所有其他IC提供低噪聲的可調(diào)電壓,表1所示為系統(tǒng)電源分配表。通用LED驅(qū)動電路可以驅(qū)動工作狀態(tài)指示燈,根據(jù)不同的功耗模式及是否充電,點(diǎn)亮不同顏色的LED燈并控制其閃爍的頻率。
上述各組電源的輸出電壓大小都可以編程調(diào)節(jié),處理器通過I2C總線設(shè)置DA9034相應(yīng)的寄存器,控制各組電源的開或關(guān)以及電壓大小。當(dāng)進(jìn)入低功耗模式時,可以通過關(guān)閉各外設(shè)電源來達(dá)到減小功耗的目的。
1.2 LCD背光設(shè)計(jì)
因?yàn)?a class="innerlink" href="http://ihrv.cn/tags/電池電壓" title="電池電壓" target="_blank">電池電壓為4.2 V左右,不能滿足背光電源的要求,所以使用DA9034的BOOST電路將電池電壓升至背光所需電壓(最高可達(dá)25 V,1.3 A),其電路如圖2所示。BOOST_SW是一個脈沖寬度可調(diào)的PWM信號,用于控制Q1(場效應(yīng)管)的導(dǎo)通或關(guān)閉。IF為電流反饋信號,用作過流監(jiān)控,VF為輸出電壓反饋信號,DA9034可根據(jù)反饋來調(diào)整PWM波的占空比,從而調(diào)節(jié)背光亮度。圖中IF與VF信號分別與DA9034的BOOST_SENSEP、BOOST_FB相連。
?
1.3 電池充電電路
基于DA9034的嵌入式系統(tǒng)使用電池供電,并能對電池進(jìn)行充電,電路如圖3所示。VBAT_OTG為OTG(On The Go)充電泵DC/DC變換器的輸入電壓,由電池電壓提供;OTG_CPB和OTG_CPT為電壓輸出端,可以在OTG模式下為外部從設(shè)備供電。Q1和Q2為P型場效應(yīng)管,作為開關(guān)控制充電電路的導(dǎo)通和關(guān)閉,CH_GATE和CH_SOURCE引腳作為控制端,分別與兩個場效應(yīng)管的柵極、源極相連。VCHG為外部電源檢測引腳,與DA9034內(nèi)部電壓比較器相連,用來檢測是否有充電器插上。若檢測到有充電器插上,則給處理器發(fā)送一個中斷請求信號以啟動充電。電阻R52通過CH_SENSEP、CH_SENSEN引腳與內(nèi)部比較器相連,監(jiān)控充電電流,當(dāng)充電電流大于預(yù)設(shè)值時,就會自動關(guān)閉充電,以免損壞電池和充電電路。VBAT_CHG和TBAT引腳分別對電池電壓和電池溫度進(jìn)行檢測,根據(jù)檢測到的電池電壓決定采用預(yù)充電模式還是快速充電模式;若檢測到電池電壓過高也可以自動關(guān)閉充電電路。
?
2 音頻模塊及觸摸屏接口設(shè)計(jì)
DA9034的音頻子系統(tǒng)具有先進(jìn)的電源管理控制,使靜態(tài)電流最小化,可以在控制功耗的前提下為便攜式嵌入式產(chǎn)品提供高品質(zhì)的音樂,圖4為由DA9034實(shí)現(xiàn)的音頻模塊。
DA9034音頻子系統(tǒng)的揚(yáng)聲器驅(qū)動器輸出功率可達(dá)0.5 W,帶音量及雜音控制,播放效果較好,還包括無電容低失真16 Ω耳機(jī)驅(qū)動器及麥克風(fēng)放大器。音頻模塊與主處理器之間的控制數(shù)據(jù)通過I2C總線傳輸,音頻數(shù)據(jù)通過另外兩組總線傳輸,其中使用I2S總線的是采樣頻率可編程(最高可達(dá)48 kHz)的24位高保真立體聲DAC接口(HiFi stereo DAC interface),與PXA310的第三個SSP 接口(Synchronous Serial Ports,同步串行口)相連;使用PCM總線的是濾波可編程、采樣頻率可為8 kHz、16 kHz或32 kHz的語音編碼器接口,與PXA310的第四個SSP 接口相連。該音頻子系統(tǒng)具有先進(jìn)的電源管理控制,可使靜態(tài)電流最小化,其功耗在8 kHz聲音模式下僅為9 mW,在48 kHz高保真模式下為35 mW[2]。
DA9034還集成了觸摸屏接口,TSPX、TSMX、TSMY、TSPY 4根信號連接到四線制電阻式觸摸屏上。
3 軟件設(shè)計(jì)
相關(guān)的軟件主要包括DA9034的驅(qū)動模型設(shè)計(jì)以及與電源管理(BUCK電路、LDO、BOOST電路、電池充電等)、音頻編解碼、觸摸屏等相關(guān)寄存器的設(shè)置。
3.1 DA9034軟件模型
DA9034軟件模型如圖5所示。位于最上層的應(yīng)用程序通過調(diào)用操作系統(tǒng)的函數(shù)(系統(tǒng)調(diào)用)與操作系統(tǒng)交互。操作系統(tǒng)介于應(yīng)用程序與驅(qū)動程序之間,它不需要直接與硬件進(jìn)行交互,操作系統(tǒng)會公開一些預(yù)先定義的驅(qū)動程序接口,而驅(qū)動程序則會實(shí)現(xiàn)這些接口[3]。操作系統(tǒng)就通過這些接口與驅(qū)動程序交互。
驅(qū)動程序是操作系統(tǒng)與硬件之間的橋梁,DA9034中最主要的驅(qū)動程序有:BACKLIGHT(背光)、POWER BUTTON(電源按鍵)、TOUCH(觸摸屏)、BATTERY(電池充電)、PMIC(電源管理)、AUDIO(音頻)。這些驅(qū)動程序通過“事件”和“驅(qū)動函數(shù)接口”的形式與DA9034服務(wù)層交互(DA9034服務(wù)層和底層I2C操作以動態(tài)鏈接庫Micco.dll形式存在)。
DA9034服務(wù)層通過ISR(中斷服務(wù)例程)和底層I2C操作與PXA310的硬件聯(lián)系,最終將上層軟件的操作映射為對PXA310“IO終端”和“I2C控制器”的硬件操作。PXA310的硬件部分通過外部中斷信號及I2C總線與DA9034的相應(yīng)接口進(jìn)行連接,實(shí)現(xiàn)與DA9034的通信。
DA9034與PXA310之間音頻數(shù)據(jù)的傳輸通過I2S總線和PCM總線實(shí)現(xiàn),DA9034的I2S接口與PCM接口分別與PXA310的SSP控制器接口相連。與音頻相關(guān)的驅(qū)動AUDIO直接通過操作SSP控制器進(jìn)行數(shù)據(jù)傳輸。
3.2 DA9034寄存器設(shè)置
程序通過I2C總線對DA9034的寄存器進(jìn)行讀寫,從而對電源進(jìn)行管理、對音頻數(shù)據(jù)進(jìn)行編解碼。下面以BUCK1為例說明DA9034寄存器的設(shè)置方法。
BUCK1是一路帶有動態(tài)電壓控制DVC(Dynamic Voltage Control)的DC-DC變換器,默認(rèn)的輸出電壓和最大電流為1.4 V和800 mA,最大輸出電流為1.4 A[4]。與BUCK1有關(guān)的寄存器設(shè)置步驟如下:
(1)將寄存器VCC1(地址為0x20)的APPS_GO位設(shè)置為0,表示暫時先維持BUCK1的當(dāng)前設(shè)置。
?。?)設(shè)置輸出電壓選擇。有兩個寄存器(ADTV1和ADTV2,地址分別為0x23和0x24)可以設(shè)置BUCK1的輸出電壓值,由VCC1寄存器的APPS_SEL位來選擇其中一個。該位置0表示選擇ADTV1的設(shè)置;置1表示選擇ADTV2的設(shè)置。
?。?)設(shè)置輸出電壓大小。寄存器ADTV1和ADTV2都可以設(shè)置輸出電壓大小,并且這兩個寄存器結(jié)構(gòu)完全一樣。下面以ADTV1為例說明,表2所示為ADTV1寄存器的結(jié)構(gòu)。
該寄存器的低5位用來設(shè)置輸出電壓大小,當(dāng)APPS_TRIM1<4:0>=00000時,輸出電壓為0.725 V;當(dāng)APPS_TRIM1<4:0>=11111時,輸出電壓為1.500 V,中間APPS_TRIM1<4:0>的值每增加1,輸出電壓遞增25 mV。
?。?)設(shè)置電壓變化率。通過BUCK1_AVRC寄存器設(shè)置,包括電壓變化步長和時間軸步長的設(shè)置,BUCK1_AVRC寄存器結(jié)構(gòu)如表3所示。
APPS_RATE<2:0>用來設(shè)置時間軸步長,APPS_RATE
<2:0>從“000”到“111”可以將時間軸變化步長設(shè)置為從1 μs~64 μs。
APPS_STEP<1:0>用來設(shè)置電壓變化步長,APPS_STEP<1:0>從“00”到“11”可以將電壓變化步長設(shè)置為從3.125 mV~12.5 mV。
?。?)設(shè)置生效。將寄存器VCC1的APPS_GO位置1,使以上設(shè)置生效。
BUCK1還有一種睡眠模式,該模式下BUCK1運(yùn)行在高效率的極低電流狀態(tài)。睡眠模式的實(shí)現(xiàn)需要先將BUCK_SLEEP寄存器的BUCK1_nSLEEP_ENABLE位置1,以允許當(dāng)nSLEEP引腳上出現(xiàn)有效的低電平時使BUCK1進(jìn)入睡眠模式。
本文詳細(xì)介紹了DA9034在基于PXA310的多功能數(shù)碼相框中的應(yīng)用,包括電源分配、LCD背光電路、電池充電電路、音頻及觸摸屏電路等部分的設(shè)計(jì),并且分析了DA9034的軟件模型及通過寄存器設(shè)置控制DA9034各模塊的方法。DA9034的應(yīng)用使PCB尺寸大大減小,功耗控制更加合理,系統(tǒng)穩(wěn)定性也有了很大提升,而且成本較低,可以在較為復(fù)雜的嵌入式系統(tǒng)中廣泛應(yīng)用。
參考文獻(xiàn)
[1] 何旭東.2006年十大熱門模擬器件新品大賞[DB/OL].http://www.esmchina.com/ART_8800073743_1100_0_0_4300_
d1186538.HTM,2007-02-01.
[2] Marvell Corporation.PXA30x and PXA31x?processors graph ics and input controller?developers manual[DB/OL].http://www.marvell.com,2007-12-14.
[3] 周毓林,寧楊,陸貴強(qiáng),等.Windows CE.net內(nèi)核定制及應(yīng)用開發(fā)[M].北京:電子工業(yè)出版社,2006:213-215.
[4] Dialog Semiconductor Corporation.DA9034DSza.Datasheet[DB/OL].http://www.dialog.com,2007.