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

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 一種基于FPGA的正弦波信號發(fā)生器的設(shè)計

          一種基于FPGA的正弦波信號發(fā)生器的設(shè)計

          作者: 時間:2010-11-09 來源:網(wǎng)絡(luò) 收藏

          摘要:現(xiàn)代測試領(lǐng)城中,經(jīng)常需要信號提供多種多樣的的測試信號去檢驗實際電路中存在的設(shè)計問題。傳統(tǒng)的信號多采用模擬電路搭建。以為例,結(jié)合DDS直接數(shù)字合成技術(shù),基于設(shè)計其他外圍電路構(gòu)成發(fā)生器。相比傳統(tǒng)的模擬信號發(fā)生器,該電路具有設(shè)計簡單,升級容易,波形穩(wěn)定等特點。
          關(guān)鍵詞:;DDS;發(fā)生器

          本文引用地址:http://www.ex-cimer.com/article/191487.htm

          O 引言
          信號發(fā)生器是用來為各種電路提供測試信號的儀器,在工程應(yīng)用和測試領(lǐng)域有著非常廣泛的應(yīng)用。目前傳統(tǒng)的信號發(fā)生器是使用模擬電路或者專用芯片搭建而成,但是存在頻率不商,穩(wěn)定性較差,且不易擴(kuò)展和調(diào)試的缺陷;而采用DDS直接數(shù)字頻率合成技術(shù)設(shè)計的信號發(fā)生器,改變了以往的設(shè)計思路,在精度、靈活性上大大超越了模擬信號發(fā)生器。隨著可編程邏輯器件的迅速發(fā)展,基于FPGA控制的DDS信號發(fā)生器使得電路設(shè)計更加簡單,而且通過預(yù)留的端口可輕松進(jìn)行二次開發(fā)。本文通過Altera公司的EPFl0K10LC84-4芯片,成功實現(xiàn)了正弦波信號發(fā)生器。

          1 系統(tǒng)硬件結(jié)構(gòu)
          本系統(tǒng)由健盤電路、LED顯示、FPGA單元、D/A轉(zhuǎn)化和低通濾波器構(gòu)成。以FPGA為主控制芯片,結(jié)合DDS直接數(shù)字頻率合成技術(shù)產(chǎn)生正弦波信號。系統(tǒng)總體設(shè)計結(jié)構(gòu)見圖1。

          a.JPG


          1.1 鍵盤電路
          在本系統(tǒng)中,通過鍵盤電路改變頻率控制字K,從而實現(xiàn)對正弦信號的頻率、相位的初始化設(shè)置。為了節(jié)省FPGA的I/O端口,簡化硬件線路,鍵盤電路采用4×4矩陣式健盤。鍵盤共設(shè)有14個鍵,其中包括4個功能健。具體鍵盤按鍵設(shè)置如表1。

          b.JPG


          使用時先通過“0~9”、“↑”、“↑”12個設(shè)置按鍵輸入所需信號頻率,再按下ENTER執(zhí)行健,頻率控制字K將刷新,使得輸出信號頻率發(fā)生變化。CLR鍵用于將原有的設(shè)定值清零。


          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞: FPGA 正弦波信號 發(fā)生器

          評論


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