Arduino + AD9833 波形发生器

article/2025/10/19 0:55:42

Arduino + SI5351 方波发生器_姜戈12的博客-CSDN博客SI5351 方波发生器https://blog.csdn.net/jiangge12/article/details/125815044

感觉 Si5351 只有方波还是少点意思。

看到有人做 AD9833 ,成品卖355元。https://www.bilibili.com/video/av463721457/

上面视频里卖家做了一个豪华底板,有屏幕编码器按键等,能够有不少附加值(增加售价)。

不过真的需要搞这么复杂?

看看视频觉得有 DIY 价值,做成了不就节约355元了吗。

想起个笑话: “今天下班一回家,没有挤上公交车,实在等不住了,就跑回了家,我赶紧给老婆报喜,我说:“老婆,今天我省了一块钱,我跟着公交跑回来的!”老婆说:“这么厉害,明天你跟着出租车跑回来,要省好几十块钱呢!”我想了想,我说:“对呀,我咋那么笨啊,还是老婆聪明!”

找到模块是左图这样的,16元。没选右图那样带SMA接口的,既贵也手里也没配套线材。

真需要严谨高频波形时估计会上更高指标的,这个也就练练手。

再仔细看了看,右图多了一级AD8051放大,贵有贵的道理。

“ Ctrl+Alt+I ” 打开库管理界面,搜的一下,arduino 已经有这个库,尝试编译也通过了。

那接下来就等模块到货了。。。几天之后。。。快递在疫情期间准点到达

------------------------------------------------------------------------------------------------------------------

先焊接排针(左图)。如图 5个数字脚 和 2个模拟脚 上下分开,有字一面向上方便看引脚标识。

看了下PDF,AD9833电流很小,可以像之前做OLED实验一样,用数字引脚供电。

实拍测试场景:先用的UNO测试,后因用到蓝牙改用 ESP32 。如果和上图一样插在 UNO的 D7-D3 ,直接用如下代码:( D7 Vcc   ,D6 Gnd )

代码很简洁,比SI5351易读。关键是 SI5351 例程代码频率需要校准,AD9833就不需要的。

#include <MD_AD9833.h>
#include <SPI.h>MD_AD9833 AD(/*DATA*/5, /*CLK*/4, /*FSYNC*/3);  void setup(void)
{pinMode(7, OUTPUT); digitalWrite(7, HIGH); // 数字引脚供电(仅限极低低功耗模块)   pinMode(6, OUTPUT); digitalWrite(6, LOW); AD.begin();AD.setMode(MD_AD9833::MODE_TRIANGLE);  // MODE_SINE MODE_TRIANGLE MODE_SQUARE1AD.setFrequency(MD_AD9833::CHAN_0, 1000000); 
}void loop(void)
{
}

----------------------------------------------------------------------------------------------------------------------

如没有示波器,把 AD9833 频率降到 1KHz,可以用 ADC 采样并输出到 串口绘图器。

UNO ADC 默认采样速度 10KHz ,可以提高到 67KHz。 代码如下:

#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit))
#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit))int i;
int ch0_adc[600];void setup(void) {Serial.begin(2000000);sbi(ADCSRA,ADPS2) ;cbi(ADCSRA,ADPS1) ;cbi(ADCSRA,ADPS0) ; 
}void loop(void) { for ( i = 0 ; i < 600 ; i++){ ch0_adc[i] = analogRead(A0); }  for ( i = 0 ; i < 600 ; i++){ Serial.println(ch0_adc[i]);  }delay(1000); // 单位 毫秒
}

“ Ctrl+Alt+L ” 打开 Arduino IDE 串口绘图器 ,即可看到下面这样的波形

-----------------------------------------------------------------------------------------------------------------------

最后,总要有别于其他已经有的波形发生器才算对得起折腾。

ESP32不是有蓝牙吗?程序移植到ESP32是及其容易的,注意几个引脚号即可。

AD9833 插在ESP32上,外加一块电池。

不打板不做外壳还能比这更简洁? 

 示波器也配合用手持的,这样摆拍方便。

下面是 手机控制参数 的 演示视频 。( 模块黑乎乎的在右上角 )

https://v.youku.com/v_show/id_XNTg4OTczOTAzNg==.htmlhttps://v.youku.com/v_show/id_XNTg4OTczOTAzNg==.html

 手机 App 用的是  汇承  的,帮他家宣传下,不买他的模块也可看看资料。

附:

卓老师的测试,看得出来已经用上了面包板硬线,不过依然没有直插简洁测试AD98331. 该模块是购置于淘宝GY9833: Price: 6.85。AD9833购买模块以及测试实验2. 测试实验板(1) HardwareAltiumDesign\Test\2020\GenretCntF103\SPIF030K8(2) Firmware所在目录:Application\Test\2020\GeneralFSPIF030\Src模块AD983...https://blog.csdn.net/zhuoqingjoking97298/article/details/104111128

卓老师的分析在今天充满着2的岁月日子里,也有着和2无缘的事物,那就是AD9833。它所产生的12.5MHz的信号中,居然没有所有的偶次(2的整数倍数)谐波。AD9833及其实验电路AD9833是一款AnalogDevices公司的可编程信号低功耗发生器芯片。工作电压2.35.5V。在外部25MHz时钟信号驱动下可以产生0.1Hz12.5MHz的正弦波、三角波以及方波。被应用于工业气体、液体流量测量、位...https://zhuoqing.blog.csdn.net/article/details/104151117

 


http://chatgpt.dhexx.cn/article/b16NvXIr.shtml

相关文章

[技术讨论][DDS] AD9833原理介绍及chiliDDS驱动分享(上)

其实本文还有另一标题&#xff1a;《AD9833调不通&#xff1f;看这篇**就够了》 总觉字里行间隐隐霸气外露&#xff0c;不符合作者低调的风格&#xff0c;于是换了个朴素标题。标题狂不狂暂且不评&#xff0c;作者水平有限却是个事实&#xff1b;看到这篇**是你我缘分&#xff…

STM32单片机TFT显示AD9833 DDS信号发生器语音播报正弦波方波三角波

实践制作DIY- GC0146---TFT显示AD9833 DDS信号发生器 基于STM32单片机设计---TFT显示AD9833 DDS信号发生器 二、功能介绍&#xff1a; 硬件组成&#xff1a;STM32F103C系列最小系统板 1.8寸TFT彩屏AD9833信号模块4*4矩阵键盘DY-SV17F语音播报模块 1.通过4*4键盘来设定频率值和…

失真很大的波形发生器AD9833

波形发生器AD9833 01 波形发生器 一、AD9833 AD9833是一款AnalogDevices公司提供的数字信号可编程信号发生器芯片。 它一般配有外置的主时钟信号&#xff0c;每次时钟信号将将内部28位的相位累加器递增一个相位数值。 该相位数值由芯片SPI串口被外部的MCU设置。  相位累加器…

【STM32+cubemx】0030 HAL库开发:DDS芯片AD9833实现简单的波形发生器

大家好&#xff0c;我是学电子的小白白&#xff0c;今天带大家了解一款波形发生器芯片——AD9833。 AD9833是AD公司出品的一款DDS波形发生器&#xff0c;能够产生正弦波、三角波和方波输出。 1&#xff09;什么是DDS 通俗来讲&#xff0c;DDS是一种把波形预先存储在芯片内部的…

2.电赛进行时......(AD9833(DDS)模块的学习使用)

文章目录 前言一、DDS是什么&#xff08;信号发生器&#xff09;&#xff1f;二、AD9833模块介绍1.概述2.模块移植3、效果展示![在这里插入图片描述](https://img-blog.csdnimg.cn/2b0d29939275403f9248339c894965a0.png#pic_center) 前言 如果是玫瑰&#xff0c;它总会开花的…

AD9833介绍与应用(C语言实现)

1.特性 低功耗、可编程波形发生器&#xff0c;能产生正弦波、三角波和方波的输出&#xff1b; 主频时钟为25MHz时&#xff0c;可实现0.1Hz的分辨率&#xff1b;主频时钟为1MHz时&#xff0c;可实现0.004Hz的分辨率&#xff1b; 三线式串行接口(SDATA、SCLK、FSYNC)写入数据&a…

2021电赛预测—手把手带你玩转DDS模块AD9833

1、电赛预测 摘要&#xff1a;原定于7月28日才发布的器件清单&#xff0c;提前2天在26号就发布。感觉大家现在应该猜题预测&#xff0c;与其猜题&#xff0c;还不如静下心来做题。盲目猜题是没有必要的&#xff0c;熟悉相关器件倒尤为重要。不要到处去水群聊天&#xff0c;听风…

幻方....

c语言上机。。。。 c写的幻方。 1 /*************************************************************************2 > File Name: code/class/7.c3 > Author: 111qqz4 > Email: rkz2013126.com 5 > Created Time: 2015年11月11日 星期三 19时31分5…

Unity脚本生命周期流程图

转载自【无幻】&#xff1a;http://blog.csdn.net/akof1314/article/details/39323081 渲染 OnPreCull: 在相机剔除场景之前调用此函数。相机可见的对象取决于剔除。OnPreCull 函数调用发生在剔除之前。 OnBecameVisible/OnBecameInvisible: 在对象对于相机可见/不可见时调用此…

SonicUI在MFC中的使用

SonicUI是一个GUI引擎&#xff0c;提供了一些简单的UI组件实现高效率的UI效果&#xff0c;例如&#xff1a;自绘按钮、异形窗体、动画、超链接和图像操作方法。此项目作者开源到CodeProject&#xff0c;地址为&#xff1a;http://www.codeproject.com/KB/GDI/SonicUI.aspx。下载…

将ribbon主题应用到对话框中去(转载)

原帖地址&#xff1a;这里 找了N久&#xff0c;终于在无幻大神这里找到了将ribbon sdi主题应用到对话框程序中的方法&#xff0c;好像这是一个开源的项目&#xff0c;google code里有,地址在 这里。记录下&#xff1a; 1、下载网页里的资源KofPack0.1&#xff0c;vs里打开工程…

如何制作一个横版格斗过关游戏 Cocos2d-x 2.0.4

本文原创版权归 csdn 无幻 所有&#xff0c;转载请详细标明原创作者及出处&#xff0c;以示尊重&#xff01; 作者&#xff1a;无幻 原文&#xff1a;http://blog.csdn.net/akof1314/article/details/8549150 本文实践自 Allen Tan 的文章《How To Make A Side-Scrolling Bea…

VC复制HTML格式到剪贴板 HTML Clipboard Format

本文作者&#xff1a;无幻 测试环境&#xff1a;Windows 7 开发环境&#xff1a;Visual Studio 2008 SP1 参照MSDN和帮助&#xff0c;在VC下测试代码如下&#xff1a; C语言: BOOL CBaseDialogDlg::CopyHtmlToClip( const CString &strHtml ) { // 1)转换成UTF-8 CW2A p…

如何制作一个横版格斗过关游戏(2) Cocos2d-x 2.0.4 .

本文原创版权归 csdn 无幻 所有&#xff0c;转载请详细标明原创作者及出处&#xff0c;以示尊重&#xff01; 作者&#xff1a;无幻 原文&#xff1a;http://blog.csdn.net/akof1314/article/details/8572546 在第一篇《如何制作一个横版格斗过关游戏》基础上&#xff0c;增加…

Cocos2d-x 2.0.1 学习tests示例(二)ActionsTest

作者&#xff1a;无幻 博客&#xff1a; http://blog.csdn.net/akof1314 初学Cocos2d-x&#xff0c;如文章有错误之处&#xff0c;欢迎指出 自上篇《 Cocos2d-x 2.0.1 学习tests示例&#xff08;一&#xff09;Manual Transformation》继续学习tests示例。 1 2 3 4 5 6 7 8 9…

改变CMFCRibbonBar高度

本文作者&#xff1a;无幻 测试环境&#xff1a;Windows XP 开发环境&#xff1a;Visual Studio 2010 要改变CMFCRibbonBar的高度&#xff0c;需要重载CalcFixedLayout函数&#xff0c;例如如下&#xff1a; 头文件&#xff1a; #pragma once// // CKofMFCRibbonQuickAccessTo…

Cocos2d-x 2.0.1 学习tests示例(一)Manual Transformation

作者&#xff1a;无幻 博客&#xff1a; http://blog.csdn.net/akof1314 初学Cocos2d-x&#xff0c;如文章有错误之处&#xff0c;欢迎指出 从上次《Cocos2d-x 2.0 从HelloWorld入手》&#xff0c;继续学习tests示例。 1.右键点击“Solution ‘cocos2d-win32.vc2008’"&…

Unity3d好东西应该被看见_分享一个Assetbundle分析工具

关于Assetbundle分析 很多年前获得过搜狐畅玩的代码 不确定是不是腾讯流出版本&#xff0c;反正经历了深圳畅玩&#xff0c;到北京畅玩。 整个中国地图&#xff0c;从南到北&#xff0c;成熟的Unity手游团队&#xff0c;手上几乎都是那一份ASSETBUNDLE处理代码 功能太多&am…

Visual C++ 2008 Feature Pack 示例截图

Visual C 2008 Feature Pack 示例截图 by 无幻 百度文库&#xff1a;http://wenku.baidu.com/view/f09e5575a417866fb84a8eb6.html 豆丁文档&#xff1a;http://www.docin.com/p-55873972.html CSDN下载&#xff1a;http://download.csdn.net/source/2380293 动态图片显示…

CRichEditCtrlEx支持静态表情聊天类的使用

本文作者&#xff1a;无幻 博客地址&#xff1a;http://blog.csdn.net/akof1314 平时我们在做IM聊天之类的软件的时候&#xff0c;一般都会使用Rich Edit控件来作为聊天编辑框和聊天记录框的控件&#xff0c;在之前的VC知识库看过《类似 MSN 信息发送框的制作(上)》、《类似 MS…