基於MP430控製的正弦波信號源的設計與製作
發布時間:2016-09-29 責任編輯:susan
【導讀】本係統以MSP430為(wei)控(kong)製(zhi)核(he)心(xin)設(she)計(ji)並(bing)製(zhi)作(zuo)一(yi)個(ge)正(zheng)弦(xian)波(bo)和(he)脈(mai)衝(chong)波(bo)信(xin)號(hao)源(yuan)。本(ben)實(shi)驗(yan)分(fen)為(wei)四(si)大(da)模(mo)塊(kuai),分(fen)別(bie)是(shi)鍵(jian)盤(pan)掃(sao)描(miao)模(mo)塊(kuai),正(zheng)弦(xian)波(bo)產(chan)生(sheng)模(mo)塊(kuai),脈(mai)衝(chong)波(bo)產(chan)生(sheng)模(mo)塊(kuai)和(he)液(ye)晶(jing)顯(xian)示(shi)模(mo)塊(kuai)。
正弦產生部分采用DDS芯片AD9851產生頻率可控的正弦波,在實踐測試中得之從AD9851輸出的正弦波幅值會隨頻率變化,最後通過軟件編程明顯減少了幅值誤差。脈衝產生部分采用Verilog編程在FPGA內部產生占空比可調的脈衝波,解決了由將正弦波變成方波再送FPGA產生脈衝波的不穩定性。本係統工作可靠穩定,較好地完成了基本部分和發揮部分的要求。
一. 總體方案
本係統要求在給定±15V電源電壓條件下設計出一個能產生正波和脈衝波的信號源。信號頻率為20Hz~20kHz,頻率能程控步進調整(步長為5Hz),脈衝波的占空比在2%~98%之間能程控步進調整(步長2%),兩路信號均要求幅值在100mv到3V步進可調(步長為100mv),要求性能良好(頻率穩度高,非線性失真小等),方案考慮如下:
正弦波產生
方案一:采用單片函數信號發生器(如8038),8038可同時產生正弦波。脈衝波,方法簡單易行,用D/A轉換器的輸出來改變調製電壓,可以實現數控調整頻率,但步長難以滿足要求,且頻率穩定度不高。
方案二:采用鎖相式頻率合成器,利用鎖相環,將壓控振蕩器(vco)的輸出頻率鎖定在所需頻率上,該方案性能良好,但難以達到輸出頻率覆蓋係數的要求,且電路複雜,不適於產生低頻信號。
方案三:采用直接數字頻率合成芯片AB9851,可以很方便地生成正弦波和脈衝波。DDS特別適合於生成頻率低、頻帶寬、頻率穩定性和準確度較高及波形複雜的場合。
脈衝波產生
方案一:由D/A轉換器產生占空比相應的電壓,將之與正弦信號進行比較就可得到所需占空比方波。但這種方法精度較差,難以達到2%的步進要求。
方案二:先把正弦波變換為鋸齒波或三角波,然後進行比較。這樣一來雖然可以提高精度,但電路複雜,成本高,調試也困難。
方案三:采用計數定時方法,先將正弦波變換為方波送入FPGA,再用它的上升沿觸發一計時電路,該電路在計時期間輸出為高電平,計時終止後輸出為低電平, 從而實現脈衝波的占空比步進可調,占空比由單片機傳輸給FPGA。此方案構成的兩模塊有影響,形成信號源不穩定。
方案四:在單片機MSP430的控製下,通過軟件編程直接在FPGA內部產生可控占空比脈衝波,實現比較容易,產生信號源十分穩定。
根據以上分析,選用如下方案:
(1)正弦波采用DDS芯片AD9851用動態生成程序的方法來實現。
(2)方波的產生方波由編程在FPGA內部生成。
信號源係統的原理框圖如圖所示:

圖1.係統總體框圖
二. 係統設計
2.1 硬件設計
2.1.1 正弦波產生電路
DDS單片頻率合成器AD9851的ROM中已預先存入正弦函數表,其幅度按二進製分辨率量化,其相位一個周期360o按2∏/232的分辨率設立相位取樣點。然後存入ROM相應地址中。工作時,用單片機送入頻率碼。輸入采用並行方式,8位一個字節,分5次輸入,其中32位是頻率碼,另8位中的5位是初始相伴控製碼,3位是掉電控製碼。改變讀取ROM的數目,即可改變輸出頻率。
輸出頻率的一般表達式為 fout=kfc/232
式中,k為頻率碼,是個32位的二進製數。fc為係統時鍾頻率,即25MHz。
頻率變化範圍為20Hz~20kHz,周期變化範圍為50ms~50us。時鍾周期Tc=0.04us.當輸出頻率最高,即fomax=20 kHz,則Tomin=50us,
步進寬度為: △T=Tomin×2%=50×2%=1us

圖2
2.1.2 正弦波幅值可調電路
采用16位串行DA器件DAC8831來實現正弦波的幅度步進。將DDS生成的正弦波接到DAC8831的基準輸入端,通過單片機調整DA輸入數字量,從而完成正弦波100mv的步進和幅值預置。

圖3
2.1.3 脈衝波形成電路
在單片機的控製下通過verilog編程在FPGA內部產生可控脈衝波。

圖4
2.1.4 脈衝波幅值步進調整電路:
本部分采用16串行DA器件DAC8831,接口簡單,且精度較高。電路圖與圖3-2相同。
2.2 軟件設計
2.2.1 基本思路
單片機控製AD9851產生頻率和相位都可控的正弦波,頻率量由鍵盤設定,步進量為5Hz,AD9851頻率分辨率為0.006985Hz,完全能夠滿足要求。正弦信號送入DAC8831的基準輸入端,單片機控製DA的數字量調節其幅值,設置按鍵調整幅值可實現100mv的步進。在單片機的控製下編程在FPGA內部產生占空比可調的脈衝波,單片機向FPGA送入占空比值和頻率值,FPGA通過計數值從而改變輸出脈衝波的占空比和頻率,設置按鍵調整占空比和幅值。正弦信號送入DAC8831的基準輸入端,單片機控製DA的數字量調節其幅值,設置按鍵調整幅值可實現100mv的步進。
2.2.2 軟件流程圖

圖5.軟件流程圖
三、測試結果與分析
3.1 正弦波測試結果
表一:

圖6
3.2 脈衝波測試結果
表二:

圖7
3.3 相對誤差統計
表三:

圖8
3.4 誤差分析
(1)DAC8831的量化誤差 DAC8831為16串行輸入的D/A轉化器,會引入一定的誤差。
(2)由於條件有限,采用手工焊接電路影響了整個電路的布局與走線,從而引入了一定的噪聲與幹擾。
四、總結
在實現此項項目過程中,很快實現了對於產生可控的正弦波並在液晶上顯示的基本要求與發揮部分,DDS芯片AD9851產生頻率可控的正弦波,在實踐測試中得之從AD9851輸出的正弦波幅值會隨頻率變化,最後通過軟件編程明顯減少了幅值誤差。關鍵部分就在於產生占空比可控的脈衝波,起初的思路是由AD9851產生的正弦波經過滯回比較器生成方波送到FPGAchanshengkekongdemaichongbo,danzuihouchanshengdemaichongbopinlvyuzhengxianbopinlvbuduiyingqieyingxiangzhengxianbodewendingdu,lianggemokuaizhijianyouyingxiang,zuihoutaolungaibianfangan,zaiMSP430送入控製信號的前提下在FPGA內部產生可控的脈衝波,結果很理想,基本達到了實驗要求和發揮的部分。
特別推薦
- 噪聲中提取真值!瑞盟科技推出MSA2240電流檢測芯片賦能多元高端測量場景
- 10MHz高頻運行!氮矽科技發布集成驅動GaN芯片,助力電源能效再攀新高
- 失真度僅0.002%!力芯微推出超低內阻、超低失真4PST模擬開關
- 一“芯”雙電!聖邦微電子發布雙輸出電源芯片,簡化AFE與音頻設計
- 一機適配萬端:金升陽推出1200W可編程電源,賦能高端裝備製造
技術文章更多>>
- 築基AI4S:摩爾線程全功能GPU加速中國生命科學自主生態
- 一秒檢測,成本降至萬分之一,光引科技把幾十萬的台式光譜儀“搬”到了手腕上
- AI服務器電源機櫃Power Rack HVDC MW級測試方案
- 突破工藝邊界,奎芯科技LPDDR5X IP矽驗證通過,速率達9600Mbps
- 通過直接、準確、自動測量超低範圍的氯殘留來推動反滲透膜保護
技術白皮書下載更多>>
- 車規與基於V2X的車輛協同主動避撞技術展望
- 數字隔離助力新能源汽車安全隔離的新挑戰
- 汽車模塊拋負載的解決方案
- 車用連接器的安全創新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索





