ad9833调试中遇坑与解决

之前用的是ad9837,应用手册一直直接程序拿来用,出来的信号频率与波形与实际不符。比如设定的60khz出来的是10khz,10khz是5khz,30khz是9khz,设定方波出来的是三角波等等。

一开始检查的是硬件电路,晶振和芯片问题排查没有问题,3脚出来的也是2.5v非常健康非常正常,故而检查软件问题,但之前调试9837没有信号发生器调试这种问题所以一开始没有往软件方面想。上示波器看时序发现输出信号波形有点失真,杂波很多,不是很漂亮,但是能读出数据,与程序设定的一致。 

但是波形还是不对,最后调试了spi通信频率,从5Mhz降到1Mhz问题解决,示波器上的时序信号也变成了漂亮的方波,nice。 

使用Arduino,OLED显示屏和AD9833 DDS模块为您的实验室创建有用的波形发生器。 硬件部件: Arduino Nano R3 × 1个 显示SH1106 I2C Oled 128x64像素(4针)× 1个 AD9833 DDS模块× 1个 5V继电器模块(可选)× 1个 电容10 µF × 1个 电容10 nF × 1个 AC-DC 100-220V至5V降压电源模块× 1个 手动工具和制造机: 烙铁(通用) 特征 输出频率在1 Hz至999999 Hz之间 频率变化的两种模式:对数和一位数字 波浪,正弦波,三角形和正方形三种类型 交流或直流输出耦合 在两个预定义的频率值之间连续扫描的能力 仅由一个旋钮控制 集成的屏幕保护程序可以保持OLED显示屏的使用寿命 1kHz正弦波: 1kHz的三角波: 1kHz方波: 注意 DDS模块的输出幅度不是很高,正弦波和三角波的峰峰值平均在550 mV至650 mV之间,对于方波,峰峰值平均约为4.5V,约为峰峰值4.5V。当然,这往往会频率成反比地下降,但高达1MHz时,它是线性的。AD9833 DDS模块能够产生高达12 MHz的信号,这对我来说不是必需的。如果您需要超过1 MHz,则可以尝试进行实验,并在显示屏上添加一个或两个数字,但这需要对图形界面进行部分重新设计。 输出信号的质量还取决于电源的质量,因此最好使用线性电源,而不是像切换电源那样,以减小从旧项目中恢复的情况的大小。但是,即使使用开关模块,波形的线性度也相当好。 快速参考 原型 我使用了具有10A触点的预组装继电器模块,因为目前我还没有微型簧片继电器,当不需要功率继电器时,这将是避免使用晶体管二极管和电阻器的最佳选择。Arduino数字PIN最多可提供40 mA的电流,因此您不能直接将机电继电器120/150欧姆线圈连接。 使用电源时务必非常小心!
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值