如何用單片機(jī)89C52設(shè)計(jì)火控系統(tǒng)語音報(bào)讀?
引言
本文引用地址:http://m.butianyuan.cn/article/201809/391684.htm在現(xiàn)代大多控制系統(tǒng)中,通常使用發(fā)光二極管LED、數(shù)碼管、液晶顯示器、蜂鳴器等進(jìn)行狀態(tài)/結(jié)果顯示和故障報(bào)警,如果在顯示報(bào)警儀表上采用數(shù)字語言技術(shù),使適合用聽覺傳送的信息用語言傳送,就可以發(fā)揮聽覺的優(yōu)勢(shì),彌補(bǔ)完全用視覺信號(hào)傳遞信息的不足。近年來隨著語音電路的迅速發(fā)展,語音芯片已經(jīng)以其直觀、生動(dòng)、與單片機(jī)接口方便等優(yōu)勢(shì),越來越廣泛的應(yīng)用于單片機(jī)控制系統(tǒng)中了,成為現(xiàn)代控制系統(tǒng)中人機(jī)聯(lián)系的一個(gè)友好界面。
1 語音電路分析
語言處理合成芯片很多,大多采用:語言信號(hào)-駐極話筒-電壓-濾波放大-AD轉(zhuǎn)換數(shù)字信號(hào)存儲(chǔ)。放音時(shí)采用:數(shù)字信號(hào)-DA轉(zhuǎn)換、輸出,這在實(shí)際使用時(shí)存在著以下不足:
(1)要使語音不失真地被采樣,要求采樣頻率fs≥8 000 Hz。在小系統(tǒng)中,以這樣的速度采樣語音只能是很短的時(shí)間,若要稍長一段時(shí)間,勢(shì)必占用很大的存貯空間。
(2)系統(tǒng)構(gòu)成成本高,由于需要ADC,DAC,專用語音芯片及相關(guān)電路。
(3)存在不同程度的失真(信號(hào)采樣和恢復(fù))。
(4)使用不靈活,只能錄什么,放什么,難以實(shí)現(xiàn)字、詞、句的組合。
ISD1420語音芯片是美國ISD公司出品的新型優(yōu)質(zhì)單片錄放音電路,采用了直接模擬量存儲(chǔ)技術(shù)DAST。主要由振蕩器、語音存儲(chǔ)單元、前置放大器、自動(dòng)增益控制電路、抗干擾濾波器、輸出放大器組成。一個(gè)最小的錄放系統(tǒng)僅由一個(gè)麥克風(fēng)、一個(gè)喇叭、兩個(gè)按鈕、一個(gè)電源、少數(shù)電阻電容組成。錄音內(nèi)容存人永久存儲(chǔ)單元,提供零功率信息存儲(chǔ),這個(gè)獨(dú)一無二的方法是借助于美國ISD公司的專利——多電平直接模擬存儲(chǔ)技術(shù)(DAST TM)實(shí)現(xiàn)的。利用它,語音和音頻信號(hào)被直接存儲(chǔ),以其原本的模擬形式進(jìn)入EEPROM存儲(chǔ)器及分段輸出,因而失真小,能夠非常真實(shí)、自然地再現(xiàn)語音效果,避免了一般固體錄音電路因量化和壓縮造成的量化噪聲和“金屬聲”。使用方便,不需專用語音開發(fā)工具,成本低廉。直接模擬存儲(chǔ)允許使用一種單片固體電路方法完成其原本語音的再現(xiàn)。不僅語音質(zhì)量優(yōu)勝,而且斷電語音保護(hù)。因而在現(xiàn)代技術(shù)上得到廣泛使用。主要特點(diǎn)如下:
(1)使用方便的單片錄放系統(tǒng),外部元件最少
(2)重現(xiàn)優(yōu)質(zhì)原聲,沒有常見的背景噪音
(3)信息可保存100年,可反復(fù)錄放10萬次
(4)較強(qiáng)的分段選址能力可處理多達(dá)160段信息
(5)邊沿/電平觸發(fā)放音
(6)無耗電信息存儲(chǔ),省掉備用電池
(7)具有自動(dòng)節(jié)電模式
(8)錄或放后立即進(jìn)入維持狀態(tài),僅需0.5μA電流
(9)工作電壓:5 V
(10)工作電流:典型值15 mA,最大值30 mA(16歐姆)
2 系統(tǒng)構(gòu)成
本語音電路作為火控計(jì)算機(jī)的一部分,主要是對(duì)目標(biāo)距離進(jìn)行實(shí)時(shí)報(bào)讀,供指揮人員提供觀察和決策,以選擇最佳時(shí)機(jī)發(fā)出擊發(fā)命令。語音電路組成框圖如圖1所示。由火控計(jì)算機(jī)主機(jī)發(fā)出RS232電平信號(hào),經(jīng)電平轉(zhuǎn)換后,為單片機(jī)AT89C52所接收。單片機(jī)AT89C52一方面控制高亮度數(shù)碼管顯示狀態(tài)信息,同時(shí)控制語音芯片ISD1420實(shí)時(shí)報(bào)讀目標(biāo)距離。為指揮人員提供提示。
3 語音信號(hào)控制
3.1 語音電路特性
選用語音存儲(chǔ)/再生芯片ISD1420。該電路采用EEP-ROM存儲(chǔ)方法將模擬語音數(shù)據(jù)直接寫入半導(dǎo)體存儲(chǔ)單元中,具有音質(zhì)自然、可反復(fù)錄放、抗干擾、低功耗等許多優(yōu)點(diǎn)。ISD1420放音時(shí)間為20秒;最多可分為160段,每段段長最少125 ms;輸入采樣* kHz;100 000次錄音周期;5 V單電源供電,放音電流15 mA,維持電流0.5μA。完全滿足設(shè)計(jì)需要。
ISD1420芯片地址引腳(A0~A7)輸入有雙重功能,根據(jù)地址中的A6,A7的電平狀態(tài)決定A0~A7的功能。如果A6,A7有一個(gè)是低電平,A0~A7輸入全解釋為地址位,作為起始地址用。地址位僅作為輸入端,在操作過程中不能輸出內(nèi)部地址信息。根據(jù)PLAYL、PLAYE或REC的下降沿信號(hào),地址輸入被鎖定。如果A6,A7同為高電平時(shí),它們即為模式位(見表1)。
使用操作模式有兩點(diǎn)要注意:
(1)所有初始操作都是從0地址開始,0地址是1420存儲(chǔ)空間的起始端,以后的操作可根據(jù)模式的不同。而從不同的地址開始工作。當(dāng)電路中錄放音轉(zhuǎn)換或進(jìn)入省電狀態(tài)時(shí),地址計(jì)數(shù)器復(fù)位為0。
(2)當(dāng)PLAYL、PLAYE或REC變?yōu)榈碗娖?,同時(shí)A6,A7為高電平時(shí),執(zhí)行對(duì)應(yīng)操作模式。這種操作模式一直執(zhí)行到下一個(gè)低電平控制輸入信號(hào)出現(xiàn)為止,這一刻現(xiàn)行的地址/模式信號(hào)被取樣并執(zhí)行。操作模式可以與微控制器一起使用,也可用硬件連線得到所需系統(tǒng)操作。
通過以上介紹可知,160段對(duì)應(yīng)著160個(gè)地址,由A0~A7組合產(chǎn)生。要實(shí)現(xiàn)分段播放先要進(jìn)行錄音,錄音可以采用高級(jí)的聲音處理軟件一次把聲音灌進(jìn)語音模塊里頭也可以采用分段錄音的方法進(jìn)行分段錄制。在使用ISD1400系列的語音芯片時(shí),應(yīng)注意在REC和VCC之間接一個(gè)0.1 mF的電容,以防止在上電時(shí)出現(xiàn)錄音操作而破壞原來錄制的信息。
根據(jù)火控計(jì)算機(jī)系統(tǒng)報(bào)讀的需要,放音內(nèi)容為軍用數(shù)字發(fā)音:“幺、兩、三、四、五、六、拐、八、勾,洞”。我們利用A0~A7引腳的地址功能,通過聲音處理軟件結(jié)合ISD1420開發(fā)錄放板,一次把聲音灌進(jìn)語音模塊ISD1420中。這樣每一個(gè)數(shù)字發(fā)音都對(duì)應(yīng)一個(gè)內(nèi)部存儲(chǔ)空間??梢酝ㄟ^調(diào)整語音芯片的地址(P2口控制)來選擇合適的數(shù)據(jù)播放。
由于在戶外使用,要求發(fā)出的聲音具有一定的響度,即要求語音電路有較大功率輸出。語音芯片ISD1420內(nèi)部輸出級(jí)帶有放大器,其直接的揚(yáng)聲器驅(qū)動(dòng)功率為12.2 mW(16Ω負(fù)載),這距離我們的實(shí)際需要相差很大,通常1 W以下的揚(yáng)聲器可用LM386、D2283 D2822、MC34119、TA7368等芯片驅(qū)動(dòng),1 W~lO w的揚(yáng)聲器用TDA2003、LA4440芯片驅(qū)動(dòng),因此后級(jí)功放必須保證能在低電壓下輸出大功率信號(hào),以推動(dòng)揚(yáng)聲器發(fā)聲,在這里我們選用了LA4440芯片驅(qū)動(dòng)。
3.2 語音電路構(gòu)成
語音部分電路設(shè)計(jì)見圖2所示,在該電路中設(shè)計(jì)了以單片機(jī)89C52為核心的語音報(bào)讀電路,89C52的P2口用來實(shí)現(xiàn)地址選擇,放音時(shí)先由軟件給出一個(gè)地址,就是一個(gè)語音段首址,在這一放音過程中地址是不能變化的;LA4440為音頻功放電路,將ISD1420的音頻輸出放大推動(dòng)喇叭,通過調(diào)整電阻R1的阻值可控制音量大小;語音芯片ISD1420周圍的RC電路主要為了減小噪聲的影響;MAX813L則作為看門狗電路為單片機(jī)AT89C52提供上電復(fù)位和運(yùn)行監(jiān)控。
MAX232將火控計(jì)算機(jī)主機(jī)送過來的RS232電平信號(hào)轉(zhuǎn)換成TTL電平并送到單片機(jī)AT89C52,單片機(jī)AT89C52對(duì)火控計(jì)算機(jī)主機(jī)的狀態(tài)信息實(shí)時(shí)顯示并進(jìn)行報(bào)讀,通過引腳P3.6控制ISD1420的放音,P2口用來調(diào)整放音地址。通過按地址分時(shí)播放就可以實(shí)現(xiàn)分段播放了,而分段播放的最大優(yōu)點(diǎn)是可以只要一些基本的聲音就可以合成一段話。這樣可以節(jié)省語音模塊的空間,提高產(chǎn)品的靈活性,降低生產(chǎn)成本。分段播放可以用在一些發(fā)音的基本元素不多,但組合發(fā)音變化比較多的地方。
4 軟件設(shè)計(jì)
AT89C52的軟件設(shè)計(jì)相對(duì)簡單。主要包括與火控計(jì)算機(jī)主機(jī)的串行通訊程序(11.0592 MHz晶振、4800波特率、八位異步方式),放音控制程序,顯示控制程序及看門狗程序。放音控制程序根據(jù)火控計(jì)算機(jī)系統(tǒng)的要求及實(shí)際情況,只對(duì)火控計(jì)算主機(jī)傳送來信息的目標(biāo)距離量進(jìn)行實(shí)時(shí)報(bào)讀。目標(biāo)距離是實(shí)施射擊和掌握開火時(shí)機(jī)的重要依據(jù)。它的報(bào)讀原則是:“遠(yuǎn)距離報(bào)讀間隔大一些,近距離報(bào)讀間隔小一些,開火報(bào)到點(diǎn)上”。報(bào)讀時(shí),根據(jù)目標(biāo)快速運(yùn)動(dòng)的特點(diǎn),可以省略報(bào)讀字節(jié),提高反應(yīng)速度和報(bào)讀的清晰度。電平控制放音中開始地址和播放時(shí)間也是必不可少的,只要控制了這兩個(gè)參數(shù)就可以確定播出內(nèi)容。
5 結(jié)束語
按上述方法設(shè)計(jì)出的語音電路報(bào)讀電路在某火控系統(tǒng)中得到實(shí)際應(yīng)用,實(shí)踐證明運(yùn)行可靠、準(zhǔn)確,具有一定的使用價(jià)值。
評(píng)論