开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開(kāi)APP
          userphoto
          未登錄

          開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

          開(kāi)通VIP
          ISD1700語(yǔ)音芯片SPI使用總結(jié)(一)
          ISD1700語(yǔ)音芯片SPI使用總結(jié)(一)--轉(zhuǎn)載

          ISD1700語(yǔ)音芯片SPI使用總結(jié)

          該語(yǔ)音芯片的使用要仔細(xì)分析英文PDF的資料,電路可按中青世紀(jì)論壇上面所給的電路搭建,也可按英文PDF后面所畫(huà)的電路圖焊接。

          本芯片使用不單純是一個(gè)放音電路,還含有其他的控制。因此程序首先要能完成指定地址的放音工作,其次還應(yīng)能嵌入整個(gè)費(fèi)額顯示程序中,即語(yǔ)音程序不能與電路其他功能相影響。費(fèi)額顯示中里面主要有八字板,點(diǎn)陣等其他的控制。

          SPI放音操作設(shè)計(jì)參考了網(wǎng)絡(luò)上的部分程序,各取所長(zhǎng)設(shè)計(jì)了放音程序。在最后附上了部分程序,僅供參考。

                 試驗(yàn)中采用的是ISD1760語(yǔ)音芯片,采樣率為8K時(shí),一共能播放60S的語(yǔ)音,最大地址為0x1EF,錄音實(shí)際地址為0x10-0x1EF,從此最大地址可得出:0x1EF-0x10=0x1DF=479

          479+1=480;480*125MS =60S,也就是說(shuō)8K采樣率時(shí)每1個(gè)地址最小語(yǔ)音長(zhǎng)度為125MS,因此如果知道單個(gè)語(yǔ)音的長(zhǎng)度,暫時(shí)無(wú)編程器的時(shí)候,也可自己推斷每個(gè)語(yǔ)音所占的地址長(zhǎng)度。

                 SPI操作時(shí)要嚴(yán)格遵守PDF上所給的各項(xiàng)操作,這里不列出。暫時(shí)僅給出試驗(yàn)中遇到的所有問(wèn)題并如何解決的。

          1,  一開(kāi)始本實(shí)驗(yàn)是自己用通用板自己照電路搭建的平臺(tái),此電路正確與否可把PLAY管腿和地短路,如果芯片有語(yǔ)音并且電路功放及外圍電路正確的話,此時(shí)芯片就會(huì)把所有語(yǔ)音全都循環(huán)讀一遍。接下來(lái)把4個(gè)SPI口與單片機(jī)接通,嘗試軟件控制。主循環(huán)中可設(shè)置一個(gè)連續(xù)播放的程序,上電就循環(huán)放音。放音程序沒(méi)錯(cuò)的話第一步便成功了!這期間我遇到的問(wèn)題主要有放不出音,讀音混亂,有雜音。如果放不出音,先檢查電路,程序放出聲音應(yīng)該沒(méi)出現(xiàn)什么問(wèn)題。

          2,  本芯片設(shè)置的APC值為0xA00x04,具體對(duì)應(yīng)功能參見(jiàn)中文PDF。

          接下來(lái)遇到的問(wèn)題就是準(zhǔn)確放單個(gè)音和連續(xù)播放多個(gè)語(yǔ)音。播放單個(gè)語(yǔ)音首先是地址的編譯。1730以下的地址可定義為BYTE,從1740開(kāi)始就需要定義為WORD,其實(shí)也可定義為BYTE,就是發(fā)送地址的時(shí)候先發(fā)0x10和后兩位即可。本程序定義為WORD,做一個(gè)偏移發(fā)送即可。

          接下來(lái)的問(wèn)題就是連續(xù)播放的問(wèn)題,這個(gè)問(wèn)題直到最后才正確的解決。一開(kāi)始的程序中只是一直發(fā)送SETPLAY,可以連續(xù)讀,就是讀的亂,其實(shí)就是錯(cuò)誤操作,后來(lái)嘗試在后面添加一個(gè)2秒的延時(shí),可以連續(xù)讀出語(yǔ)音了,就是每個(gè)要停頓一下才能放出第二個(gè)語(yǔ)音,自認(rèn)為就這樣就可以了,導(dǎo)致了以后還得解決此問(wèn)題!因?yàn)榇朔乓舴绞椒艞壛伺袛嘈酒瑺顟B(tài)寄存器,根本沒(méi)有實(shí)現(xiàn)連續(xù)放音,實(shí)際是單個(gè)語(yǔ)音人為把它們連起來(lái)播放,聽(tīng)起來(lái)很不自然。問(wèn)題拖到最后又衍生了別的問(wèn)題,由于此放音方式的聲音輸出信號(hào)是有高有低,當(dāng)電平跳變時(shí)對(duì)功放產(chǎn)生影響,喇叭會(huì)出現(xiàn)“噗噗”聲,術(shù)語(yǔ)可以稱之為“過(guò)載”,如果人距離喇叭很近的話很容易聽(tīng)出來(lái)。

          因此需修改程序,芯片內(nèi)部有個(gè)緩沖器,如果連續(xù)發(fā)送相同的兩個(gè)setplay命令,芯片會(huì)發(fā)完第一個(gè)音后接著連續(xù)發(fā)第二個(gè)音,并且兩音之間的間隔時(shí)間幾乎沒(méi)有。利用這個(gè)特點(diǎn),可以在發(fā)完一個(gè)語(yǔ)音命令后一直發(fā)送讀芯片狀態(tài)命令,從返回來(lái)的數(shù)據(jù)判斷RDY,PLAY,INT位,當(dāng)?shù)谝粭l放音指令發(fā)送完,讀音播放完,立即發(fā)送第二條setplay,并以此類推。這樣實(shí)現(xiàn)了連續(xù)放音,并且聲音輸出一直為高電平(除了開(kāi)始和結(jié)束音),解決了噗噗聲的問(wèn)題。

          但是要一直發(fā)送讀芯片狀態(tài)指令就會(huì)影響其他指令,如本實(shí)驗(yàn)是執(zhí)行串口指令,點(diǎn)陣刷新,八字板的顯示和亮度調(diào)整等,推薦在do{ISD_Rd_Status;}while();內(nèi)添加以上命令,便可解決只讀音不響應(yīng)其他命令的問(wèn)題。串口可判斷標(biāo)志位;點(diǎn)陣可在連續(xù)刷新16行(16*16點(diǎn)陣)后執(zhí)行下一判斷芯片標(biāo)志位程序;八字板的顯示可以鎖存,因此有改變顯示時(shí)執(zhí)行一次即可;八字板的亮度需要一直執(zhí)行,但是當(dāng)亮度為3以下時(shí)(即16MS內(nèi)有3MS是點(diǎn)陣亮,13MS是不亮),放音時(shí)八字板會(huì)有閃爍現(xiàn)象,原因可能是執(zhí)行除了亮度調(diào)整指令外其他指令占用了大約3MS的時(shí)間,暫時(shí)還沒(méi)有好的解決辦法。

           

          正在放音的同時(shí)用串口發(fā)送調(diào)節(jié)音量也遇到了問(wèn)題,一開(kāi)始的解決辦法是打斷當(dāng)前語(yǔ)音,延時(shí)超過(guò)最大語(yǔ)音長(zhǎng)度的時(shí)間,再發(fā)送修改APC的指令。這樣做的原因是如果用本程序在發(fā)完當(dāng)前音后突然發(fā)送修改APC的指令時(shí)候,芯片會(huì)從頭到尾讀所有音?。〉阶詈笞屑?xì)研究才發(fā)現(xiàn)這個(gè)程序中有個(gè)修改永久內(nèi)部寄存器的指令,當(dāng)正在進(jìn)行讀音操作發(fā)送修改內(nèi)部永久寄存器時(shí)會(huì)導(dǎo)致以上現(xiàn)象,把此程序剝離后實(shí)現(xiàn)了邊播放語(yǔ)音邊調(diào)節(jié)音量。發(fā)送時(shí)也要注意判斷芯片狀態(tài),RDY1后發(fā)送,RDY再次為1時(shí)繼續(xù)發(fā)放音指令。

          本芯片的錄音采用拷貝機(jī),拷貝機(jī)燒錄語(yǔ)音時(shí)也需注意以下問(wèn)題:首先是在最后的語(yǔ)音后添加一空語(yǔ)音,以保證錄音不會(huì)出現(xiàn)問(wèn)題;其次是燒錄語(yǔ)音時(shí)電腦除了運(yùn)行燒錄語(yǔ)音的程序,其它什么都不要開(kāi),什么QQ,殺毒軟件等都要關(guān)閉,最好鼠標(biāo)都不要?jiǎng)?!燒錄語(yǔ)音前最好檢查下聲卡驅(qū)動(dòng),保證有驅(qū)動(dòng)并且最新,最好將聲卡聲音輸出設(shè)置(本機(jī)為AC97 Audio)中喇叭組態(tài)設(shè)置為耳機(jī),不要什么立體聲等其他狀態(tài)。音量大小可以隨意,本試驗(yàn)設(shè)置最大。官方意見(jiàn)是三分之二的狀態(tài),總之,在噪音最小的情況下也要保證音量。

                 第一次芯片初始化修改APC時(shí),最好在前面添加chk_mem這個(gè)指令,在1700datasheet里的說(shuō)明并不多。大意是檢查環(huán)狀存儲(chǔ)器存儲(chǔ)地址是否首尾相連的意思。因?yàn)榫W(wǎng)上有人反映不添加此指令APC修改不了。

          拷貝機(jī)很貴,并不是必須買,本芯片燒錄語(yǔ)音的拷貝機(jī)也不是自己的,囧!燒錄語(yǔ)音的試驗(yàn)還沒(méi)做過(guò),將來(lái)會(huì)做這方面的試驗(yàn)。另外芯片也有次品,主要表現(xiàn)是在放音時(shí)有很大的“咔嚓”聲,還有一個(gè)干脆就是燒不了音!拿去退貨!試驗(yàn)樣本100ISD1760,次品率十五分之一。

          本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
          打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          火車站信號(hào)自動(dòng)語(yǔ)音播報(bào)系統(tǒng)的設(shè)計(jì)
          ISD4002語(yǔ)音芯片C程序 - wangxing的日志 - 網(wǎng)易博客
          WT588D語(yǔ)音芯片在智能儀表中的應(yīng)用
          基于ISD4004語(yǔ)音芯片和AT89S52單片機(jī)的語(yǔ)音播報(bào)記
          ISD2560語(yǔ)音芯片的錄放電路設(shè)計(jì)
          ISD4003系列高保真語(yǔ)音錄放IC
          更多類似文章 >>
          生活服務(wù)
          分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
          綁定賬號(hào)成功
          后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點(diǎn)擊這里聯(lián)系客服!

          聯(lián)系客服