0.96インチOLEDを使ったオシロの試作版(arduino)
前の記事の最後にちょっと触れた、0.96インチOLEDを使ったオシロの試作版というか、機能確認バージョンが出来ました。
最高サンプリング速度(周期)は8μsなので、10kHzくらいまでの波形なら観察出来るはずです。
▼0.96インチOLEDオシロ

小さな画面ですが、コントラストが高いので、思いのほか見易いです。
▼回路図

Arduinoのアナログ入力(A0)から信号を入れると、その波形をOLEDに表示します。入力電圧は0-5Vの固定。操作スイッチは今のところ、スイープ速度4段の切り替えと、トリガスロープの選択だけです。
スケッチはこちら、→ 0.96インチOLEDオシロスコープのスケッチ S-JISエンコードです。(Arduino IDEの画面にコピペするのが簡単だと思います)
縦軸の自動ズーム機能、自動トリガ機能が付いています。これ以上の詳しい説明は省略します。I2Cインターフェイスの0.96インチOLED(SSD1306)を接続すればそのまま動くはずです。ファンクションジェネレータなど無くても、入力に短い線を繋ぐことで、ACラインの誘導ノイズ波形が観察出来るので動作確認が出来ます。
表示のVRAMに1kバイト、波形バッファに400バイトのメモリーが必要なので、RAMの容量が苦しいです。なお、ライブラリはAdafruit_GFX.hとAdafruit_SSD1306.hを使っています。
◆動いている様子 (?rel=0)
あれこれ入力波形を変えて観察している様子です。初めの方に、同じ波形を入力したアナログオシロの画面も出てきます。(トリガ極性切り替えの様子の動画を入れるのを忘れました)
なお、波形はドットで描いているのですが、ドット間を直線で接続した方が見易かったかも知れません。
◆まとめ
・結構それっぽい物が出来ていると思います。
・ADCは数100kHz以上の信号でも反応するようで、エイリアシングが強く出ています。勘違い防止のために、入力にローパスフィルタを入れた方が良さそうです。
・試作版を動かしていて思ったのですが、この小ささを生かしてペン型オシロを作ると面白そうです。操作スイッチやメニューなどは、ペン型にした時のことを意識して作り込みたいと思います。
最高サンプリング速度(周期)は8μsなので、10kHzくらいまでの波形なら観察出来るはずです。
▼0.96インチOLEDオシロ

小さな画面ですが、コントラストが高いので、思いのほか見易いです。
▼回路図

Arduinoのアナログ入力(A0)から信号を入れると、その波形をOLEDに表示します。入力電圧は0-5Vの固定。操作スイッチは今のところ、スイープ速度4段の切り替えと、トリガスロープの選択だけです。
スケッチはこちら、→ 0.96インチOLEDオシロスコープのスケッチ S-JISエンコードです。(Arduino IDEの画面にコピペするのが簡単だと思います)
縦軸の自動ズーム機能、自動トリガ機能が付いています。これ以上の詳しい説明は省略します。I2Cインターフェイスの0.96インチOLED(SSD1306)を接続すればそのまま動くはずです。ファンクションジェネレータなど無くても、入力に短い線を繋ぐことで、ACラインの誘導ノイズ波形が観察出来るので動作確認が出来ます。
表示のVRAMに1kバイト、波形バッファに400バイトのメモリーが必要なので、RAMの容量が苦しいです。なお、ライブラリはAdafruit_GFX.hとAdafruit_SSD1306.hを使っています。
◆動いている様子 (?rel=0)
あれこれ入力波形を変えて観察している様子です。初めの方に、同じ波形を入力したアナログオシロの画面も出てきます。(トリガ極性切り替えの様子の動画を入れるのを忘れました)
なお、波形はドットで描いているのですが、ドット間を直線で接続した方が見易かったかも知れません。
◆まとめ
・結構それっぽい物が出来ていると思います。
・ADCは数100kHz以上の信号でも反応するようで、エイリアシングが強く出ています。勘違い防止のために、入力にローパスフィルタを入れた方が良さそうです。
・試作版を動かしていて思ったのですが、この小ささを生かしてペン型オシロを作ると面白そうです。操作スイッチやメニューなどは、ペン型にした時のことを意識して作り込みたいと思います。