0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于AT89S52單片機和ISD4004語音芯片設(shè)計

放人 ? 2022-10-30 13:28 ? 次閱讀

隨著數(shù)字電子技術(shù)的發(fā)展和單片機微控制器的產(chǎn)生,語音的存儲與自動播放變得易于實現(xiàn)。目前語音存儲與自動播放系統(tǒng)已經(jīng)廣泛應(yīng)用于日常生活當(dāng)中。公共汽車上的語音報站器、銀行和醫(yī)院的排隊等候系統(tǒng)等,都是語音存儲與自動播報系統(tǒng)的應(yīng)用。本文介紹一種以語音存儲與自動播放系統(tǒng)為基礎(chǔ)的語音播報記事器設(shè)計。該設(shè)計以ISD4004:語音芯片和AT89S52單片機為中心,很好地實現(xiàn)了語音存儲與自動播放。

1硬件設(shè)計原理

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

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

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

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

b3a44c1a-5813-11ed-b468-dac502259ad0.png

2硬件設(shè)計

2.1語音輸入與輸出電路設(shè)計

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

2.2顯示電路設(shè)計

本設(shè)計的顯示部分使用LED數(shù)碼管。為了提高LED顯示的亮度,在本設(shè)計中,將a,b,c,d,e,f,g引腳分別串聯(lián)300Ω的電阻后接5 V電壓即可。本設(shè)計采用軟件查表方式輸出。當(dāng)系統(tǒng)沒有錄放音時,需要顯示年、月、日、時、分、秒、星期等信息;當(dāng)系統(tǒng)有錄放音時,需要顯示與錄放音有關(guān)的信息。這樣,整個系統(tǒng)一共需要15個數(shù)碼管。為了節(jié)省單片機的I/O口,顯示部分使用了74LS154,單片機與LED的接口采用動態(tài)接口。74LS154是4線16線譯碼器,用于將單片機的輸出譯碼后作為LED的片選信號使用。

2.3 PCF8563接口電路設(shè)計

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

b3c24472-5813-11ed-b468-dac502259ad0.png

2.4 ISD4004接口電路設(shè)計

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

b40c4428-5813-11ed-b468-dac502259ad0.png

3軟件設(shè)計

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

b4351920-5813-11ed-b468-dac502259ad0.png

4系統(tǒng)測試

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

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

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

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

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

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

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 芯片
    +關(guān)注

    關(guān)注

    456

    文章

    51037

    瀏覽量

    425486
  • 單片機
    +關(guān)注

    關(guān)注

    6040

    文章

    44594

    瀏覽量

    636941
收藏 人收藏

    評論

    相關(guān)推薦

    單片機語音芯片中的SPI Flash探秘及其分類詳解

    單片機語音芯片的領(lǐng)域中,SPIflash,即串行外圍設(shè)備接口閃存,扮演著舉足輕重的角色。它是一種時鐘同步的串行通訊接口,如單片機語音
    的頭像 發(fā)表于 12-03 01:01 ?249次閱讀
    <b class='flag-5'>單片機</b><b class='flag-5'>語音</b><b class='flag-5'>芯片</b>中的SPI Flash探秘及其分類詳解

    單片機語音芯片中的SPI Flash探秘及其分類詳解

    SPIflash在單片機語音芯片中重要,分NandFlash、NorFlash、AG-ANDFlash。NorFlash有SPIFlash和CFIFlash,以不同接口操作。NandFlash技術(shù)多樣,SLC、MLC、Mirro
    的頭像 發(fā)表于 11-28 14:21 ?324次閱讀

    采用AT89C52單片機作為路燈控制系統(tǒng)的支路控制器

    本系統(tǒng)采用AT89C52單片機作為路燈控制系統(tǒng)的支路控制器,采用光敏二極管 檢測光強度、紅外對管檢測移動物體經(jīng)過的位置等方法控制路燈按預(yù)定要求自動開關(guān)。本 系統(tǒng)由支路控制器改變恒流源的輸出電流,檢測
    發(fā)表于 11-24 14:37 ?0次下載

    89C52單片機控制直流24V電機輸出,數(shù)碼管顯示亂碼?

    一電子板,89C52單片機控制直流24V電機輸出,帶93C86讀取用戶數(shù)據(jù),能正常運行,但起動10-20秒內(nèi)不能控制,數(shù)碼管顯示亂碼?
    發(fā)表于 11-10 19:06

    基于51單片機的7人多數(shù)投票表決器設(shè)計

    設(shè)計編號:P13 1.主要功能: ? ? ? ? ? 基于51單片機AT89C51/52(與AT89S51/52、AT
    的頭像 發(fā)表于 11-09 09:48 ?948次閱讀
    基于51<b class='flag-5'>單片機</b>的7人多數(shù)投票表決器設(shè)計

    單片機怎么寫入程序

    單片機(Microcontroller Unit,MCU)是一種集成電路芯片,它將計算機的CPU、存儲器、輸入/輸出接口等功能集成在一個芯片上。單片機廣泛應(yīng)用于嵌入式系統(tǒng)和物聯(lián)網(wǎng)設(shè)備中
    的頭像 發(fā)表于 10-21 11:21 ?828次閱讀

    單片機燒錄程序的基本步驟是什么

    單片機燒錄程序的基礎(chǔ),它包含了單片機芯片、電源、接口等基本元件。在選擇單片機開發(fā)板時,需要考慮以下幾個方面: (1)單片機型號:根據(jù)項目需求選擇合適的
    的頭像 發(fā)表于 09-02 09:47 ?1251次閱讀

    單片機和電腦PC的區(qū)別有哪些?#單片機 #芯片

    芯片單片機
    貞光科技
    發(fā)布于 :2024年06月28日 11:34:41

    基于STM32單片機語音播報體溫計設(shè)計

    語音播報體溫計系統(tǒng)包括溫度采集模塊,語音播放模塊,顯示模塊,其中核心 CPU采用單片機 STM32,STM32在電子行業(yè)運用廣泛。溫度采集模塊使用 MLX90614紅外傳感器采集體溫數(shù)據(jù),語音
    的頭像 發(fā)表于 06-24 14:31 ?1529次閱讀
    基于STM32<b class='flag-5'>單片機</b>的<b class='flag-5'>語音</b>播報體溫計設(shè)計

    第二講:單片機STC89C52+RA8889驅(qū)動控制彩屏 代碼移植介紹

    介紹51單片機如何移植RA8889的代碼進行彩屏驅(qū)動與控制
    的頭像 發(fā)表于 06-04 10:36 ?1043次閱讀
    第二講:<b class='flag-5'>單片機</b>STC<b class='flag-5'>89C52</b>+RA8889驅(qū)動控制彩屏 代碼移植介紹

    基于at89s52的16位搖搖棒設(shè)計程序

    電子發(fā)燒友網(wǎng)站提供《基于at89s52的16位搖搖棒設(shè)計程序.zip》資料免費下載
    發(fā)表于 05-20 11:23 ?0次下載

    基于單片機多功能洗衣控制

    需注意仿真中51單片機芯片是兼容的,AT89C51,AT89C52是51單片機的具體型號,內(nèi)核是一樣的。相同的原理圖里,無論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,
    發(fā)表于 03-18 10:13 ?804次閱讀
    基于<b class='flag-5'>單片機</b>多功能洗衣<b class='flag-5'>機</b>控制

    單片機的最小系統(tǒng)由什么組成 單片機的最小系統(tǒng)包括哪些

    單片機(Microcontroller Unit,MCU)的最小系統(tǒng)包括以下幾個主要組成部分: 單片機芯片單片機是整個最小系統(tǒng)的核心部分,它集成了中央處理器(Central Processing
    的頭像 發(fā)表于 02-02 11:27 ?1.1w次閱讀

    單片機最小系統(tǒng)包含哪幾部分 單片機最小系統(tǒng)的作用

    單片機最小系統(tǒng)包含以下幾部分:單片機芯片、時鐘電路、復(fù)位電路、電源電路、外圍電路和連接接口等。 單片機芯片單片機是整個系統(tǒng)的核心部分,負責(zé)數(shù)據(jù)處理和控制任務(wù)。常見的
    的頭像 發(fā)表于 01-24 10:40 ?1.5w次閱讀

    單片機最小系統(tǒng)的作用 單片機最小系統(tǒng)包含哪幾部分

    部分: 單片機芯片單片機最小系統(tǒng)的核心部分是單片機芯片,它是整個系統(tǒng)的主控制核心。單片機芯片上集成了CPU、存儲器、定時器、IO口等各種功能模塊,能夠完成各種控制任務(wù)。 時鐘電路:
    的頭像 發(fā)表于 01-18 13:54 ?4219次閱讀