<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于EP7211實(shí)現傳呼信息實(shí)時(shí)語(yǔ)音合成和播放原理及設計

基于EP7211實(shí)現傳呼信息實(shí)時(shí)語(yǔ)音合成和播放原理及設計

作者: 時(shí)間:2010-03-15 來(lái)源:網(wǎng)絡(luò ) 收藏

2.3 PDA系統的體系結構

PDA系統中嵌入式處理器進(jìn)行數據處理,解碼芯接收并進(jìn)行解碼,LCD提供數據輸出顯示,觸摸屏提供用戶(hù)輸入接口,Flash用來(lái)存儲應用程序和數據,SRAM為程序運行提供內存空間,電源電路為嵌入式處理器和外圍設備提供所需要工作電壓。

嵌入式處理器是Cirrus Logic公司專(zhuān)門(mén)為低成本、超低功耗的嵌入式應用的,包含ARM7TDMI處理器內核和豐富的外圍接口。外圍接口有CODEC音頻接口、SPI串行A/D接口、單色LCD接口、DRAM接口、紅外接口、2個(gè)PWM接口、時(shí)鐘RTC以及電源檢測接口。的內核電路工作在2.5V,而外圍電路工作在3.3V;可根據具體情況對內核的時(shí)鐘進(jìn)行動(dòng)態(tài)編程控制,可工作在18、36、49和74MHz。另外EP7211還有3種基本供電模式:正常操作(operating)、空閑(idle)和等待(standby)。在等待模式,主時(shí)鐘被關(guān)斷,整個(gè)CPU及相關(guān)外圍(除中斷和RTC)也關(guān)斷,但可通過(guò)中斷或按鈕來(lái)喚醒。

系統軟件開(kāi)發(fā)平臺采用了我們自主開(kāi)發(fā)研制的、專(zhuān)門(mén)面向嵌入式應用系統開(kāi)發(fā)的XGW平臺。XGW開(kāi)發(fā)平臺采用消息驅動(dòng)機制,是C語(yǔ)言開(kāi)發(fā)。它功能強大、模塊化、擴展性強、產(chǎn)品升級容易,總體框架如圖5所示。

圖5全面反應了XGW開(kāi)發(fā)平臺的體系結構,包括事件消息驅動(dòng)機制、內存管理、字符和圖形顯示輸出、圖形組件庫等。圖形組件庫中的編輯框、列表框、按鈕等為用戶(hù)應用程序開(kāi)發(fā)提供系統應用編程接口A(yíng)PI。不過(guò),XGW平臺對于系統硬件的中斷響應沒(méi)有提供統一的入口和出口,需要開(kāi)發(fā)人員單獨處理。XGW開(kāi)發(fā)平臺的消息分為鼠標消息、鍵盤(pán)消息和定時(shí)器消息等3類(lèi)。

2.4 中斷服務(wù)例程

嵌入式處理EP7211本身提供的外設錄放Codec(coder/decoder)芯片可以的錄入和功能。該模塊提供2個(gè)獨立的16字節長(cháng)的數據發(fā)送和接緩沖區(FIFO),其為全雙工模式,數字據點(diǎn)發(fā)速率是64kbps。芯片自身提供工作時(shí)鐘、定時(shí)脈沖以及數據串/并和并/串轉換功能。編程人員通過(guò)設置EP7211相應的控制寄存器使能這些項功能,則每當數據收發(fā)緩沖區半慢或者半空時(shí)(8字節),芯片自身就會(huì )產(chǎn)生一次中斷信號供外部處理。理論計算芯片中斷速率是1ms/次。

語(yǔ)音中斷服務(wù)例程主要完成的工作是,當產(chǎn)生語(yǔ)音中斷時(shí),仍然有數據需要,則向語(yǔ)音數據發(fā)送緩沖區FIFO中寫(xiě)入指定數據,剩下的工作由Codec芯片本身來(lái)完成。中斷服務(wù)例程ISR的偽代碼如下(因為具體代碼沒(méi)有通用性,故此處用偽碼描述):

void IRQ_Codec_Handler(void)

{

while(檢測系統狀態(tài)寄存器,發(fā)現語(yǔ)音芯片數據發(fā)送緩沖區FIFO非滿(mǎn))

{

if(已經(jīng)播放過(guò)的語(yǔ)音數據長(cháng)度給定的需要播放的語(yǔ)音數據長(cháng)度)

{

向語(yǔ)音芯片發(fā)送數據緩沖區FIFO寫(xiě)入指定數據;

調整已經(jīng)播放過(guò)的語(yǔ)音數據長(cháng)度;

if(已經(jīng)播放過(guò)的語(yǔ)音數據長(cháng)度>=給定的需要播放的語(yǔ)音數據長(cháng)度)//結束

{

禁止數據發(fā)送緩沖區中斷;

復位各相關(guān)的全局變量;

程序返回;

}

}

else

{

向語(yǔ)音芯片發(fā)送數據緩沖區FIFO寫(xiě)入默認數據

0XFF;

}

}

}

3 試驗結構和分析

由于在階段充分考慮過(guò)語(yǔ)音算法的大運算量和系統的性要求,故我們在具體的時(shí)候也采取了一些措施,比較突出的有:用ARM匯編語(yǔ)言來(lái)實(shí)現關(guān)鍵性的函數代碼;語(yǔ)音時(shí)提高處理器EP7211的工作頻率(處理器正常工作頻率是18MHz);對于一些常用的三角函數計算,采用查表的方式等來(lái)加快程序執行速度。在PDA樣機測試中,單字符時(shí)間在650ms左右,基本上能夠滿(mǎn)足實(shí)際應用需求。數據語(yǔ)音庫經(jīng)過(guò)處理之后,占用了729 560字節也能夠滿(mǎn)足本PDA系統的存儲的要求。

當PDA系統收到1條個(gè)人時(shí),在語(yǔ)音庫的支持下,立刻啟動(dòng)語(yǔ)音合成算法,逐個(gè)進(jìn)行字符語(yǔ)音合成。當第1個(gè)字節語(yǔ)音合成結束后,立刻啟動(dòng)語(yǔ)音中斷服務(wù)例程進(jìn)行語(yǔ)音播放。這樣收到的個(gè)人傳呼,前臺逐個(gè)字符解碼時(shí),其后臺語(yǔ)音播放也在進(jìn)行。根據實(shí)際測試參數,基本上滿(mǎn)足了系統的性要求。

從一定角度看,單字符650 ms的語(yǔ)音合成時(shí)間基本能夠滿(mǎn)足實(shí)際應用需要,但還是希望能夠進(jìn)一步減小這個(gè)值。這由于我們對ARM算是器的使用還處在研究階段。ARM本身提供了16位的Thumb指令集和32位的ARM指令集,而且兩者在某些方面表現出較大差別。一般來(lái)講,Thumb代碼長(cháng)度是ARM代碼長(cháng)度的65%,而執行效率要經(jīng)后者高出60%。但在某些方面,32位ARM指令集也會(huì )表現出其優(yōu)于16位Thumb指令集的強大功能;同時(shí)該處理器系統支持ARM指令庥和Thumb指令集混合編程模式。隨著(zhù)對二者差別和各自?xún)?yōu)勢的深入理解,結合本系統的硬件體系結構,采用有效的指令集混合編程模式將會(huì )使程序執行效率進(jìn)一步提高,從而使實(shí)時(shí)性得到進(jìn)一步加強。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>