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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > AD9833型高精度可編程波形發(fā)生器特點(diǎn)介紹及其應(yīng)用

          AD9833型高精度可編程波形發(fā)生器特點(diǎn)介紹及其應(yīng)用

          作者: 時間:2011-12-19 來源:網(wǎng)絡(luò) 收藏
          4 的內(nèi)部寄存器功能

          內(nèi)部有5個寄存器,其中包括3個16位控制寄存器,2個28位頻率寄存器和2個12位相位寄存器。

          4.1 控制寄存器

          中的16位控制寄存器供用戶設(shè)置所需的功能。除模式選擇位外,其他所有控制位均在內(nèi)部時鐘MCLK的下沿被AD9833讀取并動作,表3給出控制寄存器各位的功能,要更改AD9833控制寄存器的內(nèi)容,D15和D14位必須均為0。

          4.2 頻率寄存器和相位寄存器

          AD9833包含2個頻率寄存器和2個相位寄存器,其模擬輸出為

          fMCLK/228×FREQEG (2)


          其中:FREQEG為所選頻率寄存器中的頻率字,該信號會被移相:

          2π/4096×PHASEREC (3)

          其中,PHASEREC為所選相位寄存器中的相位字。

          頻率和相位寄存器的操作如表4所示。





          5 設(shè)計

          AD9833可在L15型飛機(jī)控制盒配套的檢測盒中,利用AD9833產(chǎn)生頻率可調(diào)的正弦波,以模擬機(jī)輪速度傳感器的速度信號,從而對控制盒的剎車防滑通道能否正常的剎車防滑進(jìn)行檢測。

          5.1 AD9833的硬件電路連接

          檢測盒設(shè)計以TI公司的TMS320LF2407A型DSP作為核心控制器,中需要2路速度信號,因此需要檢測盒給出2路可獨(dú)立調(diào)節(jié)的頻率,圖5示出TMS320LF2407A與AD9833的硬件連接。



          外接有源晶體振蕩器的輸出送給2個AD9833作為主頻時鐘,DSP的SPI口采用主動工作方式,即用SPISIMO口發(fā)送數(shù)據(jù),為了與AD9833的時序相配合,DSP的接口時鐘(SPICLK信號)方式選擇有延時的下降沿,IOPC3和IOPC5作為電路選通信號,IOPC3為低電平時U2被選通,此時對U1寫數(shù)據(jù)無效;同理,IOPC53為低電平時U1被選通,此時對U2寫數(shù)據(jù)無效。

          5.2 軟件程序

          圖6示出了AD9833的軟件流程。



          無論是寫控制寄存器、頻率寄存器還是相位寄存器、在寫數(shù)據(jù)之前都需要把選通信號置為有效狀態(tài),這樣寫入的數(shù)據(jù)才會有效,否則無效。在DSP發(fā)送完1個數(shù)據(jù)字后將產(chǎn)生SPI中斷請求,本設(shè)計中未使用中斷方式,而且通過查詢中斷標(biāo)志來跳出,并虛讀DSP的接收緩沖器清除中斷標(biāo)志。
          上一頁 1 2 下一頁

          評論


          相關(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); })();