摘要:該文介紹了一種城市公交車報站系統的工作原理,提出了由控制器AT89C51單片機,語音處理器ISD2560語音芯片,顯示器FYD12864,及其它外圍電路組成的公交車語音報站系統。該系統是提供公交服務的一種很好的手段,值得廣泛推廣和使用。
關鍵詞:ISD2560語音芯片;MAX813L復位;模擬設計
中圖分類號:TP302文獻標識碼:A文章編號:1009-3044(2008)34-1723-02
Anology Design of a Bus-stop Announce System Based on ISD2560
TANG Ying, YAO Feng, ZHAO Mao-juan
(College of Information Engineering of CDUT, Chengdu 610059, China)
Abstract:In the paper, a bus-stop announce anology system based on ISD2560 is introduced. The system is composed of main controller AT89C51,voice chip ISD2560, displays FYD12864, and other peripheral chips. The system is a superior means for providing bus service ,which is worth developing and using widely.
Key words: ISD2560 voice chip; MAX813L reset; anology design
1 引言
語音是人類最本能、最方便的信息交流方式,它是后來文字語言的基礎。近年來,隨著科學技術的發展,微型計算機技術日益發展,已經在許多領域得到了廣泛的應用。在聲學領域,微機技術與各種語音芯片相結合,即可完成語音的合成技術,使得公交車語音車報站系統的實現成為可能,使得人們能夠得到更加人性化的服務。
單片微機的語音系統的應用越來越廣泛,如電腦語音鐘、語音型數字萬用表、手機話費查詢系統、排隊機、監控系統語音報警以及公共汽車報站器等等。本文用單片機AT89C2051和錄放時間達60s的數碼語音芯片ISD2560設計了一套公交車報站模擬系統,實現了城市公交車報站的基本功能,而且不必使用專門的ISD語音開發設備。該系統使得公交車報站系統的語音更加自然、使用更加方便。而且成本較低,適用廣泛,具有較強的實用價值。
2 系統結構及主要功能
2.1 設計方案及結構框圖
根據公交車運行特點,以及實際運用需要,通過對該課題的科學論證和合理分析,設計公交車報站系統需要控制、顯示、語音和其他部分??紤]到公交車運行環境,經常會出現震蕩和顛簸,故需要加上電源監視和可靠復位電路。同時,公交車運行過程中,由于車內環境比較嘈雜,故對音量的要求也不可忽視,鑒于此,在系統中加上語音放大電路,保證系統的有效運行。同時,設計了顯示電路,使視覺和聽覺相結合,也增加了系統報站的有效性。
通過以上分析設計,系統大致設計結構如下:公交車報站系統主要分為七個部分:單片機主控電路、語音處理電路、語音播放電路,顯示電路,復位電路和按鍵電路以及其他外圍電路,采用AT89C51單片機作為主控制芯片,利用ISD2560數碼語音芯片實現語音報站,顯示采用FYD12864-0402B中文液晶顯示模塊,鍵盤采用通用按鍵開關,簡單易行且控制方便。下面分別介紹各部分功能及原理。系統原理框圖如圖1所示。
2.2 系統硬件系統設計
2.2.1 主控系統
單片機的P0口、P2.7和 P2.6分別與ISD2560的地址線相連,用以設置語音段的起始地址。P2.3—P2.6用以控制錄放音狀態。P3.7連接一按鍵,供錄音時使用。P2.0--P2.2,P3.4—P3.5為按鍵電路,由人工操作按鍵實現中斷信號的產生。由MAX813L構成可靠復位及電源監視電路。LM386實現語音信號的放大。74HC573實現信號鎖存作用,同時轉換單片機接口和數碼語音芯片接口之間的電壓。顯示電路FYD12864-0402B實現語音信號播放時相關站點的同步顯示。
主控電路是由AT89C51單片機及相關外圍電路組成,AT89C51在系統中實現對ISD2560中的語音信號的控制,實現存儲和播放的控制,并響應按鍵引起的中斷,播放合適的語音,同時調用字符庫在液晶上顯示相關站點名稱。總之,AT89C51在系統中實現對整個系統的全局控制,是該系統的指揮部件。結構如圖2所示。
2.2.2 語音處理系統
ISD2560集成度較高,內部包括前置放大器、內部時鐘、定時器、采樣時鐘、濾波器、自動增益控制、邏輯控制、模擬收發器、解碼器和480 K字節的E2PROM等,ISD2560控制電平與TTL電平兼容,接口簡單,使用方便。
在該系統電路中,SP+,SP-本可以直接接上揚聲器,由于驅動功率比較小,所以可在ISD2560芯片接口和揚聲器之間接上低頻功率放大芯片LM386,這樣就可以滿足公交車上音量較大的需求,符合實際模擬情景。語音播放電路如圖3所示。
2.2.3 顯示系統
FYD12864-0402B是一種具有4位/8位并行、2線或3線串行多種接口方式,內部含有國標一級、二級簡體中文字庫的點陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內置8192個16*16點漢字,和128個16*8點ASCII字符集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互圖形界面。可以顯示8×4行16×16點陣的漢字. 也可完成圖形顯示.低電壓低功耗是其又一顯著特點。由該模塊構成的液晶顯示方案與同類型的圖形點陣液晶顯示模塊相比,不論硬件電路結構或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。YD12864-0402B與單片機80C51的接口如圖4所示。
3 軟件部分
電路上電后,程序首先完成程序的初始化,隨后查詢按鍵狀態,進入系統待機狀態。如果有按鍵按下,則轉去執行該按鍵指向的工作程序。按鍵包括上行鍵,下行鍵,報站鍵,預報站鍵以及服務用語鍵。在待機狀態下,如果放音鍵首次被按下,程序將首先判斷是去還是回(公交車路徑一般是既去又回的),自動讀出第一站的放音內容,并顯示相關站名。
如果不是首次按下,程序則首先判斷當前站名,并以該站號為依據獲得存放該站放音內容的首地址。調用放音子程序。讀入前面獲得的本站放音內容首地址,開始放音。每一句放音完畢后.ISD4004的中斷引腳(25腳)會自動送一低電平信號。因此,會引起一次中斷,在中斷子程序中會有一個計數器記錄中斷次數。從而判斷何時一站結束。站名地址加一并刷新顯示。下行鍵按下后則使程序放音內容轉向下一站。上行鍵則使程序放音內容轉向上一站,相應的站名顯示也將隨之刷新。服務用語鍵按下后,程序轉向執行服務用語放音,報站鍵被按下將播報當前站名,預報站按下則播報下一站站名。如圖5所示。
下面給出的就是放音部分程序。放音子程序:
PLAY:
ACALLPOWERRUP;上電子程序
ACALLDELAY25;延時子程序,至少延遲25MS
CLR P1.6;選中ISD2560
MOVPLAY2,#11100000B;存放SETPLAY命令
MOVA,PLAY0;選放音地址低8位
ACALLSEND;調用送地址子程序
MOVA,PLAY1;送放音地址高8位
ACALLSEND
MOVA,PLAY2
ACALLSEND
SETBP1.6
CLR P1.6
MOVPLAYING,#11110000B;送入放音子令
……
4 結論
ISD2560語音芯片采樣多電平直接模擬量存儲專利技術,能夠非常自然地再現聲音;同時,具備單片機所需接口,便于與單片機連接,是公交車語音報站芯片很好的選擇。本文設計的基于ISD2560的公交車報站模擬系統,實現了公交車報站的自動化,其語音音質好,功能強,實驗運行效果較好,實際應用表明具有較好的實用價值。在不修改硬件電路的情況下,通過軟件的改寫,可以實現在其他場合的應用,增加了系統的適用性。
參考文獻:
[1] 王福瑞.單片微機測控系統設計大全[M].2版.北京:北京航空航天大學出版社,1999.
[2] 陳永彬,王仁華.語音信號處理[M].北京:中國科技大學出版社,1998.
[3] 朱民雄.計算機語音技術[M].北京:北京航空航天大學出版社,2002.
[4] 韋麗華.ISD2500系列語音芯片及其在微機系統中的應用[J].遼寧師范大學學報:自然科學版,2001,24(1):33.