使用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欧姆线圈连接。
使用电源时务必非常小心!