更新手中的便携式示波器后,感觉示波器自带1M波形发生器不够看。
一个频率高一些的波形发生器是必须的,然而并没什么专业用途,所以不考虑投资成品设备。
搜索发现这货只有12元。
通过 I2C 连接上 MCU,例程一跑,就能愉快地看到指定频率的方波。
模块买的时候没有焊接排针,可以自己焊接:I2C 4pin往下, 输出 0、1、2 往上。
后来发现 CH0 1 2 这三针没有地线,不太方便。 SMA焊点位置焊接排针,配合自制试验线。(SMA接口暂时不焊接,如果需要使用,必须有配套电缆)
因为它主要测试单片机的波形,所以DIY双截测试线,包括前者(BNC---可直接插入杜邦 SI5351 比较方便。实测10MHz波形比示波器100M探头稍微好一点。(可能是非屏蔽部分较少)
正负标记需要一些思考,改变了几次。最后,红黑双层热缩管方案令人满意。
----------------------------------------------------------------------------------------------------------------
2M 下面,波形好
20M 有些走样。
70M 几乎正弦波,再高也能到。 200M, 手中没有设备测试。
注:高频需要一个特殊的接口,杜邦线这样的接口并不严格。该图只验证了频率,波形将在未来找到专业设备。
// https://github.com/etherkit/Si5351Arduino #include "si5351.h" #include "Wire.h" Si5351 si5351; void setup() { bool i2c_found; Serial.begin(115200); i2c_found = si5351.init(SI5351_CRYSTAL_LOAD_8PF, 0, 0); if(!i2c_found) { Serial.println("Device not found on I2C bus!"); delay(500); } si5351.set_freq(20000000ULL, SI5351_CLK0); // 20000000 是频率值,单位0.01Hz,也就是说,去掉两个零,实际测试发现没有校准时有一些偏差,但附带校准程序暂时出现一些问题,先这样吧 } void loop() { }
几天后发现 AD9833,看来比 Si5351 更强,频率足够.