歡迎您訪問鄭州興邦電子股份有限公司官方網站!
    阿里巴巴誠信通企業
    全國咨詢熱線:40000-63966
    興邦電子,中國水控機第一品牌

    聯系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

    工廠:河南省 鄭州市 高新區蓮花街電子電器產業園

    IC卡電子語音書

    文章出處:http://www.xujuanpiju.com 作者:   人氣: 發表時間:2011年09月22日

    [文章內容簡介]:基于ISD單片語音錄放集成電路和大容量IC卡,給出了IC卡電子語音書的設計方法。這種電子語音書具有體積小、重量輕、用電省和成本低的特點。

        所謂"IC卡電子語音書",即讀取IC卡中的信息,再將其轉換成聲音信息,用以取代現有的書籍的電子裝置,可供不便于視覺閱讀的人群(如老年人、盲人或患者等)使用。 

        目前,國內市場銷售的IC卡的容量可達500K字節,如直接存儲語音信號(以8K/秒采樣率計),可存儲約62.5秒的直接語音信息。雖然所存儲的音質比較好,但顯然還不能滿足一般書藉大量信息存儲的要求。筆者以漢字的語音編碼(自定義)形式存儲,存儲一個漢字只占用1.5個字節(12位),則500K字節的IC卡可存儲的漢字不少于33.3萬個,可連續播放近30小時,足以滿足實用要求。 

        本文給出的設計方案以AT89LV51單片機為微處理機,配以ISD4004作語音支持,采用AT45D041型IC卡作為電子書籍信息存儲載體。AT45D041型IC卡是由美國ATMEL公司于近年推出的大容量存儲卡(4M位),是目前市場上易于購得的容量最大的IC卡。隨著技術的進步,改用容量更大的其它類型IC卡時,只要通訊方式不變,本設計方案仍然適用。即使是通過方式有所改變,亦只需對本設計方案銷作修改即可。 

        該裝置的基本工作過程如下:首先將漢字文本文件(如《三國演義》)轉換成語音編碼文件存儲于IC卡中(這一工作由PC機完成);然后,當IC卡電子語音書工作時,播放裝置中的CPU將從IC卡中讀出語音編碼;最后,CPU再按此編碼控制ISD單片語音錄放電路,播放出相應的語音。
     
        本設計方案是一個經濟實用型電子語言書基本設計方案,雖然在音質方面不如語音直接存儲的方案,但具有裝置成本低廉、體積小巧、用電省和連續播放時間長的優勢。 

    1 硬件設計 

    播放裝置的電氣原理圖如圖1所示。 


    圖1 IC卡電子語音書電氣原理圖 

        本設計中設有6個按鍵,分別為"播放"(BUTTON0)、"快進"(BUTTON1)、"慢進"(BUTTON2)、"快退"(BUTTON3)、"慢退"(BUTTON4)和"停止"(BUTTON5)。 

        為了能夠在下一次開機時從上一次中止處繼續播放,需要一個掉電保持的數據存儲器,本文中使用了AT24C01A。 

        為使播放裝置的體積和重量盡可能減小,本裝置僅使用一節AA型(即5號)電池,因此需采用升壓式開關型穩壓電源,本文采用的是MAX856。為了節省電池消耗,本裝置應具有自動斷電的功能。按下"播放"鍵時,MAX856芯片1腳將抬高為高電平,裝置上電。以后每隔16秒由單片機向MAX856芯片1腳發送一個高電平脈沖,讓裝置繼續被供電。當定時時間(60分鐘)到時,裝置停止向MAX856芯片發送高電平脈沖,則裝置自動斷電。 

    本設計中采用的AT45D041型大容量IC存儲卡的主要功能和技術參數如下: 

    (1)具有與SPI兼容的串行接口; 

    (2)4325376位; 

    (3)低功耗,動態電流為15mA,靜態待機電流為20μA;
     
    (4)最大時鐘頻率為10MHz。 

        AT45D041型大容量IC存儲卡的引腳及命令請參閱參考文獻[1]。圖1中IC_CARD的1~8腳對應于AT45D041的1~8引腳;9和10為IC卡座的輔助觸點,用于檢測IC卡是否已插入。 

    本設計中采用的ISD4004語音芯片的主要功能和技術參數如下: 

    (1)16分鐘語音錄放,最小段長200~400ms(本設計采用300ms); 

    (2)最大段數2400段; 

    (3)SPI接口方式。 

        ISD4004語音芯睡的主要引腳及與單片機的連接方法描述如下:AUD OUT--輸出音頻信號,為了得到較大的輸出,采用功率放大器LM386進行放大再提供給耳機或喇叭。SS--片選,低電平有效,兩條指令之間為高電平。MOSI--串行輸入端,主控制器應在串行時鐘上升沿之前半個周期將數據放到本端。MIS0--串行輸出端。SCLK--串行時鐘輸入端,由主控制器產生,用于同步MOSI和MISO的數據傳輸。上述4個端子分別接單片機的P1.7~P1.4。/INT--中斷,本端為漏極開路輸出,在任何操作中檢測到EOM或OVF時,本端變低并保持;接單片機的INT0。RAC--行地址時鐘,漏極開路輸出,用于存儲管理,接單片機的P1.3。 

    2 語音碼文件的形成 

        ISD4004語音芯片是按段存放聲音的,每段一個音,每個音300ms。但應注意到有許多字具有相同的發音(如ye3:也、冶、野);而有些發音并無漢字(如:wai2、sai3、ka2等)。對于每一個不同的音,又有5個基本的發聲(即陰平1、陽平2、上聲3、去聲4和輕聲5)順序。只要有漢字與之對應(相同發音只取一個),則賦予其一個編碼,如此即可得到全部語音碼。漢字現有發音共計1311個。設計時,把所有不同的音按英文字節和發聲順序排列,共有1337個(1311漢字+26英文字母)語音碼,亦即1337個語音。用1.5個字節可存儲一個語音碼(亦即1個漢字讀音),則4M位的IC卡可存儲近349500個漢字語音。語音碼確定后,即可將1337個語音按語音碼的順序寫放ISD4004語音芯片中。 

        首先按GB2312-80給出兩級漢字的內碼與語音碼的轉換表,參見表1。對于給定的文本文件中的每個字,只需查出其區位碼,然后通過查表即可得到其拼音碼,最后將拼音碼寫入大容量IC卡。對于標點符號,將其處理為停頓(不發聲)。值得注意的是,有些漢字(如:和,he2、he4、huo2、huo4、hu2)有多種發音,對于這些漢字將有多個語音碼與之對應。究竟轉換為哪個語音碼,則需參考該漢字的前一漢字或后一漢字。仍不能確定時,應取出現概率為最大的音(如和,取he2)。 

    表1 區位碼與拼音碼的轉換表(片段)  

        采用VB程序將電腦中的文本文件轉換成本文的語音碼,并將其寫入IC卡中,從而形成了"電子語音書"。不同IC卡裝有不同的內容,即不同的"書"。注意到IC卡的內容是可以改寫的,一本書聽過之后,還可以到特約的服務點換一本新的"書"來聽。 

        按照本文給出方案所設計的IC卡電子語音書插放裝量的體積約為120mm×80mm×14mm。本裝置的語音發音略顯生硬。如能進一步引入智能處理算法,使各漢字發音之間的連接變得柔和一些,發聲效果將得到改善。 

    本文關鍵詞:IC卡,電子語音書
    回到頂部