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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 基于FPGA的模擬信號波形的設(shè)計

          基于FPGA的模擬信號波形的設(shè)計

          作者: 時間:2011-10-22 來源:網(wǎng)絡 收藏

          4 實驗結(jié)果

          4.1階梯波

            這里,簡要地介紹一下階梯波的具體產(chǎn)生過程。首先,需要一個可產(chǎn)生4種不同直流電壓的電路,使其能夠在不同的控制組合狀態(tài)下,會輸出不同幅度的直流電壓。該電路總共有4個控制輸入端,通過DSP的軟件程序控制組合的輸入。當組合狀態(tài)為“0001”時,電路會輸出幅度為4V的直流電壓,而當組合狀態(tài)為“0010”時,電路將輸出幅度為5v的直流電壓。同時,還要給出其塒應的輸出位置。這樣.當程序循環(huán)改變輸入的組合狀態(tài)時,在雙蹤顯示模式下,就可以得到如圖2所示的階梯波,將這一波形輸入到示波器的x軸上,就會在示波器的相應位置上出現(xiàn)四個亮點。


          圖2階梯波波形

            在實際工程中,通過DSP程序在中進行兩種不間脈沖寬度之間的轉(zhuǎn)換,將所需脈沖寬度的經(jīng)過外部的單穩(wěn)態(tài)觸發(fā)器設(shè)置適當?shù)膶挾?,再?jīng)過微分、積分電路中,就會形成如圖3所示的波形,把這一波形輸入到示波器的Y軸上,并將其設(shè)置為“X-Y”檔,最后就會顯示出四條亮線。當圖(a)中的較窄脈沖輸入到Y(jié)軸時,通過程序使其在不同的幅值點的停留時間基本保持一致,這樣,它所對應的顯示亮線會比較均勻;而當圖 (b)中的較寬脈沖輸入到Y(jié)軸時,通過程序使其在最高幅值點處停留的時間比在其它幅值點停留的時間長,這使得它所對應的亮線頂部比亮線的其它部分較亮,最后就會在示波器上顯示出形狀類似火柴頭的亮線圖形。


          圖3兩種寬度在脈沖信號

          4.2鋸齒波波形

            同樣地,按照相間的構(gòu)想就可以產(chǎn)生鋸齒波波形。由上可知,會輸出1600Hz的脈沖作為外部電路的觸發(fā)信號,在它的作用下,模擬電路會產(chǎn)生一個長為100us的掃描信號,將其作為示波器上X軸的輸入信號,而將0V的直流電壓輸入Y軸。那么,根據(jù)示波器的顯示原理,由于Y軸的輸人為0V,則亮點只能出現(xiàn)在x軸上,而x軸的輸入信號又是一個頻率值固定的連續(xù)信號,這樣在示波器上就會顯示出一個在x軸上連續(xù)的扣描基線的波形。然后,通過DSP 的軟件程序控制模擬電路,產(chǎn)生連續(xù)變化的直流電壓值,再輸出到示波器的Y軸上時,就可以在示波器上得到鋸齒波波形,如圖4所示。


          圖4鋸齒波波形

          5 結(jié)論

            這里,利用構(gòu)成核心控制電路用以產(chǎn)生模擬波形的控制信號,再輔以外圍的電路生成鋸齒波和階梯波。通過實驗觀察,產(chǎn)生的波形清晰,無雜波干擾.表明該模擬電路能夠很好地處理漸變信號,充分地體現(xiàn)了模擬電路的優(yōu)點。并且,在實際工程中,合理地運用鋸齒波和階梯波來生成項目所需的各種模擬波形。只要將部分電路稍加改造,就可以應用于其他應用系統(tǒng)中。


          上一頁 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); })();