程式控制DDS訊號發生器的設計與實現

2022-11-19 04:36:03 字數 3640 閱讀 6576

一、 設計任務書

1、目的

(1)培養學生以實際工程性的整體思路來完成整個專案;

(2)培養學生電子專案綜合設計和管理及協作能力;

(3)通過完成專案設計製作,使學生完整地進行設計、製作、測試、總結等全過程。

2、具體任務

設計和製作乙個程式控制dds訊號發生器,基本要求為有智慧型cpu晶元(微控制器、嵌入式系統、fpga)為主控晶元,以專用dds晶元為實現手段,輔助輸入、輸出手段,完成程式控制dds的設計與製作。

技術指標:

1) 最終頻率輸出範圍為10hz——8mhz(正弦波);

2) 外部供電電壓+5v、0v;

3) 八位led數碼管顯示輸出頻率;

4) 輸出頻率可設定調整(最小設定步長10hz);

5) 主控cpu和晶元自行選擇;

6) 繪製pcb電路板實現。

工程性要求:

1)三人為乙個專案組,由一人當組長;

2)有專案整體設計報告、專案的進度表和最終的測試報告和使用手冊;

4)以專案組為考核整體,兼顧小組分工;

5)製作焊接工藝(貼片工藝);

6)整體產品結構合理,使用方便、美觀。

3、基本原理

dds是直接數字式頻率合成器(direct digital synthesizer)的英文縮寫。與傳統的頻率合成器相比,dds具有低成本、低功耗、高解析度和快速轉換時間等優點,廣泛使用在電信與電子儀器領域,是實現裝置全數位化的乙個關鍵技術。

一塊dds晶元中主要包括頻率控制暫存器、高速相位累加器和正弦計算器三個部分。頻率控制暫存器可以序列或並行的方式裝載並寄存使用者輸入的頻率控制碼;而相位累加器根據頻率控制碼在每個時鐘週期內進行相位累加,得到乙個相位值;正弦計算器則對該相位值計算數位化正弦波幅度(晶元一般通過查表得到)。dds晶元輸出的一般是數位化的正弦波,因此還需經過高速d/a轉換器和低通濾波器才能得到乙個可用的模擬頻率訊號。

另外,有些dds晶元還具有調幅、調頻和調相等調製功能及片內d/a變換器。

圖1 dds基本結構圖

4、基本元器件(供參考)

1)dds晶元——ad9833;

2)cpu板或晶元——8051系列;

3) 按鍵;

4 共陰級led數碼管;

5)驅動三極體;

6)電阻電容和連線線若干。

5、測試要求:

1)外接電源+5v、0v;

2) 利用示波器測試輸出正弦波(1路);

3)輸出頻率測試(10hz-8mhz程式控制可調)。

二、設計框圖及電路系統概述

圖2 系統結構框圖

圖3 設計框圖

選用89s51微控制器為主控晶元,以專用dds晶元9833為實現手段,6個按鍵控制輸入、輸出,並由8位數碼管顯示,從而完成程式控制dds訊號發生器的設計與製作。

三、 各單元電路的設計方案及原理說明

ad9833的主要特點如下:

●頻率和相位可數字程式設計;

●工作電壓為3v時,功耗僅為20mw;

●輸出頻率範圍為0mhz-12.5mhz;

●頻率暫存器為28位(在25mhz的參考時鐘下,精度為0.1hz);

●可選擇正弦波、三角波、方波輸出;

●無需外界元件;

●3線spi介面;

●溫度範圍為-40℃-+105℃。

總體設計原理圖:如圖4所示

圖4原理圖

各部分功能:

一:led顯示電路:採用led顯示波形的頻率 。

二:cpu控制板或控制電路:形成掃瞄碼,鍵值識別、鍵處理、引數設定;形成顯示段碼;產生定時中斷;形成波形的數字編碼,並輸出到d/a介面電路和顯示驅動電路。

三: dds晶元:用來產生波形,具有調幅、調頻和調相等調製功能及片內d/a變換器。

四:幅度調整:調整波形的幅度。

五:鍵盤輸入電路:用鍵盤輸入,控制電路,用來調節波形輸出地頻率 。

六:電源指示電路:提供電源。

圖5 pcb版圖

四、 除錯過程及結果分析

protues**除錯:如圖6所示

圖6**圖

程式清單:

#include <>

#include <>

#include <>

#include ""

#include ""

#include ""

uchar cxzt = 0;

void initial()

void main()

}#include <>

#include <>

#include ""

#include ""

#include ""

#include ""

sbit led0 = p1^0; //led控制腳

sbit led1 = p1^1;

sbit led2 = p1^2;

sbit led3 = p1^3;

sbit led4 = p1^4;

sbit led5 = p1^5;

sbit led6 = p1^6;

sbit led7 = p1^7;

#define keycounter 4

uchar xs08個數碼管顯示的數值 */

uchar xs1;

uchar xs2;

uchar xs3;

uchar xs4;

uchar xs5;

uchar xs6;

uchar xs7;

uchar wei;

bit key_control = 0;

bit anxia = 0;

bit getkey = 0;

uchar keycont = 0;

uchar keynum = 0;

uchar keyvalue;

uchar m_key;

uchar key;

uchar curr = 0;

uchar halfsecond = 0;

uchar second = 0;

uchar minus = 0;

uchar seconds = 0;

code unsigned char displayy[31]=;

/* 定時器0用於顯示 */

void dujianpan(void);

void intt0() interrupt 1

if(key_control)

dujianpan();

key_control = !key_control;

}void dujianpan(void)

else

{if(anxia ==1)

switch(keyvalue)

case 0xf0:

keynum = jw1;

getkey = 1;

break;

case 0xe8:

keynum = jw2;

getkey = 1;

break;

case 0xd8:

getkey = 1;

keynum = jw3;

break;

case 0xb8:

keynum = jw4;

getkey = 1;

break;

函式訊號發生器的設計

山東農業大學資訊學院 課程設計 課程名稱 模擬電子技術基礎課程設計 題目名稱 函式訊號發生器的設計 姓名 李振 學號 20104640 班級 2010級一班 專業 電子資訊科學與技術 設計時間 2011 2012 1學期15 16周 教師評分 2011 年 12 月 9 日 目錄1設計的目的及任務2...

實訓報告函式訊號發生器

桂林電子科技大學資訊科技學院 模擬電子技術 實訓報告 學號 姓名 指導教師 2009 年1 月 14 日 實訓題目 簡易函式訊號發生器設計與製作 1.系統設計 1.1 設計要求 本課題所需要完成的是乙個能產生方波 三角波和正弦波的簡易函式訊號發生器。1.1.1 設計任務 輸出乙個方波 正弦波 三角波...

數字正弦訊號發生器的設計

內容提要 本系統由fpga 微控制器控制模組 鍵盤 lcd液晶顯示屏 dac輸出電路和末級放大電路構成。僅用單片fpga就實現了直接數字頻率合成技術 dds 產生穩幅正弦波,並在數字域實現了am fm ask psk等四類調製訊號。調製訊號既可由使用者輸入引數由fpga內部生成,也可以從外部輸入。整...