安陽工學(xué)院計算機科學(xué)與信息工程學(xué)院 張捐凈 聶萌瑤
單片機語音系統(tǒng)的設(shè)計
安陽工學(xué)院計算機科學(xué)與信息工程學(xué)院 張捐凈 聶萌瑤
單片機語音系統(tǒng)的設(shè)計,主要包括以下幾個主要部分:單片機控制模塊、語音采集和處理模塊以及信號放大模塊,其中單片機控制模塊是系統(tǒng)設(shè)計的核心模塊。此系統(tǒng)在完成語音錄放系統(tǒng)的基礎(chǔ)上實現(xiàn)公交車站報站的功能,它可以實現(xiàn)8個站點的順序、循環(huán)播報以及單個站點的循環(huán)播報,具有廣闊的應(yīng)用前景。
單片機;語音;報站
經(jīng)濟(jì)的快速發(fā)展和人們生活水平的提高,使得人們對音樂的需求越來越高,播放音樂的語音系統(tǒng)的應(yīng)用也越來越普遍。隨著計算機技術(shù)和數(shù)字電子技術(shù)的的發(fā)展,使得語音技術(shù)的發(fā)展也迅速崛起,現(xiàn)在的語音系統(tǒng)產(chǎn)生了質(zhì)的飛躍,出現(xiàn)了各種容量大、體積小、音質(zhì)好的語音系統(tǒng),比如MP3,MP4,手機等。這些產(chǎn)品為人們的生活帶來了極大的便利。本文研究分析了以上電子產(chǎn)品,并提出了基于單片機的語音系統(tǒng)的設(shè)計,實現(xiàn)公交車站報站的功能,它可以實現(xiàn)8個站點的順序、循環(huán)播報以及單個站點的循環(huán)播報。
語音系統(tǒng)的設(shè)計主要是通過單片機控制語音芯片ISD4004來實現(xiàn)語音的錄放的功能。為了實現(xiàn)語音信號錄制的相對“干凈”,濾除濾除語音頻帶以外的噪聲輔助添加了濾波電路和信號放大電路。同樣在語音播放的時候,為了使播報更加清晰,也添加了相應(yīng)的濾波和信號放大電路。系統(tǒng)總體結(jié)構(gòu)框圖如下圖1所示。
圖1 系統(tǒng)結(jié)構(gòu)框圖
單片機采用最常見的STC89C52,它是一種低功耗、高性能CMOS8位微控制器,具有8K字節(jié)系統(tǒng)可編程Flash存儲器。既能滿足系統(tǒng)需求,又便與控制。
語音芯片選擇ISD4004,它可以和單片機采用SPI模式進(jìn)行通信,即高速同步串行口,是一種標(biāo)準(zhǔn)的四線同步雙向串行總線。采用此芯片有如下優(yōu)點:占用單片機的端口資源少,只需要單片機模擬SPI的通信模式控制語音的錄制和播放就能滿足系統(tǒng)要求,同時占用單片機內(nèi)部的資源也較少。
液晶顯示芯片的選擇LCD5110。為了滿足人性化的控制,加入了液晶顯示模塊。此芯片具有如下優(yōu)點:體積小,功耗低,采用通用接口芯片,兼容性高,5110是84x48 的點陣LCD,可以顯示4 行漢字。
利用矩陣鍵盤設(shè)置16個數(shù)字鍵,其中1—8號鍵分別代表各站點,按下其中的一個按鍵就會播報它所對應(yīng)的語音信息,這些信息是提前錄制到語音芯片ISD4004當(dāng)中的。每一個按鍵分配一個固定的存儲空間,1—8號鍵的空間地址分別0,105,210,315,420,525,630,735,它可以存放的語音長度是20秒,系統(tǒng)在實現(xiàn)基本播報的基礎(chǔ)上,為了使系統(tǒng)更加完善,添加了以下按鍵:9--12號鍵播放音樂,13號鍵單站循環(huán)播報,14號鍵站點循環(huán)播報,15號鍵單站順序播報,16號鍵系統(tǒng)介紹。
單片機與ISD4004之間的通信采用SPI模式(serial peripheral interface,SPI)。此種方式的接口一般使用4條線:串行時鐘線(SCK)、主機輸入/從機輸出數(shù)據(jù)線MISO、主機輸出/從機輸入數(shù)據(jù)線MOSI和低電平有效的從機選擇 。系統(tǒng)使用的STC89C52單片機本身不帶SPI串行總線接口,采用軟件模擬SPI方式實現(xiàn),使用P1口的P1.0~P1.3口模擬包括串行時鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出。
系統(tǒng)的軟件部分主要包括語音模塊設(shè)計和液晶顯示模塊以及系統(tǒng)鍵盤控制模塊三部分的設(shè)計。系統(tǒng)啟動之后單片機上電,系統(tǒng)進(jìn)入初始界面。按下錄音鍵進(jìn)行錄音,松開即錄音結(jié)束。點擊放音鍵可以實現(xiàn)對上次錄制聲音片段的播放,如果點擊快進(jìn)鍵,可以實現(xiàn)錄制的聲音片段以原來的兩倍速度進(jìn)行快進(jìn)播報,若點擊停止鍵那么不管當(dāng)前是什么狀態(tài),系統(tǒng)都會馬上停止播報。矩陣鍵盤各個按鍵分別代表不同的語音信息,可以實現(xiàn)系統(tǒng)的單曲播報、所有站點循環(huán)播報等功能。主程序的流程圖如圖2所示。
圖2 系統(tǒng)主程序流程圖
系統(tǒng)語音設(shè)計主要是錄放音的設(shè)計。如果點擊錄音鍵,此時單片機就會發(fā)送錄音指令給語音芯片,語音芯片開始記錄當(dāng)前狀態(tài)下接收到的音頻信息,并存儲到語音芯片中指定的地址段上。如果點擊播放按鍵就會播報提前錄制的音頻信息。
液晶顯示模塊是顯示系統(tǒng)“正在錄音”還是“正在放音”的一個功能模塊。系統(tǒng)開始運行首先對液晶進(jìn)行初始化操作,此時液晶顯示“待機中”,如果點擊錄音鍵,它就會顯示“錄音中”,如果點擊放音鍵,它就會顯示 “放音中”,如果選擇語音報站,顯示器上也會顯示“放音中”。
本項目是基于單片機的語音系統(tǒng)的設(shè)計,通過實體測試了系統(tǒng)的功能,實現(xiàn)了如下的功能:
1)前段駐極體麥克風(fēng)實現(xiàn)了對音頻信息的處理并且經(jīng)過放大電路傳輸給語音芯片ISD,同時芯片完成了對音頻信息的存儲;
2)單片機實現(xiàn)信息的整合并控制音頻的輸入輸出,同時它控制5110液晶實現(xiàn)錄音和播放狀態(tài)信息顯示;
3)鍵盤模塊實現(xiàn)了站點播報,并可以進(jìn)行單站循環(huán)和多站循環(huán)操作。此外系統(tǒng)還配置了四個特殊的按鍵,分別實現(xiàn)錄音、放音和快進(jìn),停止功能。
單片機語音系統(tǒng)的設(shè)計完成了錄放功能,可以最長錄音8分鐘。采用分段錄音的方式,可以錄制8段站點語音,還有一段系統(tǒng)功能介紹和一段音樂。此系統(tǒng)在完成語音錄放系統(tǒng)的基礎(chǔ)上實現(xiàn)公交車站報站的功能,它可以實現(xiàn)8個站點的順序、循環(huán)播報以及單個站點的循環(huán)播報,在日常生活中,具有廣闊的應(yīng)用前景。除此之外此系統(tǒng)還可以稍作改進(jìn),應(yīng)用在家庭語音報警系統(tǒng)以及語音醫(yī)療之中。
[1]高慧芳 等.單片機原理及應(yīng)用技術(shù)[M].北京:科學(xué)出版社,2010.
[2]宋戈,黃鶴松,員玉良,蔣海峰.51單片機應(yīng)用開發(fā)范例大全[M].北京:人民郵電出版社,2010:193-205.
[3]鄭鋒等.51單片機應(yīng)用系統(tǒng)典型模塊開發(fā)大全[M].北京:中國鐵道部出版社,2010.
[4]劉建清.輕松玩51單片機C語言[M].北京:北京航空航天大學(xué),2011:378-385.
[5]康華光.模擬電子技術(shù)基礎(chǔ)[M].北京:高等教育出版社,2005:119-132.
張捐凈(1985—),女,助教/碩士學(xué)位,現(xiàn)工作于安陽工學(xué)院。
聶萌瑤(1988—),女,助教/碩士學(xué)位,現(xiàn)工作于安陽工學(xué)院。