<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于SPI實(shí)現(xiàn)dsPlC與ISD語(yǔ)音芯片的通信設(shè)計(jì)

          基于SPI實(shí)現(xiàn)dsPlC與ISD語(yǔ)音芯片的通信設(shè)計(jì)

          作者: 時(shí)間:2011-12-14 來(lái)源:網(wǎng)絡(luò) 收藏

          對(duì)于4002,器件延時(shí)TPUD(8kHz采樣時(shí),約為25 ms)后才能開(kāi)始操作;因此,用戶發(fā)完上電指令后,必須等待TPUD.才能發(fā)出一條操作指令。下面是典型的操作。

          從00處發(fā)音,應(yīng)遵循如下時(shí)序:
          發(fā)POWERUP命令;
          等待TPUD(上電延時(shí));
          發(fā)地址值為00的SFTPLAY命令;
          發(fā)PLAY命令。
          器件會(huì)從00地址開(kāi)始放音,當(dāng)出現(xiàn)EOM時(shí),立即中斷,停止放音。
          如果從00處錄音,則按以下時(shí)序;
          發(fā)POWER UP命令;
          等待TPUD(上電延時(shí));
          發(fā)POWER UP命令
          等待2倍TPUD;
          發(fā)地址值為00的SETREC命令;
          發(fā)REC命令。
          器件便從00地址開(kāi)始錄音,一直到出現(xiàn)OVF(存儲(chǔ)器末尾)時(shí),錄音停止。其工作時(shí)序如圖3所示。

          6 電路
          本電路采用dsPICC30F6014數(shù)字信號(hào)控制器,通過(guò)3個(gè)按鍵開(kāi)關(guān)控制4002錄放音的動(dòng)作。S1、S2、S3分別接到控制器外部中斷INTl、INT2、INT3上。當(dāng)按下S1時(shí),開(kāi)始錄音,再次按下S1時(shí)停止錄音。如此反復(fù)即可多段錄音。同理,按下S2時(shí)開(kāi)始放音,再次按下S2是停止放音。如此反復(fù)順序播放多段錄音。按下S3關(guān)機(jī)。

          (1)硬件電路
          電路原理如圖4所示。整個(gè)電路由錄放電路、話筒輸入電路、按鍵開(kāi)關(guān)電路及LCD顯示電路構(gòu)成。由于本輸出直接驅(qū)動(dòng)普通耳機(jī),經(jīng)實(shí)驗(yàn)不需外部功放電路,直接利用4002內(nèi)部功放輸出即可。ISD4002作為從機(jī),其接口的MOSI接控制器的SDO;MISO接控制器的SDI;SCLK接SCK;SS接控制器的SS即可。LCD用于人機(jī)交互的界面顯示。

          (2)軟件設(shè)計(jì)
          程序包括主程序以及幾個(gè)子程序。主程序中,在完成初始化的工作之后,進(jìn)入一個(gè)while循環(huán),等待響應(yīng)按鍵觸發(fā)的中斷,若有按鍵按下,則進(jìn)入相應(yīng)的中斷服務(wù)程序。在按鍵S1的中斷服務(wù)程序中,設(shè)置一個(gè)標(biāo)志變量,Sl每按下一次,標(biāo)志變量取反,用來(lái)控制錄音及停止錄音。同理,S2的中斷服務(wù)程序中也設(shè)置一個(gè)標(biāo)志變量,控制開(kāi)始放音及停止放音。S3的中斷服務(wù)程序中則發(fā)送Power-Down指令關(guān)機(jī)。程序清單中給出了主程序以及中斷服務(wù)程序,另外包括LCD驅(qū)動(dòng)程序以及dsPIC的函數(shù)庫(kù)等。(編者注:源程序見(jiàn)本刊網(wǎng)站www.dpi.com.cn。)

          7 總 結(jié)
          該電路易于,功能簡(jiǎn)單實(shí)用,可擴(kuò)展性較好;輸出聲音清晰、自然。如要增加錄音時(shí)間,可選用ISD4000系列的其他,程序基本相同。另外,在設(shè)計(jì)過(guò)程中有以下幾點(diǎn)事項(xiàng)需要注意:
          ①在的數(shù)據(jù)傳輸中,不同所定義的傳輸順序可能不同,因此要注意是先傳高位還是先傳低位。ISD4002要求先傳高位數(shù)據(jù),如果與主芯片所定義的順序相反,則只要把指令碼反過(guò)來(lái)傳即可。
          ②由于ISD4002要求在時(shí)鐘前半個(gè)周期把數(shù)據(jù)放在傳輸線上,因此,在使用dsPIC的SPI函數(shù)庫(kù)時(shí)需要注意SPI初始化。在本設(shè)計(jì)中,使用的配置為SPl—CKE—ONCLK_P0L_ACTIVE_HIGH。
          以上兩點(diǎn)可能會(huì)幫助解決一些常見(jiàn)問(wèn)題。


          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();