リピーターの基板には、Atmega328P-PUやLCD/OLEDのパターンを設けてあります。これは何に使うかと申しますと、コマンドステーション等としても使える様に考えてあります。
全ての部品を実装して、動作確認をしていきます。一部パターンカットとストラップをしています。
思い付きで、LCD(9)ピンからOLED(5)ピン?へ、RST信号をストラップ!
表示は、DSmainR5から取り外したLCDを、上手い事流用する事が出来ました。
スケッチは、見るだけ君R4を書き込みしました。
青い箱を使って、動作確認をします。(写真は、バックライト付きLCD表示が読める様に露出を抑えて有ります。)
DCC信号の入力前は「Idle:0」です。左側の電源パイロット(緑LED)のみ点灯しています。
LOC Controlモードに入ると、DCC信号を検知して、Ach/Bchの赤LEDと間の緑LEDが点灯します。表示は「Idle:117」です。
試しにスピードを8にすると、表示は「78%」となっています。1では「9%」4では「39%」となっています。
これで「リピーターモード」の動作確認が出来ました。
(DCC入力側の入力です。S88-N側の動作確認はまだです。)
現在「見るだけ君」機能については制限事項が有りまして、電圧表示は機能していない様です。これは電流センサーに依存するのかな?電流センサーは積んでいるのですが、接続ピンを変えて有るため機能しないのかもしません。
*****以下加筆
回路図とにらめっこして、スケッチを修正しました。
先ずは、ピン設定を変更します。
”PinMode”を”A2”から”A1”に変更しました。
続いて、電圧変換の数値読み取り部分の変更をします。
”analogRead”の所も”A2”から”A1”に書き換えました。
コンパイルの後書き込みまで問題無く出来ました。
試運転成功です。ただし、この数値は回路構成により、モータードライバー(Ach:左側)の電源電圧の数値となっています。
無事、電圧表示させる事が出来ました。
この数値の読み取り位置をどうするか?考えています。
DCC入力、モータードライバー(Ach/Bch)をソフトウエア切り替えとするか?物理的にSWで切り替えるか?何が正解だろうか?
ソフトウエアにすると、DIPパッケージ(28ピン)のATmega328Pではピン数が足りません。パッケージをQFP(32ピン)とすれば、空きピンが増えるので対応が出来そうです。