《DDS基于AD9850的波形发生器设计(共28页).doc》由会员分享,可在线阅读,更多相关《DDS基于AD9850的波形发生器设计(共28页).doc(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上Yibin University基于DDS技术的任意波形发生器的设计专 业: 电子信息科学与技术 学生姓名: 王蓟 邓青 毕俊强 腾翼 罗丽 院 系: 物理与电子工程学院 年级、班: 2012级励志班 指导教师: 文良华 2014年6月6日 专心-专注-专业摘 要本系统设计一个正弦信号发生器。,使用CORTEX-M4单片机作为中央控制器,Cortex-M4 处理器是由 TI 专门开发的最新,用以满足需要有效且易于使用的控制和功能混合的数字信号控制市场。 高效的功能与 Cortex-M 处理器系列的低功耗、低成本和易于使用的优点的组合,旨在满足专门面向电动机控制、汽车、
2、嵌入式音频和工业自动化市场的新兴类别的灵活解决方案。传统的频率合成器,通常从一排晶振荡器产生的各种频率通过开关进行频率混合。也有的采用众所周知的锁相环(PLL)技术实现频率合成。随着数字技术的飞速发展,用数字控制方法从一个参考频率源产生多种频率,即直接数字合成技术(DDS)异军突起。本设计使用世界流行的美国ADI公司生产的AD9850频率合成器正是应用这种DDS技术的典型热门产品之一,AD9850采用先地蝗CMOS工艺,其功耗在3.3V供电时仅为155mW,扩展工业级温度围为-4080,采用28脚SSOP表面封装形式,结合DDS芯片AD9850,产生015MHz频率可调的正弦信号;调制信号为1
3、KHz的正弦波,调制信号的产生采用DDS技术;系统采用全中文菜单操作方式,操作简单,快捷,且系统的精度和稳定性高。关键字:正弦信号CORTEX-M4AD9850DDS技术 1 前言信号发生器广泛应用于电子电路、自动控制和科学试验等领域。是一种为电子测量和计量工作提供符合严格技术要求的电信号设备,也是应用最广泛的电子仪器之一,几乎所有的电参量的测量都需要用到信号发生器。本设计研究的信号发生器的基本思路是:基于DDS芯片AD9850基础的任意波形发生器。系统是基于AD9850芯片产生的波形。它是由相位累加器、正弦查询表、D/A转换器组成的集成芯片。其中相位累加器的位数N=32位,寻址RAM用14位
4、,舍去18位,采用高速10位数模转换,DDS的时钟频率为125MHz,输出信号频率分辨率可达0.0291Hz;系统的微处理器采用CORTEX-M4,外围电路主要是接口电路、调幅电路、滤波电路和积分电路的设计。同时还包括键盘接口。系统的软件主要是启动和初始化CORTEX-M4,然后处理键盘输入的频率控制字和相位控制字,并将其转换为32位的二进制数的控制字,最后并行递交给AD9850并启动AD9850,让它实现从正弦查询表中取数产生波形再输出。2.方案设计2.1 DDS的基本原理1971年,美国学者J. Tierncy, C. M. Rader和B. Gold提出了以全数字技术,从相位概念出发直接
5、合成所需波形的一种新的频率合成原理。限于当时的技术和器件水平,它的性能指标尚不能与已有的技术相比,故未受到重视。近20年间,随着技术和器件水平的提高,一种新的频率合成技术直接数字合成频率合成(DDS)得到了飞速的发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。DDS基本原理图如图1所示,DDS由相位累加器,只读存储器,数模转换器DAC及低通滤波器组成。 以合成正弦波为例,幅值表ROM中存有正弦波的幅值码,相位累加器在时钟fc的触发下,对频率控制字K进行累加,相位累加器输出的相位序列(即相码)作为地址去寻址ROM,得到一系列离散的幅度编码(即幅码)。该幅码经过DA
6、C变换后得到模拟的阶梯电压,再经过低通滤波器平滑后,即得到所需的正弦信号。一般将相位累加器和ROM合称为NCO(数控振荡器) Clockba相位累加器波形存储器D/ALPF频率控制字 图1 DDS的基本原理图 相位累加器的结构如图2所示,由N位字长的二进制加法器与一个由时钟取样所得的N位二进制相位累加寄存器级联构成,加法器的一个出入端与相位寄存器的输出端相连,另一个输入端相连,另一个输入端是外部的频率控制字K。每来一个时钟脉冲,加法器将频率控制数据与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟作用后所产生的新相位数据反馈到加法器的输
7、入端,以使加法器在下一个时钟的作用下继续与频率控制数据相加。这样,相位累加器在参考时钟的作用下,进行线性相位累加,当相位累加器累加满是就会产生一次溢出,完成一个周期性的动作,这个周期就是DDS合成信号的一个频率周期,累加器的溢出频率就是DDS输出的信号频率。 图2 相位累加器的结构设相位累加器的位数为N,时钟频率为fc, 当频率控制字为K时,DDS的输出频率fo为: fo=Kfc/2N2.2 DDS的特点 其主要优点有:(1)频率转换快:DDS频率转换时间短,一般在纳秒级;(2)分辨率高:大多数DDS可提供的频率分辨率在1 Hz数量级,许多可达0.001 Hz;(3)频率合成围宽;(4)相位噪
8、声低,信号纯度高;(5)可控制相位:DDS可方便地控制输出信号的相位,在频率变换时也能保持相位联系;(6)生成的正弦/余弦信号正交特性好等。因此,利用DDS技术特别容易产生频率快速转换、分辨率高、相位可控的信号这在电子测量、雷达系统、调频通信、电子对抗等领域具有十分广泛的应用前景。2.3 系统的总体设计2.3.1 本设计的技术指标 本设计要求的波形发生器可产生正弦波、方波、三角波以及便于产生频率可变而且具有高分辨率的波形。它要求频率围在0MHz40MHz,要求幅值围在 -10V+10V。2.3.2 系统方案本设计采用的是直接数字法设计波形发生器中的基于相位累加器的数字频率合成法。这种结构主要由
9、相位累加器、数据存储器、D/A转换器、低通滤波器组成,它是一种全新的直接数字合成方式。 图3 基于相位累加器的直接数字合成结构图在此设计中的基于DDS技术的信号发生器,是通过用单片机编程将控制字并行送入DDS芯片AD9850,然后由AD9850产生波形输出,即采用基于相位累加器的数字频率合成法,利用直接数字合成芯片AD9850产生波形。在该芯片中集成了相位累加器、正弦查询表、D/A转换器以及高速的比较器。我们再加入单片机、滤波器和一个微分电路就可实现我们所要的波形了。要想实现我们想要的频率和幅度值,因为在DDS系统中决定频率大小的是频率控制字,所以我们可以通过键盘由用户键入十进制数,再由单片机
10、编程控制将十进制转化成对应的二进制,然后送入AD9850产生波形。而幅值是通过调幅电路实现的。2.3.3 系统原理图 考虑到各方面的原因,可以得到系统框图如下: 图4 系统总框图此系统主要由键盘、接口电路、M4、DDS芯片AD9850及调理电路5部分组成。外围电路由单片机的复位电路和振荡电路组成。调理电路部分由低通滤波器、调幅电路和微分电路组成。3 单元电路设计3.1 单片机的选择现在单片机种类比较多,在本设计中我们选择CORTEX-M4单片机。 CORTEX-M4单片机的基本组成请参见图5 图5 CORTEX-M4 单片机结构框图 Cortex-M4 处理器已设计为具有适用于数字信号控制市场
11、的多种高效功能。Cortex-M4 处理器采用扩展的单周期乘法累加 (MAC) 指令、优化的 SIMD 运算、饱和运算指令和一个可选的单精度浮点单元 (FPU)。这些功能以表现 ARM Cortex-M 系列处理器特征的创新技术为基础。 32 位 ARM Cortex-M4F 架构针对小封装嵌入式应用进行了优化 80-MHz 运行速度;100 DMIPS 性能 优越的处理性能和更快的中断处理。 混合 16 位/32 位的 Thumb-2 指令集提供与 32 位 ARM 核所期望的高性能而采用了更紧凑的存大小,而这通常在 8 位和 16 位设备相关的存储容量中,特别是在微控制器级应用的几千字节存
12、储中。 单周期乘法指令和硬件除法器 精确的位操作(bit-banding),不仅最大限度的利用了存储器空间而且还改良了对外设的控制 非对齐式数据访问,使数据能够更为有效的安置到存储器中 符合 IEEE754 的单精度浮点单元 (FPU) 16 位 SIMD 矢量处理单元 快速代码执行允许更低的处理器时钟和增加休眠模式时间 Harvard 结构 - 将数据和指令所使用的总线进行了分离 高效的处理器核,系统和存储器 硬件除法和以快速数字信号处理为导向的乘加 采用饱和算法处理信号 对时间苛刻的应用提供可确定的, 高性能的中断处理 存储器保护单元为操作系统机能提供特权操作模式 增强的系统调试提供全方位
13、的断点和跟踪能力 串行线调试和串行线跟踪减少调试和跟踪过程中需求的管脚数 从 ARM7 处理器系列中移植过来,以获得更好的性能和电源效率 针对高达指定频率的单周期 Flash 存储器使用情况而设计。详见 “部存储器”图6 CORTEX-M4引脚图Cortex-M4F 系统组件细节Cortex-M4F 包含以下系统组件: SysTick24 位的递减定时器,可被用作实时操作系统 (RTOS) 的节拍定时器,或者作为一个简单的计数 器,参见 “系统定时器(SysTick)” 嵌套式向量化中断控制器(NVIC)一个嵌入的中断控制器,支持低延迟中断处理,参见 “嵌套式向量化中断控制器 (NVIC)”
14、系统控制模块 (SCB)处理器的编程模型接口。系统控制块 (SCB) 提供系统实现信息和系统控制,包括系统异常的配 置、控制和报告(请参考“系统控制模块 (SCB)”(107页)。 存储器保护单元 (MPU)通过为不同的存区定义存属性来提高系统的稳定性。MPU 提供多达 8 个不同区和一个可选 的预定义的背景区,参见 “存储器保护单元 (MPU)” 浮点单元 (FPU)完全支持单精度的加、减、乘、除、乘加以及平方根操作。它还可用于转换定点和浮点数据格 式,并提供浮点常数指令3.2 DDS芯片AD9850的主要性能AD9850 是美国AD 公司生产的最高时钟速率为125MHz ,采用先进的CMO
15、S 技术制造出来的直接数字式频率合成器。它具有频率分辨率高、输出频谱纯度高和快速频率转换等性能,同时,该器件还具有体积小、使用简便、性能价格比高的优点。在便携式通信、雷达系统、跳频通信等领域具有广泛的应用前景。AD9850的主要性能特点(1)125MHz时钟速度(2)集成在一块集成电路板上的高性能DAC和高速比较器(3)在40MHz模拟输出时,DAC输出的SFDR50db(4)32b 频率控制字(5)简单的控制接口:并行或串行输入形式(6)具有相位调制能力。(7) +3.3V或+5V电源均可工作。(+5V时,380mW、125M时钟;+3.3V时,155mW)(8)功率下调功能(9)极小的28
16、管脚表面封装形式AD9850主要可用于以下几个方面:(1)灵活可变的正弦波合成器(2)可用于数字通信的时钟恢复和锁定回路(3)数控ADC译码器(4)灵活可变的本振合成器。AD9850的管脚介绍AD9850外形图如下图:D0 D4 D1 D5D2 D6D3 LSB MSB D7DGND DGNDDVDD DVDDW_CLK RESETFQ_UD IOUTCLKIN IOUTB AGND AGND AVDD AVDD RSET DACBL QOUTB VINPQOUT VINN 图7 AD9850的引脚排列图管脚功能说明:CLKIN:参考时钟输入,此时钟输入可以是连续的CMOS序列,也可以是经1/
17、2电源电压偏置的模拟正弦波输入。RSET: 是DAC外部电阻RSET连接处,此电阻设置了DAC输出电流的幅值,一般情况下Iout =10mA , Rset = 3. 9k , Rset 与Iout 的关系式为Iout= 32 1.248V/ Rset 。AGND:模拟电路地(模拟电路有DAC和比较器)。DGND:数字电路地。DVDD:数字电路电源。AVDD:模拟电路电源。W_CLK:控制字输入时钟,在此时钟用来并行或串行输入频率或相位控制字。FQ_UD:频率更新时钟。在此时钟的上升沿,DDS将刷新已输入到数据输入寄存器中的频率(或相位)字,使数据输入寄存器归零。D0D7:8bits数据输入。这
18、是一个用于重复输入32bits频率和8bits相位/频率控制字的8bits数据端口,D7是高位,D0是最低位(25脚),它还是40bits串行数据输入端口。RESRT:重新设置。这是整片重新设置功能,当此脚置高电平时,它清除(除输入寄存器)的所有寄存器,DAC的输出在一个追加的时钟T后变成COSO。IOUT:DAC的模拟电流输出。IOUTB:DAC的补充模拟电流输出。DACBL:DAC基准线,这是DAC基准电压参考。VIN:不转换电平输入,这是比较器的同相输入。VINN:转换电平输入,这是比较器的反相输入。QOUT:输出为真,这是比较器的真正输出。QOUTB:输出补充,这是比较器的补充输出。A
19、D9850的工作原理:AD9850 含可编程DDS 系统和高速比较器,能实现全数字编程控制的频率合成。可编程DDS 系统的核心是相位累加器, 它由一个加法器和一个N位相位寄存器组成, N 一般为2432。每来一个外部参考时钟,相位寄存器便以步长M 递加。相位寄存器的输出与相位控制字相加后可输入到正弦查询表地址上。正弦查询表包含一个正弦波周期的数字幅度信息, 每一个地址对应正弦波中0360围的一个相位点。查询表把输入地址的相位信息映射成正弦波幅度信号, 然后驱动DAC 以输出模拟量。相位寄存器每过2N/ M 个外部参考时钟后返回到初始状态一次, 相应地正弦查询表每经过一个循环也回到初始位置, 从
20、而使整个DDS 系统输出一个正弦波。输出的正弦波周期TO = Tc2N/ M , 频率fout = Mfc/ 2N ,Tc 、fc 分别为外部参考时钟的周期和频率。AD9850 采用32 位的相位累加器将信号截断成14 位输入到正弦查询表,查询表的输出再被截断成10 位后输入到DAC , DAC 再输出两个互补的电流。DAC 满量程输出电流通过一个外接电阻RSET调节, 调节关系为ISET = 32 (1. 248V/ RSET) , RSET的典型值是3. 9k。将DAC 的输出经低通滤波后接到AD9850 部的高速比较器上即可直接输出一个抖动很小的方波。其系统功能如图8。AD9850 在接
21、上精密时钟源和写入频率相位控制字之后就可产生一个频率和相位都可编程控制的模拟正弦波输出, 此正弦波可直接用作频率信号源或经部的高速比较器转换为方波输出。在125MHz 的时钟下, 32 位的频率控制字可使AD9850 的输出频率分辨率达0. 0291Hz ; 并具有5位相位控制位,而且允许相位按增量180、90、45、22. 5、11. 25或这些值的组合进行调整。参考时钟输入DAC RSET主复位模拟信号输出10位DAC高速DDS32位控制字相位和控制字模拟信号输入频率更新数据寄存器复位频率/相位数据寄存器时钟输出+字输入时钟时钟输出-数据输入寄存器并行输入串行输入1位408位5 频率/相位
22、控制数据输入图8 AD9850系统的功能框图AD9850的控制字与控制时序:AD9850 有40 位控制字, 32 位用于频率控制,5 位用于相位控制, 1 位用于电源休眠( Power down) 控制, 2 位用于选择工作方式。这40 位控制字可通过并行方式或串行方式输入到AD9850 ,图9控制字并行输入的控制时序图, 在并行装入方式中,通过8 位总线D0 D7 将可数据输入到寄存器,在重复5 次之后再在FQ - UD 上升沿把40 位数据从输入寄存器装入到频率/ 相位数据寄存器(更新DDS 输出频率和相位) , 同时把地址指针复位到第一个输入寄存器。接着在W - CL K 的上升沿装入
23、8位数据,并把指针指向下一个输入寄存器,连续5 个W - CL K 上升沿后, W - CL K 的边沿就不再起作用,直到复位信号或FQ - UD 上升沿把地址指针复位到第一个寄存器。在串行输入方式, W - CL K 上升沿把25 引脚的一位数据串行移入, 先传低位,再传高位。当移动40 位后, 用一个FQ-UD 脉冲即可更新输出频率和相位。图10 是相应的控制字串行输入的控制时序图。AD9850 的复位(RESET) 信号为高电平有效,且脉冲宽度不小于5 个参考时钟周期。AD9850 的参考时钟频率一般远高于单片机的时钟频率, 因此AD9850 的复位(RESET) 端可与单片机的复位端直
24、接相连。值得一提的是: 用于选择工作方式的两个控制位,无论并行还是串行最好都写成00 ,并行时的10、01 和串行时的10、01、11 都是工厂测试用的保留控制字,不慎使用可能导致难以预料的后果。W3W4W0W1W2DATAW_CLKFQ_UD图9 控制字并行输入的时序图40周期.D39999D0D1D2DATAW_CLKFQ_UD 图10控制字串行输入的时序图控制字的计算:(a) 相位控制字的计算:AD9850中40位控制字中有5位是用于相位控制的,所以,相位控制的精度为,用二进制表示为00001,根据实际需要,设置不同的相位控制字,就可以实现精确的相位控制。在本设计中输出的相移为90度,其
25、相位控制字为:01000。(b) 频率控制字的计算:设输出信号的频率为fOUT,参考频率为CLKIN,AD9850的频率控制字为phase,则三者之间的关系为:phase=(fOUT)/CLKIN在本设计中要求输出8种不同的频率也即有8个不同的频率控制字,所用到的参考时钟CLKIN为125MHz。8种不同频率字的计算:(1)当fOUT=2kHz时,phase=68719D =10C6FH(2)当fOUT=80kHz时,phase=D=29F16BH(3)当fOUT=200kHz时,phase=D=68DB8BH(4)当fOUT=800kHz时,phase=D=1A36E2EH(5)当fOUT=
26、2MHz时,phase=D= H(6)当fOUT=8 MHz时,phase=D=10624DD3H(7)当fOUT=20 MHz时,phase=28F5C28FD=28F5C28FH(8)当fOUT=40 MHz时,phase=51EB851FD=51EB851FH3.3 AD9850与单片机的接口设计CORTEX-M4并行加载AD9850的接口电路如图11,为明晰可见,图中仅画出了与并行加载有关的信号线。图4.7中,AD9850引脚14、2528为8位数据线D0D7,AD9850的频率/相位控制字一共有40位,采用并行加载方式时,需连续加载5次,每次传送的频控字位数分配见表4.3,其中,D7
27、为最高位,D0为最低位,串行方式时,仅使用D7位(管脚25),AD9850引脚7WCLK是加载时钟,与引脚8FQUD配合,完成数据加载,FQUD为频率/相位更新控制,在FQUD的上升沿,DDS更新频率、相位,同时将指针指向第一个寄存器W0,CLKIN是AD9850的参考时钟,即芯片的工作时钟频率,可由晶振提供,本文中选择AD9850的时钟为125MHz。CORTEX-M4的P1.0P1.7接AD9850的D0D7,CORTEX-M4的P3.0接AD9850的WCLK,CORTEX-M4的P3.1接AD9850的FQUD。 图11 CORTEX-M4并行加载AD9850接口电路3.3.1 调幅电
28、路的设计在AD9850集成的D/A转换器输出的信号需经低通滤波后才能得到我们想要的信号,AD9850的D/A转换器是属于电流输出型的,而低通滤波器输入的信号是电压信号,这就需要在它们之间加入I/V转换电路(调幅电路)来实现电流和电压的转换。I/V转换电路有多种方式,在这里我们使用双极性输出的I/V转换电路。图12 I/V转换电路如图4.7所示为I/V转换电路,如果需要改变输出电压的极性,把VEF改变极性就能实现,因为VEF的极性决定了电流的流动方向。所以电压输出的围可以通过VREF来实现。其输出电压公式为:在本设计中AD9850中的D/A转换器输出的电流满量程输出为10mA,也即I/V转换电路
29、的输入电流为10mA,要求输出的电压幅值为-10V+10V,也即UO的输出围为-10V+10V。在这里我们可以设=500,=1k,如果要求电压输出的围为-10V+10V,则变化围为0V10V。其详细对应关系见表3.2。表3.2 电流/电压对应表VREFUO0 V-10V5 V0 V10 V10V总之,I/V转换电路实现的功能有两个,一是实现I/V的转换,二是实现信号发生器的调幅功能。3.3.2 滤波电路的设计在本设计中在低通滤波部分中,采用压控电压源型二阶滤波电路,如图13所示。图13电压源型二阶滤波电路本文中频率输出的围是040MHz,而且输出的是8种不同的频率值,由于输出的频率围较广,所以
30、我们采取分段滤波的形式进行滤波,即使用多个滤波电路进行滤波。由于采用多个滤波电路,而调幅电路输出只有一路。所以在滤波电路和调幅电路之间需加入一个模拟开关,在这里我们选用CD4052,CD4052是双向双四选1的模拟开关,工作电压VCC是7.5V,IC30mA。在040MHz中,分成4个频率段进行滤波,其中低频段分三个段,高频段分一段,具体如下:(1)0100kHz, 滤波电路的截止频率选120k,即fO=120kHz。(2)100kHz1MHz, 滤波电路的截止频率选1.2MHz,即fO=1.2MHz。(3)1MHz10MHz, 滤波电路的截止频率选12MHz,即fO=12MHz。(4)10M
31、Hz40MHz, 滤波电路的截止频率选42MHz,即fO=42MHz。根据对低通滤波电路截止频率的要求,首先选择C值。电容的选择原则见表3.3,滤波电路的品质因数Q=0.707,这时的幅频特性最平坦,接近于理想低通滤波的幅频特性。但为了使输出的信号不发生改变,也即增益放大倍数为1.这时需要在滤波电路后再加一个放大器来降低它的增益放大倍数。表3.3二阶有源滤波器设计电容选择用表fo/Hz100103C/F100.10.10.010.010.00110-310-410-410-5第一个滤波电路的参数设计:因为fO=120kHz100103Hz,所以选C1=C2=110-5F。=133k,可以得=1
32、.586,而,取=200k,则=117.2 k。第二个滤波电路的参数设计:因为fO=1.2MHz100103Hz,所以选C1=C2=110-5F。=13 k,可以得=1.586,而,取=20k,则=11.72 k。第三个滤波电路的参数设计:因为fO=12MHz100103Hz,所以选C1=C2=110-5F。=1.3 k,可以得=1.586,而,取=2k,则=1.172k。第四个滤波电路的参数设计:因为fO=42MHz100103Hz,所以选C1=C2=110-5F。=379,可以得=1.586,而,取=600,则=352。放大电路的设计:由于信号经过滤波器后,电压放大了1.586倍,为了使信
33、号不发生改变,需将放大后的信号再进行缩小。在这里我们使用反相放大器来对放大倍数进行缩小,如图14所示。根据滤波器的放大倍数,我们设R25=16k,R26=10k,R27=6k。 图14反相放大电路3.3.3 积分电路的设计由于本设计中要求输出三角波,而AD9850输出的只有方波和正弦波,可以用积分电路使方波转换为三角波。为减少误差,设计中采用了增量积分电路。设比较器输出的信号为Ui,增量积分电路的输出的信号为Uo。如图15连接,完成积分运算的的过程中,是一个增量。由于R2=5k,R1=500k,非常的微小,利用这个微小的增量可以补偿比较器滞后带来的误差。C1=C2=1F。图15增量积分电路4.
34、系统软件设计4.1 程序设计思路首先进行系统的初始化,定义各个端口,其次,由于键盘的8个按键代表着8种不同频率的波形,所以首先判定1号键是否按下,如果按下则将40位控制字送入AD9850,40位控制字分5次并行输入到CORTEX-M4当中,每次送8位,W_CLK上升沿有效,每次有效表示AD9850接受一次数据,W_CLK有效5次表示AD9850接受了5次数据。这时FQ_UD有效上升沿把40 位数据从输入寄存器装入到频率/ 相位数据寄存器(更新DDS 输出频率和相位) , 同时把地址指针复位到第一个输入寄存器。如果没有按下,则判断2号键是否按下,如果按下,则把2号键对应的频率值输入到AD9850
35、中,如果没有按下,则转去判断3号键是否按下,依次类推,直到判断到8号键为止,即18号键对应着18种不同的频率,按哪个键对应出那种不同的频率的波形。4.2 软件设计的流程图 图16 系统的主流程图 图17 系统子程序流程图5小结随着技术和器件水平的提高,一种新的频率合成技术直接数字频率合成(DDS)得到了飞速的发展,它以有别于其他频率合成方法的优越性能和特点成为现代合成频率技术中的佼佼者。本论文在分析了现有波形发生器设计方案的基础上,根据系统指标合理地使用了DDS技术,以AD公司的AD9850直接数字合成芯片为核心,采用单片机CORTEX-M4为控制器,设计了一种结构简便性能优良的信号发生器。,本系统除了产生正弦波、方波、三角波外,还具有数字调制功能,可以输出幅度可调、频率可调、相位可调的波形。其输出频率可达40MHz,频率分辨率可达0.0291Hz。