DACユニットの検討(製作編12)

f:id:torusanada98:20200627214954j:plain

製作編12

arduino UNOと周辺回路接続用にバニラシールド基板に接続用回路を実装し、通電確認の準備を行います。

バニラシールド基板

バニラシールド基板とは、arduino用のユニバーサル基板で、マイコン基板のピンソケットに連結して搭載ができ、手軽にマイコン基板に周辺回路を追加する事ができます。

f:id:torusanada98:20200624073042j:plain

写真左がバニラシールド基板です。いろんな色のラインナップが用意されていますが、今回は無難に青を選択しました。写真右がマイコン基板接続用のピンヘッダのセットです。写真中央は、バニラシールドに搭載するI2C用のレベル変換モジュールです。

バニラシールド基板実装

最初に連結用のピンヘッダを取り付けます。取り付けるピンヘッダは10極が1個、8極が2個、6極が1個です。傾かないように注意してハンダ付けしました。

f:id:torusanada98:20200624073048j:plain

各ピンヘッダは最初に1ピンのみ仮止めして、仮止め部にハンダを当て直して傾きを矯正しいています。念のため、マイコン基板に接続してみました。

f:id:torusanada98:20200624073054j:plain

問題なく取り付けができました。次に実装する部品の配置を検討します。6極、5極、3極の端子台とレベル変換モジュール実装用の8ピンDIPソケットです。まだDACユニットシャーシ内の基板配置を検討していないので、ブレッドボード上で無理なく配線できる事のみを考えて端子台の配置を決定しました。

f:id:torusanada98:20200624073100j:plain

バニラシールド実装時に、マイコン基板に実装された部品の天面とのクリアランスが小さい箇所があるので、実装部品の配置検討時に考慮しました。最初にGND配線を行います。

f:id:torusanada98:20200624073106j:plain

比較的すっきり配線できました。続いて電源配線をします。5V系と3.3V系の2系統です。3.3V系の配線で1カ所被覆電線を使用しましたが、ここまでは比較的すっきり配線できました。

f:id:torusanada98:20200624073112j:plain

最後にI2Cのクロックとデータの配線を行います。できる限り被覆なしのジャンパ配線を心がけましたが、2本被覆線を使ってしまいました。

f:id:torusanada98:20200624073118j:plain

これで配線完了です。

バニラシールド通電用FW

配線完了したバニラシールドの通電確認ですが、マイコンボードに搭載して端子台とレベル変換モジュール実装用のソケットの各端子電圧の確認を行います。その為には、マイコン基板の各ポートの設定は最低限行わないと、最悪基板を壊してしまいます。少し横道にそれてしまいますが、バニラシールド通電確認用のFWを作成します。折角なのでLCDパネル動作確認もできるように準備したいとおもいます。処理のフローは以下のとおりです。

1)初期設定

 ライブラリの設定(I2C, LCDパネル用)

 キー入力用ポート設定

2)デモ用表示

 LCDパネル動作確認用の表示

まずは、購入したLCDパネル用のライブラリをダウンロードします。sparkfunのページからダウンロード可能です。ライブラリ以外にLCDパネルの各機能をつかったサンプルソースコードも準備されているため、C++素人の私にもなんとか使いこなす事ができます。尚、arduino及びその統合開発環境については「チャンネルデバイダーのVR制御(構想編3)2018-06-08」を参照ください。

f:id:torusanada98:20200624073955p:plain

f:id:torusanada98:20200624073137p:plain

LCDパネル動作確認用ファームウェアの概要は以下のとおりです。

・キー入力用のポートはプルアップ抵抗付きの入力ポート設定

・表示1行目は「Weekend Audio」

・表示2行目は「DAC-1」の後に0~999のカウントアップ

言語はC++ベースのarduino言語です。統合開発環境IDEarduinoのサポートページから無償でダウンロードできます。IDEはコードのedit、コンパイル、書き込み、デバッグができます。まずはコードを作成してコンパイルしてみました。

f:id:torusanada98:20200624073132p:plain

IDEの画面は、上部に機能ボタンがあり、中央がエディター画面、下がステータス表示画面です。コンパイルは上部左側のチェック表示のボタンを押します。コンパイルの進捗が棒グラフ表示され、完了すると生成されたバイナリの情報がステータス画面に表示されます。結果は以下のとおりです。

f:id:torusanada98:20200624073127p:plain

慣れないC++ですが、なんとかコンパイルまで成功しました。次回はバイナリをマイコンボードに転送して、バニラシールドの通電確認を行い、LCDパネルの動作確認を行います。

 

つづく(製作編13)