3 ロータリエンコーダとOLED
参考にしているAD9833 Waveform Generatorにロータリエンコーダについての記述があります。
ロータリエンコーダを2つ使っていて、ひとつは x1, x10, x100, x1000 というように設定周波数の倍率を選ぶ役割で、もう一つは現在の周波数から増減させる役割のようです。AD9850 Waveform Generatorの動画を見て、なんとなくこのようにイメージできました。
また、2つのロータリエンコーダはプッシュスイッチ付です。たぶんこれはロータリエンコーダで選んだ周波数を決定(セット、反映)する役割かなぁと思います。
入手したロータリエンコーダはこれです。
アルプス電気EC11もどきを使っています。部品を追っていくと下図のような回路でした。
Arduinoで使うためのライブラリは、Rotary Encoder Arduino Libraryで、参照させていただいている2件のブログと同じです。
基本的にスケッチは、迷走の果て・Tiny Objects AD9833 DDSモジュールを試す(13) 現状のものを利用させていただくつもりです。<m(__)m>
回路もこの回路図をベースにしたいと思います。整理されていてとても分かりやすいです。
液晶OLEDは手持ちだった1.6インチ 130x130 のカラーTFTのSSD1283Aを使います。SPI接続です。
This library supports SSD1283A to use with Adafruit_GFX and/or LCDWIKI_GUI.
The code is extracted from LCDWIKI_SPI and adapted for single controller use and Adafruit_GFX.
Only HW SPI is supported.