製作編30
前回リモコン機能を追加しましたが、まだアサインされていないリモコンキーが沢山あるので、さらに機能追加します。
リモコンキー追加アサイン
実装を進めているリモコン本体は以下のものです。
現状アサイン済みのキーは6個のみです。使い勝手が向上する追加キーのアサインを考えてみました。実使用時の減衰量はおおよそ-10dB~-20dBの間です。この減衰量にダイレクトに設定するために、数字キーを-10~-19dBに割り付けてみます。具体的には押したキーの数字の十の位に1を加えます。例えばキ「3」は、-13dBとなります。ベースソースdemo27に上記キー処理を加えてdemo28を作成しました。実行画面は以下のとおりです。
わりとすんなり実装ができました。これでますます使い勝手が良くなりそうです。
ダイレクトアクセス時表示
今までは、1step or 2stepの減衰量移動しかなかったのであまり気になりませんでしたが、ダイレクトアクセスの場合、表示に違和感が出てきました。現状は、数字キーを押すとモーター制御中をしめす「>>」が表示され、制御完了すると減衰量の値が更新されて「>>」表示が消えます。これを、数字キーを押した時点で減衰量表示を更新し、同時に「>>」表示を行う事で、いまから更新された減衰量に調整する事が直感的にわかる様になります。この処理をdemo29に実装しました。写真は最大減衰(-34dB)時にVOL+を押した時の修正前後の表示遷移の写真です。
中段の表示はキーを押した直後で、下段がモーター制御終了時の表示です。修正後の方が動作に近い表示となっています。
ソースの整理
必要な機能の実装が終わったのでソースの整理をします。具体的には下記の対応を行いました。
1)不要なコメントの削除
2)テスト用のシリアルモニタ出力コードの削除
3)同じコードの繰り返しを関数化
4)FW Verを0.90から0.91に変更
具体的に3項は、減衰量の表示処理が3カ所で行われていましたので関数化dispdb()しました。
デモ表示切り替え
紙面が余ったので、文字でしか説明できていなかったデモ表示から通常表示への切り替えについて追加で説明します。デモ表示のフェードアウトができなかったので、左へスクロールアウトさせています。具体的には以下の写真のとおりです。
左上から左下へ遷移し、次に中上から下へ、最後に右上から下に遷移します。表示サイズの都合上、完全にスクロールアウトするまで写真が掲載できていません。一旦完全にブラックアウトしてから通常画面表示に移ります。
起動時は-34dBでミュートオン状態なので「-34dB」表示が500ms間隔で点滅します。
ソフトのまとめ
ソースの概要をまとめます。
ソース行数:840行
使用メモリ:11.5kbyte(36%)
使用RAM:835byte(グローバル変数:40%使用)
今回の製作では、天板だけ取り外す事で、arduinoのUSB端子に接続できるようにするつもりです。使用開始後に思いついた事があれば気軽にソフト変更したいと考えています。次回は電源の設計を行います。
つづく(製作編31)