《電子技術(shù)應用》
您所在的位置:首頁 > 其他 > 業(yè)界動態(tài) > IC卡電子語音書

IC卡電子語音書

2008-10-07
作者:楊振野1, 佘丙濤1, 朱仁才1

  摘? 要: 基于ISD單片語音錄放集成電路和大容量" title="大容量">大容量IC卡,給出了IC卡電子語音書的設(shè)計方法。這種電子語音書具有體積小,、重量輕、用電省和成本低的特點,。

  關(guān)鍵詞: IC卡? 語音錄放? 文本轉(zhuǎn)換

?

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

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

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

  該裝置的基本工作過程如下:首先將漢字文本文件(如《三國演義》)轉(zhuǎn)換成語音編碼文件存儲于IC卡中(這一工作由PC機完成);然后,,當IC卡電子語音書工作時,,播放裝置中的CPU將從IC卡中讀出語音編碼;最后,CPU再按此編碼控制ISD單片語音錄放電路,,播放出相應的語音,。

  本設(shè)計方案是一個經(jīng)濟實用型電子語言書基本設(shè)計方案,雖然在音質(zhì)方面不如語音直接存儲的方案,,但具有裝置成本低廉,、體積小巧、用電省和連續(xù)播放時間長的優(yōu)勢,。

1 硬件設(shè)計

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

?

?

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

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

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

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

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

  (2)4325376位;

  (3)低功耗,,動態(tài)電流為15mA,,靜態(tài)待機電流為20μA;

  (4)最大時鐘頻率為10MHz。

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

  本設(shè)計中采用的ISD4004語音芯片" title="語音芯片">語音芯片的主要功能和技術(shù)參數(shù)如下:

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

  (2)最大段數(shù)2400段;

  (3)SPI接口方式。

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

2 語音碼文件的形成

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

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

?

?

????采用VB程序?qū)㈦娔X中的文本文件轉(zhuǎn)換成本文的語音碼,并將其寫入IC卡中,,從而形成了“電子語音書”,。不同IC卡裝有不同的內(nèi)容,即不同的“書”,。注意到IC卡的內(nèi)容是可以改寫的,,一本書聽過之后,還可以到特約的服務點換一本新的“書”來聽,?!?/P>

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

?

參考文獻

1 周 軍,,張瑞蘭.大容量IC卡AT45D041及其應用.電測與儀表,1999(8)

2 ISD全系列單片語音錄放電路設(shè)計與應用匯編.北京中青世紀科技發(fā)展公司,,2000

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]