鍵盤天国

鍵盤天国

PR

×

カレンダー

プロフィール

Nori@T'sLAB

Nori@T'sLAB

キーワードサーチ

▼キーワード検索

バックナンバー

October , 2026
September , 2026
August , 2026
July , 2026
June , 2026

お気に入りブログ

未だ暗い。 New! HABANDさん

福山で大学の同期会 りとみしゃんさん

「自叙伝」オーディ… ごろぞ〜太!さん

にゃじら的生活 pumoriさん
ぽんきち草 ぽんきちがぶりえるさん
July 3, 2015
XML
カテゴリ: 研究
1か月越しですが,PichBendPedalというオリジナルのMIDIデバイスの改変作業に取り掛かりました.
pedal_150704

前回検討した内容は以下の通りです.
1.少しの振動で誤認識してしまう事があるため,ADC読み込みに遊びを作る
2.上記を踏まえ,PitchBendChange値算出の演算方法を最適化
3.LED:パラメータ送信時のみ点灯⇒常時点灯,パラメータ送信時は点滅に変更
~余力があれば~
・MIDIチャンネル:スイッチ類の実装で変更できるようにする
・背面のステレオフォンポートをADCに接続してMIDIパラメータをアサインできるようにする

基本はプログラムの改変作業でしたが思いのほか現場での使い勝手が悪いと感じるので不都合箇所を再度洗い出しします.

・MIDIチャンネル:DIPスイッチは演奏中の変更が不能で勝手が悪く設定値を見るためにボディーを開かないといけない

以上を踏まえ案を考えたところ以下の通りに落ち着きました.
・7セグメントLEDの実装:MIDIチャンネル1~16chを1~Fの16進数でLEDへ表記
・フットスイッチの実装:オプションポートとしてデータエントリーのUp/Downを市販のフットスイッチで実行可能
・DIPスイッチの実装:オプション未接続時のMIDIチャンネルを設定しておくスイッチ
・基板実装変更:各種ケーブルをジョイント化し基板箇所にメンテナンス窓を新設

と言う事で,部品の買い付けを済ませました.
基板も回路もプログラムも見直さなければならないのでメカ・エレキ・ソフトと全て改変になります.
すこし大掛かりになってしまいましたが,学生時代の端子処理もしていないいい加減な回路なのでこれを期にリメイクです.

実装CPUは変更しないのでPIC16F84のままになります.
Iput:Pedal,AUX-IN1,AUX-IN2

計4つです.
※パイロットランプのLEDはCPU制御しない事にしました
I/Oポートは最大13ですので7segLED(8ポート)を直接I/Oポートにぶら下げると空きが1ポートになります.
4接点のDIP-SWで4bit(16値)も付けるわけですが,上記の方法ではポート数が足りません.
そこで,DIP-SWに関しては回路側で1ポート化する事にしました.
150703_pict01



AUX-INの接続判定は悩ましいところです.
AUX-INが未挿入時はDIP-SWの値が有効になりMIDIチャンネルをDIP-SWに委ねますがAUX-INが挿入されるとトグルで変更できるようになります.
これ自体は,該当I/Oが変動したら変更するでいいのですが電源挿入前からAUX-INがささっていている場合にDIP-SWの値がデフォルト値として呼び出されるがいいものかどうかと不安になりました.
仕様上問題はないのですが一応回路的に回避できるか考察してみます.

AUX-INの回路を描くと以下の図のようになるかと思います.
150703_pict02

内部回路の5Vを使ってプルアップする事で,未接続時もInputはHi固定され変な値が入る事はありません.
ただし,この状態ですと未接続時も接続時もスイッチがオープン(踏み込んでいない)時はHi判定されてしまいます.
故に,起動時にIF文等で『Hiならば』と記述する事は出来ない事になります.
フォン端子には挿入判別スイッチが付いたモデルもありますが,残念ながら判別するべくI/Oポートの空きがありません.
オーディオポートのL/monoスイッチの回路を例に,挿入判別スイッチにGNDをつないで未挿入時はI/OポートをLowにつるという方法もありますが,電流が発生する可能性がありあまり得策とは言えません.

故に,簡易に回避するのは不可能と判定して本仕様はDIP-SWの値をデフォルト値として扱う事にしました.
7segLEDをドライバIC等を用いたり回路とプログラムを工夫する事で節約する事は可能ですが,力技で実現性に至るまでが大変になるので現状のCPUで拡張するのは今回が最後になるのではないかと思います.

また,電池駆動化等も考えましたがやはり現状では電源が取れない状況で本器を用いるケースは考えられないのでやめておきました.

尚,プログラム面での追加項目としてフットスイッチでMIDIチャンネルを変更する際に現状のチャンネルへPitch=0値を与える記述を増やします.
これにより,間違えて踏んでしまった際にピッチベンドの数値が変な値で止まってしまうのを防げます.
本来はMIDIチャンネルを安易に変えられないように設定変更用ファンクションスイッチとの同時押し等の配慮が必要なのですが,I/Oポートが足らないのであきらめました.
ライブで使用する際,AUX-INのフットスイッチはサスティーンペダルと一緒に配置しない等の配慮が必要になりそうです.

PICマイコン応用ハンドブック 18ピンの小さなマイコンPIC16F84Aを中心とした珠玉の実例集!!

7月はバンドもStudioT'sLABの活動も落ち着くので,このタイミングに一気に製作できればと思います.
PitchBendPedalは入り口に過ぎないので短期間でどこまで追い込めるかがキモですね.

進展したらまた書きたいと思います.
Don't miss it!





お気に入りの記事を「いいね!」で応援しよう

最終更新日  July 5, 2015 01:50:37 PM
コメントを書く
[研究] カテゴリの最新記事


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Design a Mobile Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: