用dds制作数控信号合成器

上传人:ji****n 文档编号:45217711 上传时间:2018-06-15 格式:DOC 页数:14 大小:1.55MB
返回 下载 相关 举报
用dds制作数控信号合成器_第1页
第1页 / 共14页
用dds制作数控信号合成器_第2页
第2页 / 共14页
用dds制作数控信号合成器_第3页
第3页 / 共14页
用dds制作数控信号合成器_第4页
第4页 / 共14页
用dds制作数控信号合成器_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《用dds制作数控信号合成器》由会员分享,可在线阅读,更多相关《用dds制作数控信号合成器(14页珍藏版)》请在金锄头文库上搜索。

1、用用 DDS 制作数控信号合成器制作数控信号合成器近年来,DDS(Direct Digital Frequency Synthesis 直接数字频率合成器)技术日趋成熟,DDS 芯片以其较高的性价比而被广泛采用:DDS 相对带宽较宽、频率转换时间短、频率分辨率高、输出相位连续,可产生宽带正交信号及其它多种调制信号,有全数字化、控制灵活方便的优点,已广泛应用于通讯、导航、雷达、遥控遥测、电子对抗以及现代化的仪器仪表工业等领域。本文主要描述 ADI 公司生产的 DDS 芯片 AD9851 的基本工作原理,以及用该 DDS 芯片作为核心元件, 以 AT89S52 单片机为主控器件,LCM1602 点

2、阵式字符型液晶显示模块作为显示器以及 4X4 键盘构成的数控精密频率合成器的制作及编程。该信号合成器的频率输出范围为 060MHz,频率分辨率为 1Hz,可用于时钟信号产生、业余电台的本机振荡器等电路。为了便于今后利用,DDS 电路做成模块形式。实物图见图 1 所示。图 1 DDS 频率合成器实物图一AD9851 工作原理及控制方式: 1DDS 基本工作原理DDS 的基本原理是利用奈奎斯特采样定理,通过查表法产生波形。DDS 的结构有很多种,其基本的电路原理可用图 2 来表示。它主要包括相位寄存器、相位全加器、相位/幅度变换、D/A 转换器,相位寄存器和相位全加器构成相位累加器。每来一个时钟脉

3、冲fs,加法器将频率控制字 K 与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。累加寄存器将加法器在上一个时钟脉冲作用后所产生的新相位数据反馈到加法器的输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。由此可以看出,相位累加器在每一个时钟脉冲输入时,把频率控制字累加一次,相位累加器输出的数据就是合成信号的相位,相位累加器的溢出频率就是 DDS 输出的信号频率。 用相位累加器输出的数据作为波形存储器(ROM)的相位取样地址,这样就可把存储在波形存储器内的波形抽样值(二进制编码)经查找表查出

4、,完成相位到幅值转换。波形存储器的输出送到 D/A 转换器,D/A 转换器将数字量形式的波形幅值转换成所要求合成频率的模拟量形式信号。最后用低通滤波器滤除不需要的取样分量,以便输出频谱纯净的正弦波信号。图 2 DDS 的基本原理AD9851 内部的控制字寄存器首先寄存来自外部的频率、相位控制字,相位累加器接收来自控制字寄存器的数据后决定最终输出信号频率和相位的范围和精度,经过内部 D/A转换器后,所得到的就是最终的数字合成信号,该信号经外部低通滤波电路滤波后得到所要的波形。2AD9851 的控制方式:AD9851 内部有 5 个输入寄存器,储存来自外部数据总线的 32 位的频率控制字(Freq

5、-b0 至 Freq-b31),5 位的相位控制字(Phase-b0 至 Phase-b4) ,一位 6 倍参考时钟频率倍乘器使能控制字(6*REFCLK Multiplier Enable) ,一位电源休眠 (Power-Down) 功能控制和一位逻辑 0(Logic 0) 。逻辑 0 是厂家设定参数专用使能位应用时不能使能该位,否则会进入厂家设定参数状态,只有通过复位才能退出该状态。如图 3 所示。图 3 AD9851 并行控制数据AD9851 提供并行输入和串行输入两种工作模式,可以很方便的与各种微控制器进行通信。本信号合成器为了节省 I/O 口,所以使用串行输入方法。因为 AD9851

6、 上电复位后芯片默认为并行输入模式,如果和微控制器采用串行方式进行连接,则需要将其转换成串行输入模式。其转化方法就是在初始化 AD9851 时在并行装输入式下写一个字节 xxxxx011 就可以换成串行装载模式了。一般情况下按图 4 连接硬件电路,按图 5 的时序进行转换。串行方式如图所示,W_CLK 上升沿把引脚 D7 上的数据按位串行移入到输入寄存器,40 位输入结束后,此时 FQ_UD 端的脉冲上升沿就可以使40 位数据会从输入寄存器被写入频率和相位控制寄存器,更新 DDS 的输出频率 和相位,同时把地址指针复 图 4 xxxxx011 硬件连接位到第一个输入寄存器的第一位,等待着下一组

7、新数据的写入。图 6 为串行工作方式时序图。图 5 并行串行输入转换命令时序图 图 6 串行工作方式时序图在串行输入时,输入数据的顺序与并行不同,从频率控制字的第 0 位(Freq-b0)开始输入,结束于相位控制字第 4 位(Phase-b4) ,串行输入数据表见图 7 所示。图 7 串行输入时序二DDS 频率合成器电路原理本文所述的 DDS 频率合成器结构框图见图 8 所示。以 DDS 芯片 AD9851 为电路核心,AT89S52 单片机为控制核心,显示器采用 LCM1602 字符型液晶显示器,因为 DDS 频率合成器的合成频率范围宽,且分辨率达到 1Hz,如果采用频率步进的方法进行频率调

8、整就变得很费事且不太现实,所以采用直接输入频率的方式,输入接口为 4X4 键盘,可提供 16 个有效按键。三种单位(Hz,KHz,MHz)选择,可方便频率的输入。RF 放大电路使用 ADI 公司的宽带可控增益放大器,带宽达 90MHz,在本文中 RF 放大器的增益控制通过调整可变电位器实现,如果采用带有 A/D 转换的单片机,那么增益控制可由单片机自动控制,由于AT89S52 单片机没有 A/D 转换功能,故由调整电位器来人工调整。LCD LCM1602MCU AT89S52TCXO 30MHzDDS AD9851RF Amp AD6034X4 KeyboardRF Output图 8 DDS

9、 频率合成器结构框图该 DDS 频率合成器的电路图见图 9 所示,单片机 P1 口接 4X4 键盘,P2.0、P2.1、P2.2分别接 AD9851 的 DATA、CLK、LOAD 三通信端口。P0 口以及 P2.4、P2.5、P2.6 接液晶显示器,P2.7 为液晶显示器的背光控制,高电平有背光,低电平无背光。C11 与 R12 组成单片机的上电复位电路,单片机采用 12MHz 晶体作为时钟。在本电路中 AD9851 采用串行的数据输入方式,所以数据是从第 25 脚(D7)输入,将3(D1) 、4 脚(D0)接高电平,第 2 脚(D2)接低电平,以满足并联输入转串联输入的硬件要求。因为本电路

10、之要求输出正弦波,为了电路的工作稳定所以将内部高速比较器的两个输入端接地。在很多电路里第 22 脚复位端是直接接地的,我在试验中发现,这样接电路很不稳定,在很多时候接通电源给 DDS 送数据后,DDS 并不工作,最后仔细阅读 AD9851 的Datasheet 后发现,RESET(22 脚)在上电后要有一个高电平脉冲作为复位信号,该复位信号的宽度为不小于 5 个时钟宽度即可,故在 22 脚上接了由 R1 与 C2 组成的复位电路,从此以后电路工作很正常,在送数据后从未出现过 DDS 不工作的问题。从 DAC 输出的信号经过由 L1、L2、C7、C8、C9、C10、C11、C12 组成的截止频率

11、为 75MHz 的低通滤波器后将信号送入由 AD603 组成的可控增益放大电路,这里采用了 AD603 的典型接法,1 脚和 2 脚的电压差决定了 AD603 的增益,如果 1 脚的电压大于 2 脚的电压,则 AD603 处于放大状态,差值越大增益越高;反之 1 脚的电压小于 2 脚的电压 AD603 将会衰减输入信号,增益控制灵敏度为 25mV/Db,通过调整 R10 调整放大器的增益。D31D22D13D04V+6 WLCK7 FQ_UD8CLKIN9GND10V+11RSET12QOUT13 QOUTB14IN-15 IN+16DACBL17V+18IOUTB20 IOUT21RST22

12、V+23GND5D7 /LOAD25D626D527D428GND19 GND24IC1AD9851BRS+5VCLK LOAD104C1DATA+5V104C6104C3104C4104C55.6KR224R351R4L10.1uHL20.1uH15PC1215PC747PC8 100PC9 82PC10104C111 2345678GNDINIC2 AD6032.2KR52.2KR62.2KR9 104C131KR71KR8+10V+10V104C16100uFC15104C1412345678910111213141516LCD1602+5V123Hz456KHz789MHz0RF-Ou

13、t BNC104C2TCXO1KR130MHz+5VP1.01 P1.12 P1.23 P1.34 P1.45 P1.56 P1.67 P1.78RESET9P3.010 P3.111 P3.212 P3.313 P3.414 P3.515 P3.616 P3.717XTAL219 XTAL118GND20P2.122 P2.223 P2.324 P2.425 P2.526 P2.627 P2.728P2.021ALE/PROG30EA/VPP31PSEN29P0.633P0.534P0.435P0.336P0.237P0.138P0.039P0.732VDD40NC1GND2VDD4OUT3

14、IC3AT89S521KR13104C20DATA CLK LOADS W EQ? 80504.7KR11LEDLEDE W SVinVout GND7805104C21 104C23+10V+5V1KR10+10V+10V+5V100uFC24100uFC2210uFC174.7KR12+5V1212MHz22pC1822pC19+5V图 9 DDS 频率合成器总电路图三程序设计程序设计是本频率合成器制作中一个非常重要的环节,它决定着输出频率的精度、操作难易度甚至整个硬件电路是否能够工作。总的程序流程图见图 10 所示,在通电以后,单片机首先对以液晶显示器进行初始化,进入输入频率界面,接下来

15、键盘扫描程序开始工作,当有数字键按下,经过按键消抖后取出键值,将该值按键入的顺序存储到指定的内存单元,并将数字显示在液晶显示器上,跳回按键扫描程序,等待下一个数值的输入,在有效数值输入完毕后按单位键,单片机将按顺序把存入内存的数据取出并进行运算,运算完毕后进行数据调整,然后送入 AD9851,再调用显示,将输出频率显示出来,之后单片机将指定的内存单元清零,进行按键扫描,等待新数据的输入,在有新数据输入时,单片机会将显示值清屏以显示新输入的值。 初始化键盘扫描读取键值YES将键值存入指定 内存单元调用显示单位键是否按下NO从内存读取数据YES数据调整数据发送调用显示数据计算NOEND图 10 总

16、程序流程图在整个程序中,最重要的子程序有三个,分别是数据运算子程序、数据调整子程序和数据发送子程序。下面就三个子程序分别进行说明:1数据运算子程序:AD9851 的 Datasheet 指出,DDS 输出频率(=322outPhaseSystemClockfPhase十进制 32 位频率控制字,表示系统时钟,这里是 30MHz6=180MHz),因SystemClock此。所以送入单片机的频率控制字的值为326223.860929422180 10out outfPhasefA23.860929422 的整数倍,也就是发送给 AD9851 的值是输入频率值与 23.860929422 的乘积,在 70MHz 范围内,这是个相当大的值,远超过了 51 单片机所能运算的范围,所以这里采用了“累加”的办法来解决如此大数字的乘法问题。将1Hz、10Hz、100Hz、1KHz、10KHz、100KHz、1MHz、10MHz 这样的单位频率作为常数,为了保证精确度

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号