基于語音合成芯片MSP50C30和MELP的電子語音導(dǎo)游機(jī)
●具有ROM接口,23根地址線可尋址8M字節(jié);
●帶有28個軟件可編程雙向I/O口;
●具有內(nèi)嵌和外接兩種靈活的時鐘方式;
●內(nèi)嵌D/A,共有2種輸出方式;
●含7級堆棧,具有外部控制的中斷功能;
●可支持10kHz或8kHz語音采樣速率;
●可用軟件配置進(jìn)入低功耗睡眠狀態(tài);
●支持LPC、MELP、CELP、FM、PCM等多種壓縮算法。
MSP50C30與同步芯片相比,其最大優(yōu)點(diǎn)在于具有豐富的I/O接口和高達(dá)64M位的外部尋址能力,是長時間放音系統(tǒng)的理想選擇。
3 硬件電路設(shè)計(jì)
筆者設(shè)計(jì)的語音導(dǎo)游機(jī)的硬件原理圖如圖2所示。該系統(tǒng)以MSP50C30為核心,外接存儲電路、鍵盤接口電路、顯示電路、功放電路和DC-DC變換電路,其中MSP50C30完成語音的合成與控制功能。存儲器選用INTEL公司生產(chǎn)的64M位FLASH ROM 28F640J5,其地址線和數(shù)據(jù)分別與MSP50C30的地址線(A0~A22)和數(shù)據(jù)線(ID0~I(xiàn)D7)直接相連,語音數(shù)據(jù)已事先經(jīng)TI公司提供的專用軟件進(jìn)行壓縮,并通過編程器燒錄至FLASH ROM中。為便于數(shù)據(jù)更換,電路中還設(shè)計(jì)了存儲器和編程器的接口,因此可通過編程并關(guān)的切換將28F640J5與語音合成電路分離,從而可方便的實(shí)現(xiàn)語音數(shù)據(jù)的更換。該導(dǎo)游機(jī)的鍵盤采用4×4矩陣式鍵盤,共設(shè)16個按鍵,其中數(shù)字鍵10個(0~9),用來實(shí)現(xiàn)數(shù)字選取;6個功能鍵用來實(shí)現(xiàn)播放、暫停、快進(jìn)、快退等功能。鍵盤矩陣與MSP50C30端口PA0~PA7相接,系統(tǒng)通過鍵值掃描程序讀取按鍵狀態(tài)。液晶顯示采用3位LCD數(shù)碼顯示器;ED-S812并用MSP50C30的PB0~PB7作為控制數(shù)碼顯示的I/O口,其驅(qū)動芯片采用MC14543來實(shí)現(xiàn)BCD譯碼,交流驅(qū)動方波(80Hz~100Hz)通過74HC14振蕩電路產(chǎn)生。
為便于導(dǎo)游機(jī)的攜帶,系統(tǒng)采用兩節(jié)5#電池供電,由于系統(tǒng)需5V電源,故需設(shè)計(jì)DC-DC變換電路。設(shè)計(jì)時,選用了MAXIM公司MAX756,該器件的輸入電壓可低至0.7V,通過管腳2的選擇可輸出3V和5V兩種電壓。
當(dāng)系統(tǒng)復(fù)位后,MSP50C30啟動鍵值掃描程序,以使其從PA口讀取所按鍵值,并通過PB口將鍵值送出,經(jīng)過MC14543譯碼,可在液晶顯示器上顯示相應(yīng)的數(shù)字。然后MSP50C30通過內(nèi)部程序查表,送給語音合成器,合成后的語音從DAC+和DAC-腳送出,通過外部功放電路驅(qū)動揚(yáng)聲器發(fā)聲。系統(tǒng)所需時鐘由內(nèi)部晶振提供。
4 軟件電路設(shè)計(jì)
4.1 語音合成程序設(shè)計(jì)
MSP50C30采用MELP算法來合成語音,它是LPC的改進(jìn)算法,其優(yōu)點(diǎn)在于:MELP算法不需要專業(yè)的修音設(shè)備,語音數(shù)據(jù)由專用的壓縮軟件來完成,而且合成后的語音音質(zhì)良好。對于語音實(shí)時存儲系統(tǒng)來說,它是一種理想的壓縮算法。MELP算法的幀格式與LPC幀格式近似,只是在濁音幀中引入了基音抖動參數(shù)和清濁強(qiáng)度參數(shù)來對濁音幀的基音周期進(jìn)行修正。若每幀以20ms計(jì)算,則MELP算法最大壓縮率為62×50=3100bit/s(每幀被量化為62bit)。由于采用了變速率編碼方式,從而使平均壓縮率變得更低。另外,用戶還可根據(jù)自己對話音質(zhì)量的要求,按照自己的算法自行設(shè)計(jì)幀格式以產(chǎn)生更好的音質(zhì)。語音合成子程序的流程圖如圖3所示。
評論