「OLEDオシロスコープ基板」の組み立て方、第2回目は「siliconvalley4066」さんの V402 です。
2025年1月20日 追記
重要:V402 基板には2か所の間違いがありました。
(R8 の1番端子側の配線を切り離し Vout(5 V)につなぎ、C7 と R6 を入れ替える必要があります。)
詳しくは以下のリンクをご覧ください。
この簡易オシロスコープは、「ラジオペンチ」さんの V300 を改良・機能追加したバージョンです。
(「ラジオペンチ」さんのオリジナル V300 の作り方は前回の記事をどうぞ)
「完成した「オシロスコープのプリント基板」のお裾分け」の記事は以下のリンクをご覧ください。
(まだ、基板の無料配布を継続して行っています。)
「siliconvalley4066」さん V402 の概要
「siliconvalley4066」さんが「ラジオペンチ」さんの「OLEDオシロスコープ」を改造された一連の製作記です。「siliconvalley4066」さんの製作記事は、こちらをご覧ください。(別窓が開きます。)
V402 の完成例が下の写真です。
このオシロスコープにはテスト信号発生端子が追加されているので、画面に映っているのはテスト信号の波形です。

基板上の配置はオリジナルの V300 とほぼ同じです。
左上に「AC/DC切り替えスイッチ」、その横に「Down、Select、UP」の3ポジション・サムスイッチが、少し離れて使用頻度の低い「Hold」スイッチ、右側に電源スイッチが並びます。
基板サイズも3種類の「OLEDオシロスコープ」で共通です。横幅が 10 cm、高さが 2.5 cm です。
部品の準備
V402 に必要な部品は、機能は追加されていますが「ラジオペンチ」さんの V300 より少なくなっています。
V402 のプリント基板はこのような作りになっています。

ATmega328P
プリント基板以外の使用部品の紹介です。
ブートローダが書き込まれた ATmega328P を準備します。
素の ATmega328P へのブートローダの書き込み方は、こちらのリンクを参考に「Arduino UNO」のブートローダを書き込んでください。(Arduino UNOをプログラマにします。)
電源用の昇圧基板
使用した昇圧基板は型番が不明ですが、色々なところで販売されています。
他の形状の物でもかまいませんが、今回のプリント基板に直付けするには、写真のような端子間隔が 2.54 mm で3ピンの物を選んでください。(端子上から、入力、GND、出力です。)

OLED
OLED は、画面が大きい 1.3 インチの SSD1306 を使います。(スケッチを変更すると 0.96 インチの OLEDも使えます。)
OLED は、電源端子を入れ替えます。
具体的な方法は、「SMD 半田付け用の クランプ を作る」で紹介しています。下のリンク先をご覧ください。
16 MHz 3 端子セラミック発振子
型番不明ですが、今回の基板では集積度を上げるために、初めて小型のセラミック発振子を使用しました。
これは、日本でよく見る村田製作所のセラロックが海外通販(AliExpress)では見当たらなかったので、しかたなく使用しました。
日本の通販で入手する際には、この部品がネックになるかもしれません。

スイッチ
S1:Hold スイッチ
S1 の Hold スイッチ は、SKHHLPA010 を使いました。
タクトスイッチが90度横向きのスイッチです。
実際には、スイッチの押し込む部分が 7 mm の物を使いました。(6 x 6 x 7)

S2:3ポジション サムスイッチ
3ポジション サムスイッチは型番不明です。
AliExpress で購入しました。

S3:AC/DC 切替スイッチ
S3 の AC/DC 切替スイッチは、 SK22D07G4NSPAを使いました。
普通の小型スライドスイッチですが、6端子です。

S4: 電源スイッチ
S4 の電源スイッチは、SK12D07VG4NSPAです。
3端子のスライドスイッチです。
スライド部分の長さは 5 mm の物を使いました。

抵抗
抵抗は SMD の 3216 サイズを使いました。
R1: 510k
R2: 120k
R3: 12k
R4: 82k
R5: 820k
R6,R7,R20: 10k
R8: 3.3k(電源 LED 用です。実際には取り付ける LED に合わせて、今回は 2kΩ 程度の抵抗にしました。)
LED 電流制限用の抵抗は、使用する LED の明るさに合わせて数値を変更してください。
コンデンサ
コンデンサも SMD の 3216 サイズを使いました。
C1,C2: 47uF(C2 の基板のシルクは 1uF となっていますが、3216 の 47uF が入手できたので交換)
C3,C8,C9: 1uF
C4: 7pF
C5,C6,C7,C10: 0.1uF
その他の部品
その他の部品として、
ATmega328P用 IC ソケット(28 Pin)
1列のピンソケット
1列のピンヘッダ
電源用 LED
板ラグ端子
などが必要です。
プリント基板の図面
プリント基板へ部品を装着する時、端子の接続先が分からなくなった場合の確認図です。
電解コンデンサと LED には極性があります。また、MCU の1番ピンは右上です。取り付けの際には注意してください。

自宅リフロー
SMD の抵抗、コンデンサ、ダイオードなどは大きめの 3216 サイズなので、手半田も可能でしょう。
しかし、小型のセラミック発振子とサムスイッチは、背面に端子があるので半田付けが難しいです。
リフローは自宅でも簡単に出来るので、この機会にぜひお試しください。
(自宅リフローの手順は、以下のリンク先をご覧ください。)
自宅リフローで必要になるステンシル作成用の画像ファイルは、「ラジオペンチ」さんの V33 と共通です。
(最下段には必要ない部分もありますが、適当に編集してお使い下さい。)
ここでは、SMD 部品、小型のセラミック発振子とサムスイッチは、手半田かリフローで取り付けたものとして次に進みます。

IC ソケット、端子の取り付け
背の低い部品から半田付けします。
順番は
IC ソケット
スライドスイッチ
タクトスイッチ
ピンヘッダ
ピンソケット
電解コンデンサ
板ラグ端子
最後に電源用 LED
になるでしょうか。
OLED 用の J3 にはピンソケット、それ以外のジャックにはピンヘッダを使いました。
OLED にはピンヘッダが付いた状態で販売されているものが多いので、ピンソケットが必要ですがその他のジャックにはどちらを使っても大丈夫です。
電源変換基板にもピンソケットを付けておきます。(変換基板にピンヘッダを付けた場合は、基板にはピンソケットを付けてください。)
板ラグ端子は、穴の径が M4 より少し小さいので、ヤスリで広げます。

テスト棒の端子が入るまで広がったら、基板に半田付けします。
端子の下側を90度に曲げてから半田付けします。
全てを半田付けし終わると、こんな感じに出来上がります。
(この基板は動作確認用なので、信号入力用の板ラグとグランド線が付いていません。)

導通確認など
プリント基板はすでに動作確認が出来ているので、半田付けが問題なければ一発で動作するはずですが、万に一の不具合の可能性があるので、MCU 等を挿入して電源を入れる前に電源ラインなどの短絡がないか確認します。
V402 は、テスト信号発生機能がありますが、今回の基板では端子をまとめて配置したために電源接続端子の横にあります。
同じ2ピンの端子なので、電源接続用と間違いやすいので注意してください。
乾電池を準備して電源を接続します。
電池ボックスに圧着端子を付けておくと、基板への脱着に便利です。

昇圧基板をピンヘッダに装着します。
電源スイッチを入れると、電解コンデンサのプラス側に +5 V が出ているはずです。
他にも OLED、MCU、プログラム書き込み端子の VCC にも +5 V が計測出来ます。
以上の部分に問題がなければ、IC ソケットに ATmega328P を挿入します。
通常と異なり、1番ピンが右側になるのでよく確認して挿入してください。
スケッチの書き込み
「siliconvalley4066」さんのブログから「OLEDオシロスコープ」用のスケッチを落としてきて Arduino IDE で書き込みを行います。
最新版のオシロスコープのスケッチは「Arduinoでオシロスコープ」にある V402 です。それ以前のバージョンはこの基板では正常に動作しません。
なお、「OLEDオシロスコープ」のノイズを何とかしたい(番外編)でも記載したとおりに、この基板で V402 のスケッチを動かすとノイズが現れます。
今のところノイズを消すためには、スケッチの一部を書き換える必要があります。
(作者の「siliconvalley4066」さんから手順を教わりました。)
その方法は「等価時間サンプリングのトリガレベル用の62.5kHzのPWM」を停止することです。
119行目の
trigger_level(26);
をコメントアウトして
// trigger_level(26);
とします。
書き込みには USB 変換器でプリント基板のソフトウエア書き込み端子とつなぎます。
接続は下図のとおりです。(この写真は V300 基板です。)


ブートローダは Arduino UNO の物を書き込んでいるので、「ツール」で選ぶ「ボード」は「Arduino Uno」にしてください。

Arduino IDE の詳しい使い方は「Arduino しようぜ!Arduino IDE編」をご覧ください。
動作確認
ここまで来たら完成まではもう少しです。
OLED ディスプレイをピンソケットに差し込みます。
OLED の裏側の電源端子の変更は忘れていませんか?
大丈夫なら、電池を接続して電源を入れます。
オリジナルをリスペクトしたと思われる「ラジオペンチ」さんの名前が入った起動ロゴの後に、V402 のオシロスコープ画面が表示されます。
おめでとうございます!

「siliconvalley4066」さんのブログで公開しているスケッチをそのまま書き込むと、私が製作した基板では 0.1 V 程度のノイズが出ますが・・・(写真の基板は1つ前のものですが、ノイズに関する機能的には同等です。)

スケッチの「等価時間サンプリングのPWM」を停止すると、この写真のように無信号時のノイズはほぼなくなります。

上の写真は単3の乾電池2本で動作しています。
V300 と同じくこの基板も単4電池1本で動かすことも可能です。

この基板も V300 と同様のゼロセット機能を備えているので、5 V 以上と 5 V 以下の2つのポジションで、Hold スイッチを押して Select スイッチを押してゼロセットを行ってください。
次回は、「siliconvalley4066」さんが新規設計された 2CH オシロスコープを組み立てます。
コメント
はじめまして。いろいろな製作記事をワクワクしながら読んでいます。
さて、「プリント基板の図面」において、
LED + → アノード
GND → カソード
なので、修正お願いします。
なお、私は負電源部分のタンタルコンデンサーのマイナス端子をGNDに繋いで爆発させたことがあります。ヒヤヒヤ。
ご指摘ありがとうございます。
あれ!お恥ずかしい。
LEDの図と正負は合ってましたが、アノードとカソードの名前が逆になってますね。
黙って修正しようと思いましたが、自戒の念を込めて返信をしてから直しますね。