基於AT89S52單片機和ISD4004語音晶片實現語音播報記事器的設計

2020-12-16 電子發燒友

基於AT89S52單片機和ISD4004語音晶片實現語音播報記事器的設計

張裕,劉毅敏,方康 發表於 2020-12-15 17:57:16

引 言

隨著數字電子技術的發展和單片機等微控制器的產生,語音的存儲與自動播放變得易於實現。目前語音存儲與自動播放系統已經廣泛應用於日常生活當中。公共汽車上的語音報站器、銀行和醫院的排隊等候系統等,都是語音存儲與自動播報系統的應用。本文介紹一種以語音存儲與自動播放系統為基礎的語音播報記事器設計。該設計以ISD4004:語音晶片和AT89S52單片機為中心,很好地實現了語音存儲與自動播放。

1 硬體設計原理

語音播報記事器的主要功能是實現語音存儲與定時播放。要實現語音存儲與定時播放的方法很多,可供選擇的器件也很多。由於單片機等微控制器的出現和數字電路技術的發展,使得現在的語音存儲與自動播放變得易於實現。本設計採用單片機作為微控制器。單片機的字長由4位、8位、16位發展到32位。目前這幾種字長的單片機同時存在於市場,用戶可以根據不同的需要進行選擇。本系統選用字長為8位的AT89S52單片機作為控制器。

目前可以與單片機配合使用的語音晶片有很多,其中不乏性能十分優越的語音晶片,美國ISD公司生產的ISD4004語音晶片就是它們中的一員。ISD4004晶片採用CMOS技術,內含振蕩器、防混淆濾波器、平滑濾波器、音頻放大器、自動靜噪及高密度多電平閃爍存貯陣列。引腳包括電源、時鐘、語音信號模擬輸入/輸出端、與MCU接口(SPI接口)幾部分。晶片採用多電平直接模擬量存儲技術,每個採樣值直接存貯在片內閃爍存貯器中,因此能夠非常真實、自然地再現語音。

ISD4004系列單片錄放時間為8~16 min,採樣頻率可為4.0/5.3/*/8.0 kHz,頻率越低,錄放時間越長,而音質則有所下降。晶片設計基於所有操作必須由微控制器控制,操作命令可通過串行通信接口(SPI或Mi-crowire)送入。由於ISD4004的眾多優點,本設計就採用它作為錄放音器件。

系統外接時鐘晶片PCF8563、矩陣鍵盤LED顯示和E2PROM AT24C01。錄音時為了改善語音質量,要提高輸入端的信噪比,因此在系統的輸入端採用三極體(9014)放大電路單端輸入,系統的輸出端經音頻功率放大器LM386放大輸出後驅動揚聲器。整個系統的系統框圖如圖1所示。

2 硬體設計

2.1 語音輸入與輸出電路設計

語音信號經過駐極體話筒轉化為的電信號很微弱,在送入語音晶片之前需要經過放大。這樣做的目的是為了提高信號的信噪比,以達到更好的抑制噪聲的目的。由於聲電轉換器件使用的是駐極體話筒,所以後級放大電路使用三極體作為放大器件即可滿足要求。本設計中從語音晶片輸出的語音信號很微弱,不能直接驅動揚聲器,所以要在語音晶片和揚聲器之間加上一個功率放大電路。功率放大電路使用美國國家半導體公司生產的音頻功率放大器LM386並配合少許電容電阻構成。該功放電路的放大效果良好,噪音小,可以滿足本設計的要求。

2.2 顯示電路設計

本設計的顯示部分使用LED數碼管。為了提高LED顯示的亮度,在本設計中,將a,b,c,d,e,f,g引腳分別串聯300 Ω的電阻後接5 V電壓即可。本設計採用軟體查表方式輸出。當系統沒有錄放音時,需要顯示年、月、日、時、分、秒、星期等信息;當系統有錄放音時,需要顯示與錄放音有關的信息。這樣,整個系統一共需要15個數碼管。為了節省單片機的I/O口,顯示部分使用了74LS154,單片機與LED的接口採用動態接口。74LS154是4線16線解碼器,用於將單片機的輸出解碼後作為LED的片選信號使用。

2.3 PCF8563接口電路設計

PCF8563是飛利浦公司生產的低功耗的CMOS實時時鐘/日曆晶片,是I2C總線接口器件。設計中,PCF8563用來提供時間和日曆信息。當沒有進行錄音和放音操作時,本設計相當於一個萬年曆;當進行錄音或放音時,PCF8563用來對每段錄音或放音進行計時,所有的時間信息均通過LED數碼管顯示出來。由於PCF8563是漏極開路,所以必須要加5.1 kΩ的上拉電阻。PCF8563與AT89S52的接口電路設計如圖2所示。

2.4 ISD4004接口電路設計

本設計使用ISD4004-16M型號的語音晶片。這款語音晶片可以錄音16 min,它有一個埠為RAC端,RAC為行地址時鐘端,每個RAC周期表示ISD存儲器的操作進行了1行(ISD4004系列中的存貯器共2 400行),所以RAC端的行地址數目與語音晶片中存儲器的行數對應,即語音晶片存放的每段錄音的初始與結束地址與惟一的RAC行地址數對應。所以只需將RAC端與單片機的計數端相連,僅記錄RAC行地址數目即可實現整個錄放操作,且單片機的計數器無需中斷。根據以上的思想,設計ISD4004與單片機的接口電路如圖3所示。

3 軟體設計

本設計中的程序設計包括以下幾個部分,即鍵盤處理程序、ISD4004放音驅動程序、ISD4004錄音驅動程序、時間校正程序、錄音子程序、放音子程序、播放時間設置子程序、播放選擇程序、子程序設計。圖4為主程序流程圖。

4 系統測試

系統上電後15個數碼管全亮大概3 s,以此檢測數碼管的好壞。之後數碼管會出現年、月、日、星期、時、分、秒等信息。當按下錄音鍵後,系統開始錄音。錄音時,數碼管會顯示「SAVE」字樣,並會顯示該段錄音的時間信息;當確定鍵按下後,該語音段的錄音結束,數碼管重新顯示時間信息。當按下放音鍵時,系統開始放音,這時數碼管會顯示「PLAY」字樣,並會顯示該段錄音的時間信息。放音結束後數碼管會回到時間顯示界面。當按下時間校正鍵後,便可以對時間進行校正;當按下確定鍵後,時間校正結束。本系統可以錄音15 min,可以錄4段錄音。當按下播放設置鍵後,就可以對每段錄音的播放時間進行設置;當按下播放選擇鍵後,就可以播放4段錄音中的任意一段。

本系統在播放錄音時會有少量的噪音,可能由以下原因造成:

(1)整個系統完全是手工焊制,線路之間存在幹擾;

(2)ISD4004的數字地與模擬地沒有分別走線,全部接到了一起,存在幹擾;

(3)語音輸入放大電路的放大倍數不夠,噪聲沒有得到足夠的抑制。

整個系統的設計合理,外圍電路結構簡單,方便調試;單片機餘留有I/O口,方便系統的升級和擴展;單片機的所有程序均使用C-51進行編寫,方便調試和閱讀。整個系統工作穩定,操作方便。本設計的設計原理完全可以用在公共汽車上,作為語音報站器使用,也可以用在銀行和醫院等一些需要自動播報語音信息的公共場所。在本設計的基礎上稍加擴充,就可以滿足實際應用的需要。

責任編輯:gt

打開APP閱讀更多精彩內容

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴

相關焦點

  • 基於AT89S52單片機的舵機控制系統設計
    摘要:文中設計了一種基於AT89S52單片機的舵機控制系統,單片機通過定時中斷產生脈寬調製信號(PWM)來控制Futaba-S3003舵機轉動。文中給出了系統的電路原理圖和程序設計思路。
  • 基於SYN6288的超聲波語音測距拐杖的設計
    本文採用STC89C52R單片機,結合超聲波測距技術設計導盲杖,並通過語音合成晶片SYN6288實現文本到語音的直接轉換,無需預先錄製,通過外置揚聲器提醒盲人前方道路情況,實現語音導盲功能。1.2 TTS語音合成原理TTS(Text To Speech)文本轉換語音技術是人機智能對話發展的趨勢,利用此技術,通過MCU或者PC機控制語音晶片發音,能夠實現多種場合下的文字即時播報功能。TTS轉換過程是先將文字序列轉換成音韻序列,再由系統根據音韻序列生成語音波形。
  • 基於AT89S52單片機的多功能電子萬年曆
    本系統程序由主程序、中斷服務函數和多個子函數構成。主函數主要完成各子函數和中斷函數的初始化。定時中斷函數主要完成時鐘晶片的定時掃描及鍵盤掃描。時鐘晶片的讀寫函數主要是將時間、日曆信息讀出來,並把要修改具體值寫入時鐘晶片內部。
  • 基於Atmegal單片機設計的智能公交電子站牌系統,包括原理圖、流程圖
    而在國內市場上,此方面的技術的應用並不廣泛,基於此,設計一種更加智能化的、保險係數更高的公交服務信息查詢系統,是當務之急,也是大勢所趨。本系統以Atmegal單片機為核心,通過其強大的微控處理功能與無線數據通信、自動語音提示、LCD顯示等技術的綜合運用,設計的一款智能公交信息發布系統。
  • 基於CC2420晶片和ARM單片機實現智能交通系統的設計
    基於CC2420晶片和ARM單片機實現智能交通系統的設計 黃武陵,艾雲峰 發表於 2020-12-22 09:59:25 智能交通系統(ITS)應用在城市交通中主要體現在微觀的交通信息採集
  • 基於DSP的中文語音合成系統設計
    引言本文引用地址:http://www.eepw.com.cn/article/201702/343606.htm  本文介紹的就是一種基於DSP的中文語音合成系統的實現方法。
  • 用JS輕應用與HaaS600實現語音播報音箱
    播報音箱主要功能為語音播報,需要和雲端保持連接,接收雲端播報消息,設備端按照指定規則進行播報。常見的播報場景有支付到帳信息、動態更新的定製化音頻內容、用戶操作回應和提醒等。播報音箱方案涉及雲端、設備端的開發,屬於端雲一體化解決方案。本文聚焦於設備端,主要講述基於IoT JS輕應用和HaaS600硬體平臺實現播報音箱方案。
  • 基於51單片機的電話留言機設計
    從技術角度來看,技術人員已掌握電話留言機的關鍵技術,其核心器---單片機與語音晶片,市場上已有性能好、功能強、價格低的產品可供選擇。因此,研製國產電話留言機是可行的。 在選擇單片機時,首選8031,其理由是:找出單片機系統1. 價格便宜,有開發環境。 2. 採用語音晶片T6668後,語音處理功能全部由T6668完成,系統控制功能簡單。
  • 基於AT89C55WD單片機和程式語言實現繼電保護實驗系統的設計
    基於AT89C55WD單片機和程式語言實現繼電保護實驗系統的設計 員瑩 , 韓應江 發表於 2020-11-26 10:10:44 1 引 言 隨著電力工業的迅速發展
  • 基於Internet的語音交互系統的設計和實現
    描述了實現Internet語音交互系統的關鍵技術,即利用Windows的多任務機制,結合Windows MDK低層音頻服務、Windows Sockets和語音壓縮等技術,實現了PCto PC的實時通話。
  • 基於太陽能和超聲波測距技術實現導盲器的設計
    基於太陽能和超聲波測距技術實現導盲器的設計 吳飛斌,張晉平,陳 發表於 2020-04-12 17:22:00 引言 為了更好地幫助盲人行走,各科研機構研製了各種電子導盲設備
  • 基於stc單片機的AT89S52離線燒錄器程序
    znFAT.h"extern unsigned char OutBuf[4];extern unsigned char InBuf[4];unsigned char idata psignbuf[3];unsigned char code_buf[32];sfr P1M0 = 0x92;sfr P1M1 = 0x91; //定義STC12單片機
  • 語音播報系統
    語音播報系統是一款非常實用的音頻自動播放軟體,用戶只需要輸入文本內容就可以開始播放。軟體還提供了豐富的播放設置,它內置了十幾位朗讀員聲音,並允許調節語速、音量和語調,還能進行試聽。可在下載銀行下載。此外還可以通過在文本中插入修飾符來對朗讀進行更加細緻的把控。更有高級朗讀模式,用戶可以自定義多名朗讀員來斜街或同時閱讀一段文字。
  • 基於單片機和DSl8B20傳感器實現土木工程溫度監測系統的設計
    基於單片機和DSl8B20傳感器實現土木工程溫度監測系統的設計 陳娟 發表於 2020-12-09 10:17:09 1 引言 在土木工程中,許多大型的橋梁和大壩都是採用現場澆注的鋼筋混凝土結構
  • 基於AT89C51單片機和傳感器實現家庭安全報警系統的設計
    警情採集電路當採集到警情信號時,單片機立即接通報警驅動電路實現聲光報警,同時由雙音多頻收發電路通過電話網絡撥打報警號碼向外界報警,當摘、掛機檢測電路檢測到被呼叫方摘機後,單片機接通語音報警電路,通過事先錄製好的語音信號告知對方與警情相關的信息,對方掛機後,模擬掛機,完成自動報警。
  • 基於單片機和CPLD的PLC背板總線協議接口晶片設計(一)
    摘要:設計了一組基於CPLD的PLC背板總線協議接口晶片,協議晶片可以區分PLC的背板總線的周期性數據和非周期性數據。背板總線的技術水平決定了PLC 產品的I/O 擴展能力,是PLC 設計製造的核心技術。目前,PLC 大多採用串行通信技術實現背板總線,串行總線引線少、硬體成本低,跟並行總線相比不容易受幹擾,串行總線可以提高在惡劣的工廠和工業環境下自動化設備的可靠性。用於串行通信技術的可選類型包括I2C、UART、SPI、USB 和乙太網等,一般來說,很多作為PLC 主晶片的單片機自身都集成了這些外設部件。
  • 基於LD3320的非特定人語音識別方案
    該系統不需要虛擬實境技術的支持,在小型的嵌入式系統上就可以實現。1 系統原理該模擬訓練器由一臺測控計算機和多臺從設備組成。如圖1所示。在此僅對一臺從設備進行介紹,其硬體系統主要由測控計算機、Arduino mega2560 控制器、語音識別單元、聲強檢測單元、語音合成單元、面板控制單元、儀器面板等組成。
  • 基於單片機和TC35i型無線通信GSM模塊實現LED顯示屏設計
    基於單片機和TC35i型無線通信GSM模塊實現LED顯示屏設計 樊宇 , 程全 , 徐朝 發表於 2020-03-29 10:23:19 1、 引言
  • 基於嵌入式Linux的語音識別系統硬軟體設計
    該設計運用三星公司的S3C2440,結合ICRoute公司的高性能語音識別晶片LD3320,進行了語音識別系統的硬體和軟體設計。