基于DDS技术的简易波形发生器实验报告
基于DDS技术的波形发生器设计与仿真

基于DDS技术的波形发生器设计与仿真【摘要】本文介绍了基于FPGA技术的DDS波形发生器的原理与设计,并利用SignalTapII嵌入式逻辑分析仪对正弦波、三角波、方波、锯齿波进行仿真验证。
实验结果表明,利用FPGA能在很短时间内快速构建任意波形,提高了设计效率,具有实际应用价值。
【关键词】DDS;FPGA;波形发生器1.引言DDS频率合成器具有频率分辨率高[1],输出频点多,可达2N个频点(假设DDS相位累加器的字长是N);频率切换速度快,可达us量级;频率切换时相位连续的优点,可以输出宽带正交信号,其输出相位噪声低,对参考频率源的相位噪声有改善作用;可以产生任意波形;全数字化实现,便于集成,体积小,重量轻[2]。
本文介绍了DDS的基本原理,同时针对DDS波形发生器的FPGA实现进行了简要介绍,利用SignalTapII嵌入式逻辑分析仪对正弦波、三角波、方波、锯齿波进行仿真验证。
2.DDS波形发生器的FPGA实现FPGA的应用[3]不仅使得数字电路系统的设计非常方便,而且它的时钟频率已可达到几百兆赫兹,加上它的灵活性和高可靠性,非常适合用于实现波形发生器的数字电路部分。
使用FPGA设计DDS电路比采用专用DDS芯片更为灵活,只需改变FPGA中的ROM数据,DDS就可以产生任意波形,具有相当大的灵活性。
2.1 FPGA设计流程FPGA的设计框图如图1所示,FPGA的主要功能是:产生与外围电路的接口电路,使其能够接受外围逻辑控制信号;保存频率字,并构成相位累加器,产生与主时钟相同频率的RAM寻址字;用内部的存储块构成存放多种波形数据的ROM,并通过相应的控制线进行选择;构造出两个多波形选择输出的输出通道,其中的一路通道可具备移相功能;用内部的PLL倍频外部低频晶振,并输出与主时钟同频的时钟,驱动片外高速D/A。
2.2 时钟模块根据耐奎斯特采样定理要得到输出频率为10MHz的信号,其所输入的信号时钟频率必须达20MHz以上。
DDS信号发生器实验报告含原理图PCB和代码

电子信息技术综合实训报告格式竞赛题名称:《DDS信号发生器的设计》队员名称:评阅人签名:2012年9月15日1、设计思路描述:本设计是一个以AT89C51单片机为核心基于DAC0832芯片的DDS信号发生器。
信号发生器采用数字波形合成技术,通过硬件电路和软件程序相结合,可输出正弦波和三角波,波形的转换可通过软件控制。
本设计通过按键选择波形,经过AT89C51单片机将数据输出到DAC0832,由数字信号转变为模拟信号,再通过运放器稳定地输出到示波器上。
原理框图如下:2、硬件电路图:DAC0832是采样频率为八位的D/A转换器件,芯片内有两级输入寄存器,使DAC0832具备双缓冲、单缓冲和直通三种输入方式,以便适于各种电路的需要(如要求多路D/A异步输入、同步转换等)。
D/A转换结果采用电流形式输出。
要是需要相应的模拟信号,可通过一个高输入阻抗的线性运算放大器实现这个供功能。
运放的反馈电阻可通过RFB端引用片内固有电阻,还可以外接。
该片逻辑输入满足TTL电压电平范围,可直接与TTL电路或微机电路相接。
下面是DAC0832引脚图和内部结构电路图DAC0832引脚功能说明:DI0~DI7:数据输入线,TLL电平。
ILE:数据锁存允许控制信号输入线,高电平有效。
CS:片选信号输入线,低电平有效。
WR1:为输入寄存器的写选通信号。
XFER:数据传送控制信号输入线,低电平有效。
WR2:为DAC寄存器写选通输入线。
Iout1:电流输出线。
当输入全为1时Iout1最大。
Iout2: 电流输出线。
其值与Iout1之和为一常数。
Rfb:反馈信号输入线,芯片内部有反馈电阻。
Vcc:电源输入线 (+5v~+15v)Vref:基准电压输入线 (-10v~+10v)AGND:模拟地,摸拟信号和基准电源的参考地。
DGND:数字地,两种地线在基准电源处共地比较好。
主控电路及数模转换电路分别如下:主控电路数模转换电路3软件流程图:4测试方法描述:运用proteus软件设计好电路图,将程序代码编译好以后载入proteus中的AT89C51芯片进行仿真。
基于DDS的任意波形信号发生器的开题报告

基于DDS的任意波形信号发生器的开题报告一、题目基于DDS的任意波形信号发生器二、选题背景任意波形发生器作为一种测试仪器,广泛应用于电子、通讯、航空航天、军工等领域。
目前市场上的任意波形发生器存在着各种局限性,例如波形生成精度不高、输出频率范围小、信号失真等问题。
而采用直接数字合成(DDS)技术的任意波形发生器可以解决这些问题。
DDS技术是一种基于数字信号处理的技术,能够直接在数字域中实现信号的合成和处理。
DDS技术的主要特点是输出频率范围广、频率分辨率高,信号稳定度好,价格相对较低。
因此,基于DDS技术的任意波形发生器具有较高的可靠性、精度和稳定性,是一种理想的波形发生器。
三、研究内容该课题的研究内容主要包括以下几个方面:1. DDS技术原理及算法。
2. 硬件设计:包括DDS芯片的选型、时钟电路、滤波电路、输出端口等电路的设计。
3. 软件设计:包括DDS控制算法、波形生成算法、用户操作界面等软件的设计。
4. 系统整合:将硬件和软件进行系统集成,并进一步进行测试和完善。
四、研究意义通过研发基于DDS技术的任意波形发生器,可以实现信号生成的高精度、高稳定性、高可靠性、高灵活性和高扩展性,可以在测试仪器、通信设备、导航、医疗和科研等领域中得到广泛应用。
五、拟解决的关键问题1. DDS芯片的选型和相关电路设计,以保证波形发生器的稳定性和精度。
2. 波形的生成和输出电路的设计,以保证波形的准确性和稳定性。
3. 软件的设计和开发,包括DDS控制算法、波形生成算法、用户操作界面等等,以实现任意波形的快速、精确生成。
六、研究方法1. 文献调研:查阅相关学术资料、专利文献,了解DDS技术的原理和应用。
2. 硬件设计:根据选型要求和设计需求,设计和验证相应的电路方案。
3. 软件设计:根据硬件设计需求和用户需求,设计和开发相应的软件方案。
4. 系统整合:将硬件和软件进行系统集成,并进行测试和完善。
七、可行性分析基于DDS技术的任意波形发生器已经有了相应的理论基础和技术支持,并且在工业界和科研领域已经得到了广泛的应用和验证。
基于DDS技术的任意波形发生器设计

计算机应用基于DDS 技术的任意波形发生器设计浙江大学(杭州310027) 刘成尧 王小海 祁才君 王文华 摘 要 文章介绍了基于DDS 技术的任意波形发生器的设计。
详细讨论了CPLD 器件在DDS 技术实现中的具体应用。
该任意波形发生器具有输出频率稳定、准确,波形质量好和输出频率范围宽等优点。
关键词 直接数字频率合成 CPLD 任意波形发生器1 概述基于DDS 技术的任意波形发生器(AW G )利用高速存储器作为查找表,通过高速D/A 转换器对存储器的波形进行合成[1]。
它不仅可以产生正弦波、方波、三角波和锯齿波等规则波形,而且还可以通过上位机(或下位机)编辑,产生真正意义上的任意波形。
例如,它能模拟编码雷达信号、潜水艇特征信号、磁盘数据信号、机械振动瞬变过程、电视信号以及神经脉冲之类的波形,也能重演由数字示波器(DSO )捕获的波形。
DDS 技术的实现依赖于高速、高性能的数字器件。
可编程逻辑(CPLD )器件以其速度高、规模大、可编程,以及有强大EDA 软件支持等特性,十分适合实现DDS 技术。
本文中即将讨论的是EPF6016A 器件在DDS 技术实现任意波形发生器中的具体应用。
2 DDS 实现任意波形发生器的原理DDS 技术建立在采样定理的基础上,它首先对需要产生的波形进行采样,将采样值数字化后存入存储器作为查找表,然后再通过查表将数据读出,经过D/A 转换器转换成模拟量,把存入的波形重新合成出来。
DDS 原理如图1所示。
图1 DDS 的原理框图 利用上位机生成所需波形的数据,然后通过单片机将生成的数据写入波形存储器(RAM )中,再由DDS 系统将波形合成出来,这样就可以产生出所需的任意波形。
DDS 系统任意波产生的原理图如图2所示。
图2 DDS 系统任意波形的产生3 CPLD 在DDS 技术实现中的应用FL EX6016芯片的主要结构包括132个逻辑阵列块(logic array block )、快速通道(fast track )和I/O单元[2]。
DDS信号发生器报告

目录第1节引言 (2)1.1 信号发生器概述 (2)1.2 本设计任务和主要内容 (2)第2节系统主要硬件电路设计 (3)2.1 总体设计方案与比较 (3)2.2 单片机控制系统原理 (4)2.3 单片机主机系统电路 (5)2.3.1电源模块 (5)2.3.2按键模块 .................................................................. 错误!未定义书签。
2.3.3 D/A转换模块 (7)2.4 LCD液晶显示电路 (8)2.4.1 ST7920 LCD组成原理 (9)2.4.2 ST7920的应用 (10)2.5 DDS信号发生电路 (12)2.5.1 DDS的性能特点 (12)2.5.2 DDS的应用 (13)2.6 模拟乘法器MC1595 (16)第3节系统的软件设计 (19)3.1 软件设计概况 (19)3.2 主程序流程图 (19)3.2 事务处理任务流程图 (20)3.3 数据处理原理 (20)3.4 系统主程序设计 (21)3.4.1 LCD发送及接收部分 .............................................. 错误!未定义书签。
3.4.2 AD9850发送部分 .................................................... 错误!未定义书签。
3.4.3 D/A5615发送部分 .................................................. 错误!未定义书签。
第4节结束语 .. (26)参考文献 (27)基于DDS技术的信号发生器第1节引言信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。
本设计分五个模块:单片机控制及显示模块、数模(D/A)转换模块、波形产生模块、输出显示模块、电源模块。
基于DDS技术的任意波形发生器研究与设计

1 DDS概述1.1 DDS基本原理直接数字合成技术(Direet Digital Synthesis,简称DDS)是建立在采样定理基础上,首先对需要产生的波形进行采样,将采样值数字化后存入存储器作为查找表,然后通过查表读取数据,再经D/A转换器转换为模拟量,将保存的波形重新合成出来。
DDS基本原理框图如图1所示。
由图l看出,除了滤波器(LPF)之外,DDS系统都是以数字集成电路实现,因此DDS系统易于集成和小型化。
DDS系统的参考时钟源通常是一个具有高稳定性的晶体振荡器,整个系统的各个组成部分提供同步时钟。
频率字(FSW)实际上是相位增量值(二进制编码),作为相位累加器的累加值。
相位累加器在每一个参考时钟脉冲输入时,累加一次频率字,其输出相应增加一个步长的相位增量。
由于相位累加器的输出连接在波形存储器(ROM)的地址线上,因此其输出的改变就相当于查表。
这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出。
ROM的输出送到D/A转换器,经D/A转换器转换成模拟量输出。
1.2 DDS的基本参数及其计算在系统时钟脉冲的作用下,相位累加器不停累加,即不停查表,把波形数据送到D/A 转换器转换成模拟量输出,从而合成波形。
滤波器则进一步平滑D/A转换器输出的近似正弦波的锯齿阶梯波,同时衰减不必要的杂散信号。
设频率字(FSW)的值为d,系统时钟频率为f,相位累加器的字长为N,则系统的输出频率为:2 任意波形发生器的设计方案基于DDS技术的任意波形发生器主要由微处理器控制模块、键盘与显示模块、DDS通道的FPGA实现模块、D/A转换模块以及滤波器模块组成。
同时片外扩展了4 KB程序存储器SRAM和6 KB数据存储器ROM,分别用于存储波形抽样数据和3种标准输出波形抽样数据。
本系统设计原理如图2所示。
2.1 微处理器控制模块采用AT89C5l单片机完成数据处理和控制其他电路工作。
将键盘接收的数据通过特定算法转换成二进制码,再将处理后的控制字、波形参数和其他器件的控制信号发送出去。
12DDS波形发生器

三角波
方波
锯齿波
LOGO
四、实验步骤及内容
4 频率以及幅度的控制和显示
通过键盘由单片机控制改变前级D/A的输出幅度实现幅度调 节并通过LCD显示当前输出信号的幅度,同样通过键盘由 单片机控制频率控制字的改变通过LCD显示当前输出信号 的频率实现对幅度和频率的控制以及显示。
四、实验步骤及内容
系统整 体框图
DDS信号源
一、实验目的
1 了解直接数字频率合成技术(DDS)的原理。
2 学会使用单片机和CPLD产生不同频率、不同幅度 的正弦波、方波与三角波。
二、实验原理
系统以单片机作为核心控制模块,向双口RAM 写入波形数据,并控制前级D/A的输出电压幅度, 前级D/A提供后级D/A的基准电压,从而间接控制输 出波形的幅度。
四、实验步骤及内容
2 幅度控制的实现
幅度控制部分采用双D/A技术,由单片机控制,第一级D/A 的输出波形作为第二级D/A的基准电压源,以此来控制信号 发生器的输出电压幅度。
3 后级滤波的实现
采用二阶巴特沃兹滤波器。巴特沃兹滤波器的幅度函数是单 调下降的,但巴特沃兹滤波器能实现最大平坦幅度滤波。由 于信号发生器的输出波形中的主要噪声为D/A转换产生的高频 分量,与设计的频率范围相差很远,所以相对来说,滤波器 在频带内的平坦程度比其衰减陡度更为重要。
fout
fclk 2N
*M
f
f clk 2N
通过改变频率 控制字M实现 对输出信号频 率的调节
三、实验器材
单片机89C51,CPLD DAC0800,DAC0832,IDT7312
键盘,液晶显示屏
实验器材
四、实验步骤及内容
1 直接数字频率合成(DDS)的实现
简易DDS波形发生器设计

实验二简易DDS波形发生器设计084775116 马丽丽084775117 潘奕颖一、实验目的:进一步熟悉绘制ASM图分析实验的方法;进一步掌握将VHDL程序符号化的使用方法;熟悉ROM表的制作与符号化;了解DDS波形发生器的基本原理。
二、实验内容:利用FPGA和DAC,设计一个简易的DDS波形发生器并发出正弦波。
三、设计要求:1.分辨率优于1Hz;2.ROM表长度8位,位宽10位;3.输出频率优于100kHz(每个周期数据点大于50);4.显示信号频率/频率控制字(可切换);5.直接输入频率控制字或输出频率。
四、实验仪器:计算机1台;QUARTUS II软件一套;试验箱1台。
五、方法步骤:1.绘制ASM图;阅读实验要求,分析实验过程,然后绘制ASM图如下页:2. 建立一个工程;打开QUARTUS II 软件,Files → New Project Wizard → 选择储存路径→ next → next → 选择芯片Cyclone II EP2C5T144C8 → next → finish 。
3. 编写累加器的VHDL 文件,并将其转换成图形文件;①Files → New → VHDL File → 开始编写程序; ②经过编写后,进行编译(Tools → Compiler Tool →Strart),改错,再编译,改错直至编译成功,保 存文件名为“dds1.vhd ”;程序如下:library ieee;library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity dds1 isport(m:in std_logic_vector(19 downto 0);cp,r:in std_logic;q:out std_logic_vector(7 downto 0));end dds1;architecture z of dds1 issignal t:std_logic_vector(22 downto 0);signal n:std_logic_vector(22 downto 0);beginprocess(cp)beginn<="000"&m;if cp'event and cp='1' thenif r='1' thent<="00000000000000000000000";elsif t+n>8388607 thent<="00000000000000000000000";elset<=t+n;end if;end if;q<=t(22 downto 15);end process;end z;③编译通过以后,File → Create/Update → Create Symbol Files For Current File。
DDS信号发生器实验报告

DDS信号发生器一、实验目的:学习利用EDA技术和FPGA实现直接数字频率综合器DDS的设计。
二、实验原理实验原理参考教材6.4节和6.11节相关内容。
三、实验内容1、实验原理参考教材6.4节相关内容。
根据6.4.2节和例6-10,在Quartus II上完成简易正弦信号发生器设计,进行编辑、编译、综合、适配、仿真;2、使用SignalTap II测试;3、硬件测试:进行引脚锁定及硬件测试。
信号输出的D/A使用DAC0832,注意其转换速率是1μs。
下载到实验系统上,接上D/A模块,用示波器测试输出波形;4、按照教材图6-72完成DDS信号发生器设计,进行编辑、编译、综合、适配、仿真,引脚锁定及硬件测试。
5、建立.mif格式文件。
四、实验步骤1、建立.mif文件:(1)设定全局参数:(2)设定波形:(3)文件保存:2、新建工程:3、LPM—ROM定制:(1)(2)(4)(5)(7)sinrom源程序:module SIN_CNT(RST,CLK,EN,Q,AR); output [7:0] Q;input [6:0] AR;input EN,CLK,RST;wire [6:0] TMP;reg[6:0] Q1;reg[7:0] F;reg C;always @(posedge CLK)if(F<AR) F<=F+1;elsebeginF=8'b00;C=~C;endalways @(posedge CLK or negedge RST)if(!RST) Q1<=7'b0000000;else if(EN) Q1<=Q1+1;else Q1<=Q1;assign TMP=Q1;sinrom IC1(.address(TMP),.clock(CLK),.q(Q)); endmodule4、锁相环:5、顶层文件:6、SignalTap II的使用7、锁定引脚8、下载。
用DDS实现一个波形发生器实验报告

用DDS实现一个波形发生器1、实验课题:用DDS实现一个波形发生器,可以产生正弦波,方波,三角波三种周期性波形。
2、功能概述:用DDS实现一个波形发生器,可以产生正弦波,方波,三角波三种周期性波形。
3、总体结构:图3-1.总体结构图4、接口描述:相位累加器:在时钟的作用下,进行相位累加。
波形存储器:进行波形的相位—幅值转换。
频率预制与调节电路的作用:实现频率控制量的输入。
D/A转换器:把已经合成的正弦波的数字量转换成模拟量。
滤除生成的阶梯形正弦波中的高频成分,将其变成光滑的正弦波。
5、技术指标:模块代码:module dds_ver( clk_50MHz,fout,change,freq,key0 );input clk_50MHz; //输入50MHz的全局时钟input[1:0] change; //定义输入变量,用来切换输出波形,一共4个档位input [2:0] freq; //定义输入变量,用来改变输出信号的频率,一共8个档位output [7:0] fout; //输出8为rom的值,用来驱动DA转化芯片,输出波形input key0; //定义输入变量,用来改变幅值计数器的值,从而改变幅值//调用FPGA芯片集成的锁相环模块,让输出的波形相位更稳定pll pll_inst (.inclk0 ( clk_50MHz ),.c0 ( clk_pll ) );wire [7:0] fout; //分频功能,根据输入变量的不同实现不同的分频,用于读取rom的步长reg clk;reg [15:0] cnt;always @(posedge clk_pll) //利用计数器实现任意分频begin if(cnt==(50*(freq+1))) //设定频率控制字节begincnt=0;clk=~clk;endelsecnt=cnt+1;end //调幅功能,输入key0更变计数器cntvol的值,从而更变输出信号的幅度reg [2:0] cntvol;always@(negedge key0)beginif (cntvol>=1&&cntvol<7)cntvol<=cntvol+1'd1;else cntvol<=1'b1;end //地址累加器,实现地址的分段累加,从而实现四种不同波形的切换输出reg [5:0] addr;always @(posedge clk)beginbeginif(change==0)beginif(addr>=0&&addr<15) //切换正弦波addr=addr+1;elseaddr=0;endelse if(change==1)beginif(addr>=16&&addr<31) //切换方波addr=addr+1;elseaddr=16;endelse if(change==2)beginif(addr>=32&&addr<47) //切换正三角波addr=addr+1;elseaddr=32;endelse if(change==3)beginif(addr>=48&&addr<63) //切换反三角波addr=addr+1;elseaddr=48;endend end。
基于dds的任意波形设计课程设计报告

测控电路设计专业:测控技术与仪器班级:07050341姓名:张学东学号:0705034132基于DDS技术的任意波形发生器的设计1.设计思路在电子技术领域中,经常要用一些信号作为测量基准信号或输入信号,也就是所谓的信号源。
信号源有很多种,包括正弦波信号源、函数发生器、脉冲发生器、扫描发生器、任意波形发生器、合成信号源等。
作为电子系统必不可少的组成部分的信号源,在很大程度上决定了系统的性能,因而常称之为电子系统的“心脏”。
随着电子技术的发展,对信号源的要求越来越高,要求其输出频率范围从零Hz到几GHz;频率分辨率达到mHz甚至更小。
同时,对频率合成器功耗、体积、重量等也有更高的要求。
而传统的信号源采用振荡器,只能产生少数几种波形,自动化程度较低,且仪器体积大、灵活性与准确度差。
本设计研究的信号发生器的基本思路是:基于DDS芯片AD9850基础的任意波形发生器。
DDS以稳定度高的参考时钟为参考源,通过精密的相位累加器和数字信号处理,通过高速D/A变换器产生所需的数字波形(通常是正弦波形),这个数字波经过一个模拟滤波器后,得到最终的模拟信号波形;系统的微处理器采用AT89C51,外围电路和调理电路主要是接口电路、滤波电路和积分电路等的设计。
同时还包括键盘接口和液晶显示器。
系统的软件主要是启动和初始化AT89C51,然后处理键盘输入的频率控制字和相位控制字,并将其转换为32位的二进制数的控制字,最后并行递交给AD9850并启动AD9850,让它实现从正弦查询表中取数产生波形再输出,然后经过相应的电路,输出相应的波形。
2.方案设计2.1 DDS的基本原理1971年,美国学者j.Tierney等人撰写的" A Digital Frequency Synthesizer"-文首次提出了以全数字技术,从相位概念出发直接合成所需波形的一种新的频率合成原理。
限于当时的技术和器件水平,它的性能指标尚不能与已有的技术相比,故未受到重视。
DDS实验报告

设计要求说明一.设计内容本实验的内容是使用DDS的方法设计一个任意频率的正弦信号发生器,利用Quartus II编辑、编译、综合、适配、仿真测试等工作,并绑定管脚进行硬件测试,最后通过嵌入式逻辑分析仪观察输出信号波形,并验证波形正确以后,再接入DA进行最终模拟输出。
二.设计目的1、进一步熟悉QuartusⅡ的软件使用方法;2、熟悉利用VHDL设计数字系统并学习LPM ROM的使用方法;3、学习FPGA硬件资源的使用和控制方法;4、掌握DDS基本原理,学习利用此原理进行信号发生器的设计。
三.设计要求基本要求:1、完成8位输出数据宽度的频率可调的移相正弦信号发生器。
提高部分:2、完成8位输出数据宽度的移相三角波、方波信号发生器。
3、波形发生器实现幅度可调。
基本原理直接数字频率合成器(DDS)是通信系统中常用到的部件,利用DDS可以制成很有用的信号源。
与模拟式的频率锁相环PLL相比,它有许多优点,突出为(1)频率的切换迅速;(2)频率稳定度高。
一个直接数字频率合成器由相位累加器、波形ROM、D/A转换器和低通滤波器构成。
DDS的原理框图如下所示:图1 直接数字频率合成器原理图其中K为频率控制字,f c为时钟频率,N为相位累加器的字长,D为ROM 数据位及D/A转换器的字长。
相位累加器在时钟f c的控制下以步长K作为累加,输出N位二进制码作为波形ROM的地址,对波形ROM进行寻址,波形ROM 输出的幅码S(n)经D/A转换器变成梯形波S(t),再经低通滤波器平滑后就可以得到合成的信号波形了。
合成的信号波形形状取决于波形ROM中存放的幅码,因此用DDS可以产生任意波形。
本设计中直接利用D/A转换器得到输出波形,省略了低通滤波器这一环节。
1、频率预置与调节电路不变量K被称为相位增量,也叫频率控制字。
DDS方程为:f0= f c K/2n,f0为输出频率,f c为时钟频率。
当K=1时,DDS输出最低频率(也既频率分辩率)为f c /2nDDS的最大输出频率由Nyguist 采样定理决定,即f c /2,也就是说K的最大值为2n-1.因此,只要N足够大,DDS可以得到很细的频率间隔。
波形发生器设计实验报告(推荐阅读)

波形发生器设计实验报告(推荐阅读)第一篇:波形发生器设计实验报告波形发生器设计实验报告一、设计目的掌握用99SE软件制作集成放大器构成方波,三角波函数发生器的设计方法。
二、设计原理波形发生器:函数信号发生器是指产生所需参数的电测试信号的仪器。
按信号波形可分为正弦信号、函(波形)信号、脉冲信号和随机信号发生器等四大类。
而波形发生器是指能够输出方波、三角波、正弦波等多种电压波形的信号源。
它可采用不同的电路形式和元器件来实现,具体可采用运算放大器和分立元件构成,也可用单片专用集成芯片设计。
设计原理图:三、设计元件电阻:R1 5.1K、R2 8.2K、R3 680、R4 3K、R5 39KR6 1K、R7 39K、R8 39K 电容:C 1uF 运算放大器:U1A LM324、U1B LM324 二极管:D1 3.3V、D23.3V 滑动变阻器:RW1 10K 接口:CON3 地线、GND四、设计步骤大概流程图1、打开99SE,建立Sch文件。
绘制原理图。
绘制原理图时要注意放大器的引脚(注意引脚上所对应的数字)和二极管的引脚(注意原理图和PCB中的引脚参数是否一致)。
元件元件库代码电阻:RES2 滑动变阻器:POT2电容:CAP 放大器:OPAMP 二极管:ZENER3 元件封装代码电阻: AXIAL0.4 滑动变阻器:VR5 放大器:DIP14二极管:DIODE0.4 电容:RB.2/.42、生成网络表格本步骤可完成建立材料清单(可执行report中的Bill of Material)、电器规则检查(Tools中ERC)、建立网络表(Design中Create Netlist,点击OK即可)3、PCB文件的设置建立PCB文件单双面板设置:Design中Options进行设置单双面板,及面板大小(8cm*7cm)建立原点(Edit中Origin中的set)并在KeepOutLayer层中制板4、引入网络表执行Design中Load Nets载入网络表,屏幕弹出对话框,点击Browse按钮选择网络表文件(*net),载入网络表,单机Execute,便成功引入网络表。
用直接数字合成器(DDS)实现正弦波形发生器设计

附表1:广州大学学生实验报告开课学院及实验室:物理与电子工程学院-电子楼317室2016年 5 月23 日图12-1 DDS的基本原理图的基本原理图,频率控制字和相位控制字分别控制DDS输出正(余)弦波的频率和相位。
DDS系统的核心是相位累加器,它由位相位寄存器组成。
每来一个时钟脉冲,相位寄存器以步长M增加。
、实验主要技术指标:弦波输出频率范围:1kHz~10MHz;2)具有频率设置功能,频率步进:100Hz;3)输出信号频率稳定度:优于10-4;4)输出电压幅度:在50Ω负载电阻上的电压峰-峰值Vopp≥1V;5)失真度:用示波器观察时无明显失真。
3、设计步骤:1)根据题目要求,参考GW48使用说明书,选取适当的模式来实现。
2)依据题目要求功能,设计顶层总体结构图。
3)使用VerilogHDL 语言来实现顶层结构中各个模块的功能,并创建顶层文件可调用的图形元件,如:累加器、相位寄存器、加法器、正弦查找表等模块。
4)创建顶层GDF文档,并将各模块连接。
5)根据题目要求,以及第一步所选模式,并查表,定义引脚。
6)编译并下载到目标芯片中。
7)利用实验箱验证所设计项目的各项功能。
三、实验原理图描述:电路原理图的顶层设计说明:1)1、32位加法器add。
由LPM_ADD_SUB宏模块构成。
设置了2阶流水线结构,使其在时钟控制下有更高的运算速度和输入数据稳定性。
2)2、32位寄存器ff。
由LPM_FF宏模块担任。
add与ff构成一个32位相位累加器。
其高10位A[31..22]作为波形数据ROM的地址。
3)3、正弦波形数据ROM。
正弦波形数据ROM模块sin_rom的地址线和数据线位宽都是10位。
这就是说,其中的一个周期的正弦波数据有1024个,每个数据有10位。
其输出可以接一个10位的高速DAC;如果只有8位DAC,可截去低2位输出。
ROM中的.mif数据文件可由Guagle_wave.exe 软件获得。
基于DDS技术的任意波形发生器

科技大学本科毕业设计(论文)学院电子信息学院专业电子信息科学与技术学生叶华班级学号0740306223指导教师迅二零一一年六月科技大学本科毕业论文基于DDS技术的任意波形发生器A DDS-Based Arbitrary Waveform Generator科技大学毕业设计(论文)任务书学院名称:电子信息学院专业:电子信息科学与技术学生:叶华学号:0740306223指导教师:迅职称:副教授摘要随着电子信息技术的发展,对各种数字模拟信号需求也更加复杂和多样化,任意波形发生器(AWG)的应用变得不可或缺。
本文提出了一种基于FPGA设计的采用DDS 技术任意波形发生器的设计方法。
设计的任意波形发生器除了可以等间隔步进调节频率外,还可以改变波形的采样点数。
该任意波形发生器支持上位机或其他设备通过串行通信或其他方式进行控制和数据传输。
在保留产生正弦、矩形、三角等基本波形的前提下可以输出任意波形。
任意波形的来源可以是发生器自身微控制器用函数生成,也可来至于上位机或其他设备的数据。
在本设计中,还提出了一种控制器和发生器主机分离的设计思路,使得人机交流更加方便和人性化。
跟传统的函数发生器或任意波形发生器相比,本设计有控制简单方便,任意波形来源丰富,产生的波形稳定度高,频率稳定,分辨率高等诸多优点。
关键词:直接频率合成(DDS);任意波形发生器(AWG);相位累加器;数模转换器AbstractWith the development of electronic information technology, the required of the digital and analog signals is more complex and diverse, arbitrary waveform generator (AWG) of the applications become indispensable. Inthis paper we present a methodwhichFPGA-Based and using DDS technology arbitrary waveform generator design. In addition to the design of the arbitrary waveform generator can adjust the frequency spaced steps, but also can change the waveform of the sampling points. The arbitrary waveform generator to support the serial communication or other means to control and data transfer from thehost computer or other device. Retain the sine, rectangle, triangle and other basic premise of the waveform can be output any waveform. The source can be arbitrary waveform generator generates its own micro-controller with a function, but also to regard the host computer or other device data. In this paper, we also raised a host controller and a separate generator design ideas, making human-computer communication more convenient and user friendly. Unlike traditional function generator or arbitrary waveform generator compared to the control of simple design, a rich source of arbitrary waveforms, the resulting waveform with high stability, frequency stability, and high resolution advantages.Key words:direct digital synthesis (DDS); arbitrary waveform generator (AWG); phase accumulator; DAC目录第一章绪论11.1研究背景11.1.1 国外现状11.2任意波形发生器原理21.3DDS基本原理21.4本文的主要容3第二章任意波形发生器设计方案32.1任意波形发生器系统组成32.2改进后的DDS模块与工作原理4第三章波形发生器的主体设计53.1FPGA电路设计63.1.1 PLL和RAM模块的定制73.1.2 通讯模块83.1.3 寄存器控制器模块93.2单片机控制电路设计93.2.1 用户接口模块103.2.2 UART模块113.2.3 2.4G无线模块123.2DAC输出模块与滤波电路的设计12第四章手持式控制终端设计154.1手持式控制终端的硬件选择154.2用户界面的设计164.2.1Put_Gui_Control()函数164.2.3Gui_Selection_Form()函数164.2.4Gui_DropdownMenu()函数17 4.3基本波形控制界面174.4触摸屏的输入校准184.5手绘波形输入界面194.5.1 手绘波形输入194.5.2 手绘波形输出204.6其他任意波形的产生204.6.1 调制波形输出204.6.2 合成波形输出21第五章上位机软件设计225.1上位机波形图形化显示235.2上位机与发生器间的通讯245.3上位机波形数据的导入26结论266.1各项指标参数276.2资源利用情况286.3存在的问题28致29参考文献30附录1第一章绪论1.1 研究背景任意波形发生器是一种能产生任意波形的信号源,它是近年来发展起来的一种信号发生器。
DDS信号发生器的使用实验

《信号与系统》实验报告4.1 DDS信号发生器的使用实验一、实验目的学会用DDS信号发生器产生所需要的信号波形,并能熟练地用示波器观察波形,为后续实验课打下基础。
二、实验内容用示波器观察DDS信号发生器产生的不同频率的正弦波、方波、三角波、锯齿波、阶梯波、正弦半波等7种波形。
三、实验器材信号与系统试验箱、双踪示波器各一台,专用连接导线多根。
四、实验原理将所需要产生的各种波形经过采样、量化后写入可檫除的读/写存储器中,构成波形查询表;不同波形的数据,在存储器中的地址不同,读出时用拨码开关变换高位地址,即可读取不同的波形;改变读取的速度,即可改变输出波形的频率;从存储器中输出的是数字信号,经D/A转换器后转换成模拟信号输出。
五、实验结果SEC 0.2ms 频率1KHZ SEC 0.2ms 频率2KHZSEC 0.1ms 频率4KHZ SEC 50us 频率8KHZSEC 20us 频率16KHZ 正弦波频率1KHZ锯齿波频率1KHZ 方波频率1KHZ阶梯波1KHZ 三角波1KHZ三角波频率1KHZ 正弦半波频率1KHZ六、心得体会1. 本次实验在实验误差允许的范围内,符合要求。
通过示波器和信号发生器进行对常见信号的观察,我首先了解和熟悉了示波器和信号发生器的常用使用,通过示波器发测量功能可以读出波形的基本参数。
其次了解怎样去产生一些在以后的实验中常见的信号波形,为下面几次实验打下基础。
4.4 数字频率的使用实验一、实验目的掌握试验箱中数字频率计的使用方法,了解数字频率计的性能特点。
二、实验内容用频率计测量DDS信号发生器产生的各种信号的频率,测出频率范围,同样地测量信号源产生的各种信号的频率和频率范围,选择一、二个典型信号,同时用示波器测量其频率,并且频率计的测量结果相比较,得出结论。
三、实验器材信号与系统试验箱、双踪示波器各一台,专用连接导线多根。
本实验使用实验想中的频率计、DDS信号发生器、信号源等3个单元。
基于DDS的可编程波形发生器

引言现代电子测量对信号源频率的准确度、稳定度要求越来越高。
一个信号源输出的信号频率的准确度、稳定度在很大程度上是由主振器输出信号频率的稳定度所决定。
传统的LC、RC振荡电路已满足不了高性能信号源要求,而利用频率合成器代替传统的调谐信号源中的LC、RC振荡电路就可以有效地解决上述问题。
频率合成技术始于上世纪30年代,随着电子技术的飞速发展,频率合成的技术的发展大致上可分成直接模拟频率合成技术、锁相频率合成技术、直接数字频率合成技术三个阶段。
1、传统的直接频率合成技术(DS) 。
该类方法能实现快速频率变换,具有低相位噪声以及所有方法中最高的工作频率。
但由于采用大量的倍频、分频、混频和滤波环节,导致其结构复杂、体积庞大、成本昂贵,而且容易产生过多杂散分量。
2、锁相环式频率合成器(PLL)。
该类技术具有良好窄带跟踪特性,可选择所需频率信号,抑制杂散分量,且省去大量滤波器,有利于集成化和小型化。
但由于锁相环本身是个惰性环节,锁定时间较长,因而频率转换时间较长,且由模拟方法合成的正弦波的参数(如幅度、频率和相位等) 都难以定量控制。
3、直接数字式频率合成器(Direct Digital Frequency Synthesizer)。
该类方法具有高频率稳定度、高频率分辨率以及极短的频率转换时间。
此外,全数字化结构便于集成,输出相位连续,频率、相位和幅度均可实现程控,而且理论上能够实现任意波形。
随着数字技术和器件水平的提高,直接数字频率合成得到了飞速的发展.它是继直接频率合成和间接频率合成之后发展起来的第三代频率合成技术,它突破了前两代频率合成法的原理,从“相位”的概念出发进行频率合成,这种方法不仅可以产生不同频率的正弦波、方波、三角波,而且可以控制波形的初始相位,还可以用DDS方法产生任意波形。
1 概述1.1 课题背景随着数字技术在仪表和通行系统中的广泛应用,一种从参考频率源生成多种频率的数字控制方法应运而生,这就是DDS,DDS技术是一种从相位概念出发直接合成所需波形的一种新的全数字频率合成技术。
基于DDS的任意波形发生器设计与实现

基于DDS的任意波形发生器设计与实现基于DDS的任意波形发生器设计与实现一、引言任意波形发生器是一种能够产生各种复杂波形信号的仪器,广泛应用于电子测量、通信系统、医疗设备等领域。
传统的任意波形发生器需要通过外部模拟电路,通过改变电压来产生不同的电压信号,从而得到不同形状的波形。
但这种方式存在着设计复杂、波形精度有限等问题。
而现在,随着数字技术的快速发展,基于直接数字合成(DDS)的任意波形发生器逐渐成为了新的选择。
二、DDS的工作原理DDS基于数字信号处理技术,通过数字技术生成复杂波形信号,并将其转换为模拟信号输出。
其基本工作原理如下:1.时钟信号的产生DDS需要一个稳定的时钟信号,并且要求其频率远高于输出信号的最高频率。
常见的时钟源可以是晶振或者外部频率源。
2.相位累加器相位累加器是DDS的核心部件,其作用是将时钟信号进行频率除法,并将相位结果累加。
累加得到的相位值将作为波形图的横坐标,决定波形的频率。
3.频率累加器频率累加器用于通过改变累加阶数来控制相位累加器的工作速度,从而实现波形的频率可调控。
4.相位查找表(Phase Lookup Table,简称LUT)相位查找表存储了一系列的相位值对应的幅度。
通过输入相位信息,即可查找到相应的幅度值。
5.数字到模拟信号转换DDS通过数模转换器,将数字信号转换为模拟信号输出。
三、基于DDS的任意波形发生器的设计与实现基于DDS的任意波形发生器的设计与实现包括以下几个关键步骤:1.波形参数的输入与存储首先,用户需要通过控制面板或者计算机软件输入所需波形的参数信息,包括频率、幅度、相位等。
系统需要提供一个存储器,将这些参数信息进行存储。
2.DDS模块的设计DDS模块是该任意波形发生器的核心模块。
根据输入的波形参数信息,DDS模块将根据上述工作原理,计算出相应的相位序列,进而产生对应的波形信号。
3.时钟模块的设计时钟模块用于产生高稳定性的时钟信号,其频率要远高于输出信号的最高频率。
实验二 DDS波形发生器设计实验报告

实验二 DDS波形发生器设计实验报告一.实验任务及要求任务:利用FPGA+DAC,设计一个DDS信号发生器。
要求:(1)分辨率优于1Hz(2)ROM表长度8位、位宽10位(3)输出频率优于100kHz(每周期大于50个点)(4)显示信号频率/频率控制字二.实验设计方案用CPLD,FPGA实现DDS波形发生器设计⑴用QuartusII的原理图输入来完成系统的顶层设计。
⑵相位累加器调用用HDL编写。
⑶波形存储器通过调用lpm_rom元件实现,其LPM_FILE的值*.mif是一个存放波形幅值的文件。
⑷频率-频率控制字之间的转换,可用乘、除法模块(LPM)设计以及用VHDL语言编写。
其具体实现方案如下原理图输出频率:(1) 通过时钟频率, 改变输出波形的频率(2) 改变寻址的步长来改变输出信号的频率—DDS设:相位累加器为N位, Sin表的大小为2P,累加器的高P位用于寻址Sin表.时钟频率为f C,若累加器按步进为M地累加直至溢出,称M为频率控制字。
三.系统硬件设计1)DDS参数计算①相位寄存器每经过2N/M个时钟fc后回到初始状态,相应地正弦查询表经过一个循环回到初始位置,整个DDS系统输出一个正弦波。
则输出正弦波周期 To=Tc*2n/M即输出正弦波频率 f out=M×fc/2n②要求分辨率优于1Hz 则fc/2n<1③输出频率优于100kHz(每周期大于50个点)则f out=M×fc/2n >100KH2n/M>50由②、③可得输入频率fc>5MHZ,在实验中我们设脉冲频率为10MHZ。
2)在实验中采用24位相位累加器(即n=24),用VHDL创建功能模块。
原理:通过频率控制字控制相位累加,直至溢出,取其高8位作为查询sin表的地址,从而控制输出的波形。
3)频率控制字M的设置,用VHDL创建功能模块aa设置a1,a2,a3三个输入端,其不同的输入组合对应控制频率控制字M的各个位,确定控制位后,通过输入单脉冲控制其大小,直到输入所需控制字,同时设置了复位端rst1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012-9-25 21:43:25
-3-
252,253,253,253,253,254,254,254,254,254,255,255,255,255,255, 255,255,255,255,255,255,255,255,255,254,254,254,254,254,253, 253,253,253,252,252,251,251,251,250,250,249,249,248,248,247, 247,246,246,245,244,244,243,242,242,241,240,239,239,238,237, 236,235,234,234,233,232,231,230,229,228,227,226,225,224,223, 222,221,219,218,217,216,215,214,213,211,210,209,208,206,205, 204,203,201,200,199,197,196,195,193,192,190,189,188,186,185, 183,182,180,179,177,176,175,173,172,170,168,167,165,164,162, 161,159,158,156,155,153,151,150,148,147,145,144,142,140,139, 137,136,134,132,131,129,128};
#define uchar unsigned char #define uint8 unsigned char
2012-9-25 21:43:25
-2-
#define uint16 unsigned int
sbit LED1=P1^1; sbit LED2=P1^2; sbit LED3=P1^3; sbit LED4=P1^4;
500 个点.把定时间隔设为 0.05ms,每中断一次输出一个点.经过计算,如果步长为 1,则可以得到最低频率 40HZ,如果将步长调整为 25 的话则可以得到 1KHZ 的频 率.这样,频率变化的步长就是 40HZ.
显示仍采用循环动态显示的方法.扫描的时间间隔设为 4ms 经过实验,证明这 样的间隔可以得到很好的效果.人眼感觉不到这种动态效果.
简易波形发生器实验报告
一、实验目的
1、了解电子系统的设计方法。 2、通过实验,熟悉和掌握 AT89S52 单片机的外围电路。 3、掌握单片机和数码管、键盘的接口电路和数码管的驱动方式。 4、掌握数模转换器 DAC0800 的原理、使用方法以及和单片机的接口。 5、掌握 DDFS(直接数字频率合成)的原理和其在单片机内的实现方法。 6、学会用 EDA 软件(Protel99se 或 ORCAD)进行电路原理图和 PCB 图 的绘制。
运算放大器 OP07
1
电位器 5k
1
按键
3
发光二极管
3
晶振 24M
1
八位排阻 510 欧 1
电阻 1k/10k
1/2
510 欧电阻
3
电解电容 22uF 1 电解电容 10uF 3 瓷片电容 30pF 2 瓷片电容 0.1uF 15
1000Pf
1
5.1k 电阻
4
四、实验完成具体情况
1)程序设计简单思路: 为实现波形输出,我们采用的无疑也是 DFS.正弦波和三角波我们都是取了
uchar code tri[]={250,249,248,247,246,245,244,243,242,241,240,239, 238,237,236,235,234,233,232,231,230,229,228,227,226,225,224,223,
222,221,220,219,218,217,216,215,214,213,212,211,210,209,208, 207,206,205,204,203,202,201,200,199,198,197,196,195,194,193, 192,191,190,189,188,187,186,185,184,183,182,181,180,179,178, 177,176,175,174,173,172,171,170,169,168,167,166,165,164,163, 162,161,160,159,158,157,156,155,154,153,152,151,150,149,148, 147,146,145,144,143,142,141,140,139,138,137,136,135,134,133, 132,131,130,129,128,127,126,125,124,123,122,121,120,119,118, 117,116,115,114,113,112,111,110,109,108,107,106,105,104,103, 102,101,100,99,98,97,96,95,94,93,92,91,90,89,88, 87,86,85,84,83,82,81,80,79,78,77,76,75,74,73, 72,71,70,69,68,67,66,65,64,63,62,61,60,59,58, 57,56,55,54,53,52,51,50,49,48,47,46,45,44,43, 42,41,40,39,38,37,36,35,34,33,32,31,30,29,28 , 27,26,25,24,23,22,21,20,19,18,17,16,15,14,13, 12,11,10,9,8,7,6,5,4,3,2,1,0, 1, 2, 3,4,5,6,7,8,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,24,25,26,27,28,29,30,31, 32,33,34,35,36,37,38,39,40,41,42,43,44,45,46, 47,48,49,50,51,52,53,54,55,56,57,58,59,60,61, 62,63,64,65,66,67,68,69,70,71,72,73,74,75,76, 77,78,79,80,81,82,83,84,85,86,87,88,89,90,91, 92,93,94,95,96,97,98,99,100,101,102,103,104,105,106, 107,108,109,110,111,112,113,114,115,116,117,118,119,120,121, 122,123,124,125,126,127,128,129,130,131,132,133,134,135,136, 137,138,139,140,141,142,143,144,145,146,147,148,149,150,151, 152,153,154,155,156,157,158,159,160,161,162,163,164,165,166, 167,168,169,170,171,172,173,174,175,176,177,178,179,180,181, 182,183,184,185,186,187,188,189,190,191,192,193,194,195,196, 197,198,199,200,201,202,203,204,205,206,207,208,209,210,211, 212,213,214,215,216,217,218,219,220,221,222,223,224,225,226, 227,228,229,230,231,232,233,234,235,236,237,238,239,240,24;//键盘 sbit key2=P1^6; sbit key3=P1^7;
uint8 step=1;//步进,随频率变化 uint16 temp=0;//相位 uchar aaa=0;//波的种类 uint16 fre;//波的频率
#define sendwave P2//波形送出口 #define display P0//显示内容输出端口 #define sltld P1//选通 LED 所用变量
uchar code sin[]={127,126,124,123,121,119,118,116,115,113,111,110,108, 107,105,104,102,100,99,97,96, 94, 93,91, 90, 88, 87, 85,
83, 82, 80, 79, 78, 76, 75, 73, 72, 70, 69, 67, 66, 65, 63, 62, 60, 59, 58, 56, 55, 54, 52, 51, 50, 49, 47, 46, 45, 44, 42, 41, 40, 39, 38, 37, 36, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 21, 20, 19, 18, 17, 16, 16, 15, 14, 13, 13, 12, 11, 11, 10, 9, 9, 8, 8, 7, 7, 6, 6, 5, 5, 4, 4, 4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 5, 5, 5, 6, 6, 7, 7, 8, 9, 9, 10, 10, 11, 12, 12, 13, 14, 15, 15, 16, 17, 18, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 41, 42, 43, 44, 45, 47, 48, 49, 50, 52, 53, 54, 56, 57, 58, 60, 61, 62, 64, 65, 67, 68, 70, 71, 72, 74, 75, 77, 78, 80, 81, 83, 84, 86, 87, 89, 90, 92, 93, 95, 97, 98, 100,101,103,104,106,108 , 109 ,111,112,114,115,117,119,121,122,123,125,127,128,130,132 , 133,135,136,138,140,141,143,144,146,147,149,151,152,154,155, 157,158,160,162,163,165,166,168,169,171,172,174,175,177,178, 180,181,183,184,185,187,188,190,191,193,194,195,197,198,199, 201,202,203,205,206,207,208,210,211,212,213,214,216,217,218, 219,220,221,222,223,224,225,226,227,228,229,230,231,232,233, 234,235,236,237,237,238,239,240,240,241,242,243,243,244,245, 245,246,246,247,248,248,249,249,250,250,250,251,251,252,252,