Arduino Nanoで20kHzオシロスコープを自作:Nokia 5110 LCD搭載・簡易DIYガイド
必要な部品と材料
| 部品 | 数量 | 備考 |
|---|---|---|
| Arduino Nano R3 | 1 | |
| Nokia 5110 LCDディスプレイ (PCD8544) | 1 | 84×48ピクセル、モノクロ |
| 抵抗 10kΩ | 4 | プルダウン用 |
| 抵抗 4.75kΩ | 1 | |
| 抵抗 330Ω | 1 | バックライト用 |
| タクトスイッチ(モーメンタリ) | 4 | 操作ボタン用 |
必要な工具
- はんだごて
- 無鉛はんだ
使用ソフトウェア
- Arduino IDE
プロジェクト概要
Arduino NanoとNokia 5110 LCDで、最大20kHz、最大入力電圧5V(分圧器なし)の簡易オシロスコープを作ります。4つのボタンで操作します:
- HOLD:画面表示をフリーズ
- 同期:トリガーレベル設定
- + / -:スイープ(時間軸)、同期レベル、HOLD時の波形移動を調整
画面表示仕様
- 垂直軸:1目盛 = 1V
- 水平軸(スイープ):0.1, 0.2, 0.5, 1, 2, 5, 10, 20, 50 ms/目盛
- 左上にスイープ値、左側にトリガーレバー、右上にトリガー電圧を表示
構成部品
- Arduino Nano マイコン
- Nokia 5110 LCD
- 4個のボタンとプルダウン抵抗
- 入力ジャック
- 電源スイッチとLED
正弦波・矩形波発生器でテスト済み。プロフェッショナル機器ではありませんが、教育用途や低周波信号の簡易チェックに最適です。PVCケースに収めて実用化しています。
ソースコード
Arduinoスケッチ(C/C++)が提供されています。主な機能:
- Adafruit_GFX / Adafruit_PCD8544 ライブラリ使用
- ADC 10bitモードで高速サンプリング(タイマー割り込み使用)
- ボタン割り込みによるUI制御
- トリガー同期、スイープ切替、HOLD機能実装
- グリッド表示、波形描画、パラメータ表示
コードはプロジェクトページ(arduino.ru)で公開されています。
回路図
配線図が提供されています。NanoのA0ピンに信号入力、D7〜D11でLCD制御、D10〜D13でボタン入力、D9でバックライトPWM制御を行います。
製造プロセス
- スマートブラインド:Arduinoとソーラー電源で実現する自動光制御
- Arduinoでシンプルな障害物センサーを自作 – IR LEDとフォトダイオード入門
- ArduinoとNokia 5110ディスプレイで自作電圧計:ステップバイステップガイド
- Arduino Nanoで自作オシロスコープ(10Hz〜50kHz)128×64 LCD搭載
- Arduino Nanoとロータリーエンコーダーで作る高精度測定ホイール
- シンプルなArduinoストップウォッチ:ボタンで動作するクロノメーターの作り方
- 自動レンジ切替対応 静電容量メーター (10pF〜10µF) - Arduino Nano で簡単自作
- AI搭載LCDコンパニオンを自作: インタラクティブな相棒
- 非接触ジェスチャー錠: APDS-9960とArduinoでセキュアアクセス
- Arduino用絶縁アナログ入力回路の設計:LM331 V-F変換+フォトカプラでノイズ耐性を確保
- DS1302 RTCとArduino UNOで作る信頼性の高い目覚まし時計