DDS信号发生器的实现(内含代码资料)

该博客介绍了DDS直接数字式频率合成器的实现,详细阐述了相位累加器、相位幅度转换和数模转换器的工作原理,并通过实例展示了如何通过调整相位控制字来改变信号频率。内容包括功能描述、波形调制、应用举例和实现过程。
摘要由CSDN通过智能技术生成

本案例节选明德扬深圳FPGA培训班。

一、功能描述

本工程实现DDS直接数字式频率合成器,利用正弦波相位线性增加的特点,产生正弦波和余弦波。本工程主要由3部分组成:相位累加器,相位幅度转换,数模转换器DAC(FPGA外部实现)。其中,相位累加器的高10比特用于ROM的索引地址


1491979310120932.png


二、波形调制说明

模块将一个正弦波采样1024个点,然后保存到内部一个8比特、1024深度的ROM当中,通过改变时序和相位控制字,即可生成不同频率的波形。 生成波形的公式是: FO=TCLK*FCW/655360 上面公式中,TCLK是指本模块的工作时间,FCW是相位控制字,FO即是生成的信号频率。


相位控制字FCW可以改变每次步进数M。如果FCW=128,则模块内部累加器每次加128,则经过M=16’hffff/128=512个时钟,就可以循环一个周期,也就是512个时钟完成一个正弦波输出。假如FCW为256,则代表1024/4=128个时钟周期就输出一个正弦波。


三、应用举例

设定是FCW=128,CLK=50M的时钟频率,由公式计算得出F0=10KHZ。实际测量出一个波形时间为10332000ps,最终波形的频率为10KHZ。 如果是FCW=128,CLK=5M的时钟频率,由公式计算得出F0=1KHZ。输出实际测量一个波形时间为51898054ps,最终波形的频率为1KHZ。


如果是FCW=128,CLK=100M的时钟频率,由公式计算得出F0=0.2MHZ。输出实际测量一个波形时间为5167188ps,最终波形的频率为0.2MHZ。 以此类推,通过对频率控制字的改变来控制波形频率。


四、平台效果图

  • 5
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值