51驱动AD9850/AD9851—DDS信号发生器

原文链接:https://www.yourcee.com/newsinfo/2926152.html

请添加图片描述

点击图片购买

AD9850/AD9851的简介

AD9850/AD9851 模块是采用 ADI 应用最广泛的 DDS(AD9850 和 AD9851)制作的模块。
在这里插入图片描述

主要功能特点:

  • 模块能够输出正弦波和方波,2 个正弦波和 2 个方波输出。
     AD9850: 0-40MHz
     AD9851: 0-70MHz
     频率在 20-30MHz 后谐波越来越大,波形会越来越不干净。
     方波: 0-1MHz
  • 采用 70MHz 的低通滤波器,使波形的 SN 比更好
  • 比较器的基准输入端电压由可变电阻产生,调节该电阻可以得到不同的占空比方波
  • AD9850 模块采用 125MHz 的有源晶振,AD9851 模块采用 30MHZ 的有源晶振

AD9850 和 AD9851 主要区别

  • AD9850 的时钟频率最高 125MHz,AD9851 的时钟频率最高 180MHz。输出最高频率AD9851 要比 AD9850 高。
  • AD9850 没有 6 倍频,AD9851 有

原理图

在这里插入图片描述

DDS输出波形的灵活性

关于DDS的其他性能这里暂不多叙。关于DDS的输出波形灵活性只要在 DDS内部加上相应控制如调频控制FM、调相控制PM和调幅控制AM,即可以方便灵活地实现调频、调相和调幅功能,产生FSK、PSK、ASK和 MSK等信号。另外,只要在DDS的波形存储器存放不同波形数据,就可以实现各种波形输出,如三角波、锯齿波和矩形波甚至是任意的波形。当DDS的波形存储器分别存放正弦和余弦函数表时,既可得到正交的两路输出。
DDS的原理框图:
DDS的原理框图

AD9850/AD9851 模块的输出波形

输出正弦波和方波,
注:在输出正弦波的情况下,接线到方波输出的 IO 口,直接调节
蓝色的电位器可输出方波。

程序介绍

下面对主要的源代码进行简单的介绍
初始化DDS

void init_dds(void)
{
clk =0;
load =0;
delay(2);
clk = 1;
delay(2);
clk =0;
delay(5);
load= 1;
delay(2);
load= 0;
}

写入40bit到DDS芯片,频率占用前32bit,相位暂不可调

void write_dds(unsigned long dds)
{
uchar i;
load= 0;
clk =0;
for(i=0;i<40;i++)
{
clk = 0;
delay(3);
if(dds & 0x00000001)
dat = 1;
else dat = 0;
delay(2);
clk = 1;
dds = dds >> l;
}
load=1;clk =0;delay(5);load= 0;
}

输出你要的频率,例如输出12.5M则调用write freq ( 12500000);

void write_freq(unsigned long freq)
{
unsigned long dds;
dds = 42.94967296*freq;write_dds(dds);
}

实验接线

ad985051
w_clkP2^2
fq_upP2^1
restP2^0
bit_dataP1^7

当然,还要接电源供电

调试结果

在这里插入图片描述
下载好对应的代码
OUT1 和 OUT2 端能测试到对应输出 1KHz 信号。如需测试方波,调节可变电位器,可在方波 1 和方波 2 端测试到方波。

AD9851的程序设计

其实软件和AD9850差不多,主要采用注意6clock打开还是关闭,其余的当成180M的时钟处理。
外部晶体为30M,6倍频打开,不像AD9854可以4—20倍频可选。在AD9851的基础上稍做修改就可搞定。
本次主要以AD9850为主做介绍

总结

AD9850是AD公司采用先进的DDS技术1996年推出的高集成度DDS频率合成器,它内部包括可编程 DDS系统、高性能DAC及高速比较器,能实现全数字编程控制的频率合成器和时钟发生器。有需要全代码的可下方留言邮箱获取,长期发布此类文章,欢迎关注一键三连,文章如有错误欢迎及时指正修改。

  • 113
    点赞
  • 253
    收藏
    觉得还不错? 一键收藏
  • 517
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 517
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值