CJMCU-9833

2019年2月8日 - 未分類

AD9833を使った、ファンクションジェネレータのモジュールをRaspberry Piで動かしてみました。モジュールの左側の金属製のチップは25MHzの発振器のようですね。REFは、発振器の出力とつながっています。SPIで制御します。

周波数制御の他に、位相制御もできるものなので、複数のCJMCU-9833を使って、位相シフト制御ができるものを試作したいと思っています。

先ずは、Raspberry Pi 3B+でPythonを使って、CJMCU-9833を使えるようにしてみました。githubにコードをアップしてあります。このコードは、4つのCJMCU-9833をコントロールするものです。Raspberry Piで動作するAD9833のpythonコードを参考にして、ArduinoのAD9833のコードをPythonで書き直し追加ています。また、gpiozeroをpigpioに変更したものも作成してあります。

Raspberry PiのSPIは、CEが2つか3つしか使えないので、MOSIとCLKを共通にして、CEだけ4つ、GPIOで割り当ててあります。また、SPIへの書き込みは、MOSIポートをON/OFFすることで実行しています。GPIOライブラリー系のspi_xferが4つのSPIデバイスに使えなかったためです。

共通の発振器を使うために、CJMCU-9833の改造を行います。

パターン修正前

モジュールの基板の発振器につながっているパターン2箇所を切断します。

パターンカット

 

クロックバイパス後

発振器をバイパスするように配線をします。

4ch AD9833 with same clock

これで、4つのCJMCU-9833が共通の発振器で動作するようになりました。

オシロスコープの1chでトリガーをかけると、位相シフトが見えます。

Translate »