基于AD9767高速DAC的DDS信号发生器

DDS信号发生器原理 

DDS控制信号发生原理图

        DDS主要由相位累加器、相位调制器、波形数据表以及D/A转换器构成。其中相位累加器由N位加法器与N位寄存器构成。每个时钟周期的时钟上升沿,加法器就将频率控制字与累加寄存器输出的相位数据相加,相加的结果又反馈至累加寄存器的数据输入端,以使加法器在下一个时钟脉冲的作用下继续与频率控制字相加。这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。即在每一个时钟脉冲输入时,相位累加器便把频率控制字累加一次。 

        相位累加器输出的数据就是合成信号的相位。相位累加器的溢出频率,就是DDS输出的信号频率,相位累加器输出的数据,作为波形存储器的相位采样地址,这样就可以把存储在波形存储器里的波形采样值经查表找出,完成相位到幅度的转换。 

        波形存储器的输出数据送到 D/A 转换器,由 D/A 转换器将数字信号转换成模拟信号输出。 

DDS信号流程示意图
AD9767驱动模块端口

AD9767模块介绍

        有两个通道,每个通道的数据分辨率为14位,转换速率最高可达到125Mbps,输出电压范围为+/-5V。 

        ACM9767模块是一款高性能高速双通道 DAC 模块。 模块具有单电源 5V 供电输入,双通道数字转模拟信号输出,每个通道数据分辨率为 14 位, 输出电压范围为+-5V, 且转换速率高达125Msps,非常适合诸如信号发生器、数字调制通信系统的开发等应用。

ACM9767模块图

ACM9767模块插接管脚信号含义

设计要求

  1. 做一个双通道的信号发生器
  2. 能够简单的调整每个通道的频率输出
  3. 能够提哦啊正每个通道的输出相位
  4. 能够控制输出的波形形式(sine,方波,三角波等)        

设计代码

DDS 模块

module DDS_Module(Clk,Reset_n,Mode_Sel,Fword,Pword,Data
);input Clk;input Reset_n;input [1:0]Mode_Sel;    //模式切换input [31:0]Fword;input [11:0]Pword;output reg[13:0]Data;//频率控制字同步寄存器reg [31:0]Fword_r;always@(posedge Clk)Fword_r <= Fword;//相位控制字同步寄存器reg [11:0]Pword_r;always@(posedge Clk)Pword_r <= Pword; //相位累加器    reg [31:0]Freq_ACC;always@(posedge Clk or negedge Reset_n)if(!Reset_n)Freq_ACC <= 0;elseFreq_ACC <= Fword_r + Freq_ACC;//波形数据表地址wire [11:0]Rom_Addr;      assign Rom_Addr = Freq_ACC[31:20] + Pword_r;wire [13:0]Data_sine,Data_square,Data_triangular;    
//调用底层模块ROM表(由ip核生成的三种波形:sine,方波,三角波)rom_sine rom_sine(.clka(Clk),.addra(Rom_Addr),.douta(Data_sine));rom_square rom_square(.clka(Clk),.addra(Rom_Addr),.douta(Data_square));

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/75983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

镜像端口及观察端口的配置

配好路由器的各个接口的IP PC1ping PC3的IP&#xff0c;在路由器中抓2/0/0端口的包&#xff0c;可观察到无结果 输入observe-port interface g 2/0/0 命令配置观察端口 输入mirror to observe-port both命令 &#xff08;其中both表示接收来去的数据包&#xff0c;inboun…

K8S_ResourceQuota与LimitRange的作用

ResourceQuota 作用详解 资源总量控制&#xff1a;ResourceQuota能对命名空间内的资源使用总量进行限制。在一个Kubernetes集群中&#xff0c;存在多个命名空间&#xff0c;每个命名空间可看作一个独立的工作单元。通过设置ResourceQuota&#xff0c;可以防止某个命名空间过度…

Redis之缓存击穿

Redis之缓存击穿 文章目录 Redis之缓存击穿一、什么是缓存击穿二、缓存击穿常见解决方案1. 互斥锁&#xff08;Mutex Lock&#xff09;2. 永不过期 后台刷新3. 逻辑过期&#xff08;异步更新&#xff09; 三、案例1.基于互斥锁解决缓存击穿2.基于逻辑过期解决缓存击穿 四、注意…

Spring Boot 中使用 Netty

2025/4/15 向 一、什么是Netty Netty 是 Java 中一个非常高性能的网络通信框架&#xff0c;用来开发服务器和客户端程序&#xff0c;主要用于处理 TCP/UDP 的网络连接&#xff0c;比如&#xff1a; 聊天服务 实时推送 高并发网络通信&#xff08;比如游戏、IoT、金融系统&a…

【QT】 QT定时器的使用

QT定时器的使用 1. QTimer介绍&#xff08;1&#xff09;QTimer的使用方法步骤示例代码1&#xff1a;定时器的启动和关闭现象&#xff1a;示例代码2&#xff1a;定时器每隔1s在标签上切换图片现象&#xff1a; (2)实际开发的作用 2.日期 QDate(1)主要方法 3.时间 QTime(1)主要方…

排序算法详细介绍对比及备考建议

文章目录 排序算法对比基本概要 算法逐一介绍1. 冒泡排序&#xff08;Bubble Sort&#xff09;2. 选择排序&#xff08;Selection Sort&#xff09;3. 插入排序&#xff08;Insertion Sort&#xff09;&#x1f31f;&#x1f31f;4. 希尔排序&#xff08;Shell Sort&#xff09…

Docker华为云创建私人镜像仓库

Docker华为云创建私人镜像仓库 在华为云官网的 产品 中搜索 容器镜像服务 &#xff1a; 或者在其他页面的搜索栏中搜索 容器镜像服务 &#xff1a; 进入到页面后&#xff0c;点击 创建组织 &#xff08;华为云的镜像仓库称为组织&#xff09;&#xff1a; 设置组织名字后&…

微信小程序-自定义toast

微信小程序-自定义toast 微信小程序原生的toast最多能显示两行文字。方案1:方案2 微信小程序原生的toast最多能显示两行文字。 有时候并不能满足业务需求。所以我们需要使用第三方或者自定义。 方案1: 第三方vant-toast 微信小程序下载引入第三方vant之后。 在需要使用的页面…

安卓手游逆向

一、环境安装 1.1、安装Java环境 1.2、安装SDK环境 1.3、安装NDK环境 二、APK 2.1、文件结构 2.2、打包流程 2.3、安装流程 应用安装涉及目录: system/app ----->系统自带的应用程序,获得adb root权限才能删除。 data/app ------->用户程序安装的目录,安装…

VSCode Continue 扩展踩坑记录

Trae 是一款很优秀的 AI 开发工具&#xff0c;但目前支持的平台还较少&#xff0c;比如不支持 Win7&#xff0c;不支持 Linux&#xff0c;为了在这些平台上进行开发&#xff0c;我需要寻找一个替代品。经过网上搜索&#xff0c;选择了 VSCode Continue 扩展&#xff0c;但在使…

Elasticsearch:AI 助理 - 从通才到专才

作者&#xff1a;来自 Elastic Thorben Jndling 在 AI 世界中&#xff0c;关于构建针对特定领域定制的大型语言模型&#xff08;large language models - LLM&#xff09;的话题备受关注 —— 不论是为了更好的安全性、上下文理解、专业能力&#xff0c;还是更高的准确率。这个…

【ARM】MDK烧录提示Error:failed to execute‘ ‘

1、 文档目标 解决在烧录程序的时候&#xff0c;因为选择了错误的烧录方式导致下载失败的情况。 2、 问题场景 在烧录程序的时候出现了提示&#xff1a;“Error&#xff1a;failed to execute ’ ”&#xff08;如图2-1&#xff09;。检测Target->Debug配置发现没有问题&a…

系统分析师(六)-- 计算机网络

概述 TCP/IP 协议族 DNS DHCP 网络规划与设计 逻辑网络设计 物理网络设计 题目 层次化网络设计 网络冗余设计 综合布线系统 IP地址 网络接入技术 其他网络技术应用 物联网

优化运营、降低成本、提高服务质量的智慧物流开源了

智慧物流视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒&#xff0c;省去繁琐重复的适配流程&#xff0c;实现芯片、算法、应用的全流程组合&#xff0c;从而大大减少企业级应用约95%的开发成本可通过边缘计算技术…

从One-Hot到TF-IDF:NLP词向量演进解析与业务实战指南(一)

从One-Hot到TF-IDF&#xff1a;词向量演进之路 开场白&#xff1a; 想象一下&#xff0c;你试图用Excel表格分析《红楼梦》的情感倾向——每个字词都是孤立的单元格&#xff0c;计算机看到的只有冰冷的0和1&#xff0c;而“黛玉葬花”的凄美意境却消失得无影无踪。这就是NLP工…

2. kubernetes操作概览

以下是 Kubernetes 的核心操作概览&#xff0c;涵盖常用命令、资源管理和典型场景的操作流程&#xff1a; 1. 核心操作工具 (1) kubectl 命令行工具 Kubernetes 的所有操作均通过 kubectl 实现&#xff0c;常用命令如下&#xff1a; 操作类型命令示例作用说明查看资源状态ku…

从Ampere到Hopper:GPU架构演进对AI模型训练的颠覆性影响

一、GPU架构演进的底层逻辑 AI大模型训练效率的提升始终与GPU架构的迭代深度绑定。从Ampere到Hopper的演进路径中&#xff0c;英伟达通过‌张量核心升级‌、‌显存架构优化‌、‌计算范式革新‌三大技术路线&#xff0c;将LLM&#xff08;大语言模型&#xff09;训练效率提升至…

p2p的发展

PCDN&#xff08;P2P内容分发网络&#xff09;行业目前处于快速发展阶段&#xff0c;面临机遇与挑战并存的局面。 一、发展机遇 技术融合推动 边缘计算与5G普及&#xff1a;5G的高带宽、低延迟特性与边缘计算技术结合&#xff0c;显著提升PCDN性能&#xff0c;降低延迟&#x…

计算机视觉与深度学习 | 视觉里程计(Visual Odometry, VO)学习思路总结

视觉里程计(Visual Odometry, VO)学习思路总结 视觉里程计(VO)是通过摄像头捕获的图像序列估计相机运动轨迹的技术,广泛应用于机器人、自动驾驶和增强现实等领域。以下是一个系统的学习路径,涵盖基础理论、核心算法、工具及实践建议:一、基础理论与数学准备 核心数学工具…

Ubuntu 24.04 中文输入法安装

搜狗输入法&#xff0c;在Ubuntu 24.04上使用失败&#xff0c;安装教程如下 https://shurufa.sogou.com/linux/guide 出现问题的情况&#xff0c;是这个帖子里描述的&#xff1a; https://forum.ubuntu.org.cn/viewtopic.php?t493893 后面通过google拼音输入法解决了&#x…