标题 | 基于AD9951的DDS信号发生器设计 |
范文 | 周锋 李楠 刘雪莉 李文溢 王如刚
摘 要:信号发生器广泛应用于电子电路、自动控制及教学试验等领域,是电子技术领域的基础电子仪器之一。然而常见的信号发生器性能落后,无法满足科研及教学需要。在现有信号发生器的基础上,根据直接数字频率合成(DDS)原理,利用STC89C52单片机作为控制器件,然后采用AD9951型DDS芯片进行输出,构造一款性能优良的信号发生器,其能输出的波形有正弦波、方波、三角波,产生的相应波形也具有可调幅度、可调频率、可调相位的特点,输出频率可达0~160MHz,频率分辨率可达1Hz。 关键词:信号发生器; AD9951; DDS; STC89C52; 控制时序 DOI:10. 11907/rjdk. 192200 开放科学(资源服务)标识码(OSID): 中图分类号:TP319文献标识码:A 文章编号:1672-7800(2020)007-0085-04 The Design of DDS Signal Generator Based on AD9951 ZHOU Feng1,LI Nan2,LIU Xue-li2,LI WEN-yi1,WANG Ru-gang1 (1. School of Information Engineering, Yancheng Institute of Technology; 2. You Pei College, Yancheng Institute of Technology,Yancheng 224051,China) Abstract: Signal generators are extensively used in electronic circuits, automatic control and teaching experiments, and they are one of the basic electronic instruments in the field of electronic technology. However, the common signal generators are backward in performance and can not meet the needs of scientific research and teaching. Based on the existing signal generator, according to the principle of direct digital frequency synthesis (DDS), the STC89C52 single-chip microcomputer is used as the control device, and then the AD9951 DDS chip is used to generate the output waveform, and the signal generator with a simple structure and excellent performance is designed. In addition to generating sine, square and triangle waves, the system can also output waveforms with adjustable amplitude, adjustable frequency and adjustable phase. Its output frequency can reach 0~160MHz, and the frequency resolution can reach 1Hz. Key Words: signal generator;AD9951;DDS;STC89C52;control timing 0 引言 作為电子技术领域一种最基本的电子仪器,信号发生器在通信、电子测控、设计研究等领域应用广泛。随着目前各行业对信号源的性能要求越来越高[1],现有信号发生器已无法满足当前电子技术领域的科研及教学需求。另外,传统信号发生器大多采用谐振法,而利用频率合成技术也可以获得所需频率,利用该技术制作的信号发生器,能够获得稳定、准确、连续可调的频率输出,这种信号发生器通常被称为合成信号发生器。现有大多数信号发生器采用直接数字合成(Direct Digital Synthesizer,DDS)技术,其设计的信号源利用AD9850产生输出波形,波形频率范围为1Hz~6MHz,频率分辨率为1Hz,但是输出波形只有正弦波和方波,而能输出正弦波、方波和三角波的信号发生器却远远达不到所需的频率范围和频率分辨率。本设计采用AD9951输出可调幅度、可调频率、可调相位的正弦波、方波和三角波,并且频率范围达到0Hz~160MHz,频率分辨率也达到1Hz。DDS技术作为第三代频率合成技术,本身就拥有很多不可比拟的优点,如频率稳定度与分辨率极高、转换时间短、相位噪声低、可编程、体积小、重量轻等[2]。 1 系统总体设计 1.1 DDS工作原理及结构 DDS采用采样定量方法,并用查表法生成相应波形,由累加器累加得出对应参考时钟控制下频率控制字的相位数据,并将该数据作为取样地址进行相位—幅度变换,输出不同编码,再由D/A转换器进行处理得到阶梯波,最后经低通滤波器的平滑处理,便可输出由频率控制字决定的连续变化的波形。其结构原理如图1所示,主要由时钟、相位累加器、ROM表和D/A转换器组成[3]。 1.2 DDS数学原理分析 用采样频率[fc]对一个频率为[f]的余弦信号[S(t)]进行采样,其[S(t)]可设为: 便可得到一个离散序列: 其中[Tc=1fc],对应相位序列为: 又由信号频率[f]与采样频率[fc]之间的关系可得出: 由公式(4)可知,利用频率为[fc]的余弦信号采样后,得到样品之间的量化相位增量为一个恒定值[K][4],便可得到一个序列:[Φ(n)=nK]? [n=0,1,2?]。接下来可构造: 公式(5)是[S(t)]经采样后的离散序列,根据采样定理,当[ffc=KM<12]时,通过低通滤波器的平滑后可恢复[S(t)],[S(t)=cos2πKfctM],其信号频率为: 公式(6)中,当[M=2N]时,其方程可变换成:[f0=Kfc2N],可见,当[fc]一定时,相位累加器位数[N]决定分辨率,如果[fc=200MHz],[N=32],则分辨率可达到[fres=0.048Hz][5]。 1.3 参数计算 AD9951的控制字有40位,其中有5位是用于控制相位的,32位是频率控制字。可得出相位控制精度,用二进制表示为00001,要想实现精确的相位控制,只要设置不同的相位控制字即可。本设计中输出的相移为90度,其相位控制字为01000[6]。 DDS输出的合成信号频率[f0]与其输入的参考时钟频率[fc]成正比,波形存储器ROM地址为[N]位,频率控制字为[K],则: 输出信号频率分辨率为: 由奈奎斯特采样定理可知,DDS输出的最大频率为: 由此可推出频率控制字公式为: 当外部参考时钟频率为100MHz、输出频率为20MHz时,便可计算出DDS需要设定的控制频率字为[K=20×232/100][7]。 1.4 AD9951概述 AD9951采用先进的DDS技术,以及高速、高性能的D/A转换器,从而形成可编程、可便捷使用的频率合成器。通过串行I/O口输入控制字可快速进行变频,并且有着精确的频率分辨率。其主要特性有:能产生160MHz的模拟波形;内置400MSPS时钟;内含14位DAC;相位、幅度可编程;有32位频率控制字与相位偏移字;可用串行I/O控制等[8]。 1.5 AD9951控制时序 AD9951控制命令写入方式共有两种,本设计采用串行写入方式。对于AD9951,指令字节指定读/写操作和寄存器地址,串行端口控制器识别指令字节寄存器地址,并自动生成正确的寄存器地址[9]。另外,控制器控制全部字节,寄存器将其接通。AD9951通信共分为两个阶段:第一阶段为指令周期,即将指令字节写入AD9951,并且与前8个SCLK上升沿对应;第二阶段为通信周期,指令字节为AD9951串行端口控制器提供相关数据传输周期的信息。在第一阶段,指令字节一方面定义了要进行的数据传输是读还是写,另一方面定义了正在访问的寄存器地址[10]。每个通信周期的前8个SCLK上升沿将指令字节写入AD9951,而剩下的SCLK将用于通信周期的第二阶段。在第二阶段,AD9951与系统控制器之间进行实际的数据传输,期间传输的字节数即是被访问的寄存器函数[11]。在任何通信周期结束时,AD9951串行端口控制器都将接下来的8个SCLK上升沿作为下一个通信周期的指令字节,并且输入到AD99951的所有数据都在SCLK上升沿进行寄存[12]。图2是相应控制字串行输入的控制时序图。 1.6 系统总体设计 本系统设计基于DDS技术,并且采用52系列单片机控制DDS芯片AD9951,将矩阵键盘作为输入,从而输入AD9951的频率控制字,最后输出频率可调的信号。此外,将显示屏模块作为输出,显示出输入信号频率,并验证测试结果的正确性[13]。其系统框架如图3所示。 整个系统利用模块对其进行划分,并且用排線对各个模块进行连接。系统共分为4大模块:输入、输出、造波和控制。将矩阵键盘作为输入,LCD1602显示屏作为输出,两个模块有各自的接口,未相互连接。另外再用AD9951芯片与相应外围电路组成所需的造波电路。最后的控制模块由52系列单片机构成最小系统板,并对上述模块进行控制[14]。 2 系统硬件设计 2.1 系统硬件设计 2.2 电路框架设计 2.3 LCD显示屏 本设计使用1602带有背光的液晶模块,显示容量为2行16个字,体积小、重量轻、功耗低,具有简单且功能强大的指令集。可以显示汉字的液晶称为图形液晶,每个点都可以被单独控制[15]。 2.4 滤波缓冲放大电路 AD9951采用全数字结构,因而其中不可避免地引入了杂散。杂散主要来源包括DAC非理想特性、相位舍位误差和存储器有限字长。因此,对其输出的频率进行滤波处理,而滤波后的信号已经有所衰减,必须用放大电路使衰减的信号得到放大,电路原理图如图6所示[16]。 3 系统软件设计 控制模块是整个系统软件的核心。系统上电复位后,先进行AD9951与显示屏的初始化,然后对键盘进行扫描,对扫描结果进行分析并作出相应操作:如果没有键按下,则继续进行扫描;如果有键按下,查看按下的是数字键还是功能键。如果是功能键,则不执行,并在显示屏上显示错误;如果是数字键,则将数字代入计算子程序中,然后通过单位键调用控制字,并对其进行计算,按下频率键发送控制字到子程序,输出模块显示一开始输入的频率值。最后返回初始状态,不断循环进行上述过程。具体流程如图7所示[17]。 4 测试结果及数据分析 4.1 测试数据 在设置好的频率下,对应示波器显示频率如表1-表3所示[18]。 4.2 数据分析 数据结果与预估结果存在一些差别,两者误差并不大,通过分析得出以下原因: |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。