あし
フットコントローラー



RS232C接続(9pinのシリアルポート)で使うフットコントローラーです。
小型のキーボードぐらいのサイズです。

足でキーボードの操作ができます。
ボタンを踏んでいるときはSHIFTを押しっぱなし、離せばSHIFTも離す
ボタンを踏んだら「My name is Kondo Masayuki」とタイプする など
キーボード操作に関する様々な処理を割り当てることができます。

プログラマや、マウス操作でたまにキーボードを使いたい人などに
便利だと思います。

慣れると便利です。
慣れないと踏み間違えます。

一番左のボタンは切り替えスイッチになっています。
A/Bという文字の上にLEDが二つついていて
A/B/Cモードを持っています。
Aモードは左のみ点灯、Bモードは右のみ
Cモードは両方とも”消灯”です。
両方点灯だと電力不足になる場合があったので、
わかりにくいですが両方ともOFFでCモードです。

A/Bボタンを押すごとにモードがトグルします。




当然、この製品のガワ(外側だけのことを言うらしいです)
は既成品です。オークションで壊れているのを500円で買いました。
この製品に愛着がある人、ごめんなさい。

パッと見、改造されていることはわかりません。
違うのは、MIDI OUTと書いてあるのにシリアル端子があることぐらいです。
電源はシリアル端子からとっているので
元からある、アダプタ端子や、電池ボックス、電源スイッチは
使いません。
COMポートを開いたら電源が入るようになっています。
シリアルが上下反対っぽいのはただ組みやすかったからです。
ちょっと穴を広げただけで、加工も少しで済みました。
硬いんでルーターとかないとつらいかも。


このハードがシリアルに吐くデータは
一番左のA/Bボタンの操作でAmodeのときは

1を踏んだときにA
1を放したときにa

2を踏んだときにB
2を放したときにb





5を踏んだときにE
5を放したときにeを

出力します

BモードのときはA→Fのように
Aモードから5つズレたアルファベットが出力されます。





↑のソフトのダウンロード (04/10/01up)

レジストリを使用しています!!
HKEY_CURRENT_USER\Software\VB and VBA Program Settings\fot_controler のみです。
それ以外に一切のファイル生成などは行いません。
EXE単体で動作します。

縦がモード、横がボタンで押されたボタンとモードに一致する処理が行われます。
上段がボタンを押したときの処理(Keydown)、下段がボタンを離したときの処理(Keyup)です。

文字の先頭にマイナスをつけると、それに続く1文字をKeyupします。
1文字以上の場合は () で囲みます。Cモード1を参照。

CTRL+S という処理をしたければ ^S と書きます。
多くの場合に問題はありませんが、いちおう^Sのupイベントも送ります。Cモード1を参照。

単純に文字列を送るのならそれを書くだけで済みます。Cモード3を参照。

Cモード5のように書くと、SHIFTボタンが押しっぱなし状態に入ります。
キーボードでSHIFTを押して離すか、Cモード4のような処理をするまでは
解除されません。

カーソルの右は {RIGHT}
エンターは {ENTER}
日本語入力は {IME}

その他、いろいろ用意しています。F1やDEL、PAGEUP、BACKSPACEなども。
類推して下さい・・・ たいてい当たります。
外れてたらエラーがでます。

標準だとCOM1ポートを利用しますが、それ以外で利用したい場合は
実行時の引数にCOMポートの番号を渡してください。

fotcontroler.exe 2  ←COM2ポートの場合
ショートカットを作成してリンク先の部分を書き換えるのが楽です。

おまけ的な機能ですが、
{Execute,c:\windows\regedit.exe} ←レジストリエディタを起動

{SendMessage,RCManager2, 13313, 1376270, 1}{SendMessage,RCManager2, 7994, 6917, 65697}
↑Creative MediaSource&Augidy2を使っている場合に次トラック選曲

などもできます。
Augidy2を使っている方でしたら、
音量up、down、次選曲、前選曲などの数値を知っていますのでメールにて。
この場では省きます。

タイプ間隔というのは例では15/1000秒に1回に1つのボタンを順番押すという意味です。
Cモードで3をおせばMy name is が15msごとに、スペースも文字に入るので150msかけて送信します。


Vectorなどに掲載するつもりで作っていませんので
エラー処理を中心とした手抜きがあります。
ご容赦願います。


マイコンに書き込むHEXファイルはこちら(04/10/01up)

チャタリング対策は普通にサンプリング方式でやってます。
CRフィルタとかをつければいいのですが、最小の部品でやりたかったの
非インテリジェント系ではなくプログラムで対策をしています。
単純にシリアルに吐くしか機能がないので、割り込みは一切使っていません。







回路図です。
岡田 仁史さん製作のフリーソフトBSchを使用しています。
今回はパスコンも書いてみました。
電源はシリアルケーブルから取ります。


使っている部品は

PIC 16F648A ×1 280円
RS232CインターフェースIC ADM3202AN ×1 200円
(MAX232互換品ならOK)

あとは
抵抗 330Ω×2
レギュレーター、コンデンサなど細かい部品のみです。
PICマイコンの内臓プルアップを利用しているので
スイッチ周りの抵抗は省けます。
グランドはガワについていた基盤を使っているので
配線はスイッチに一本飛ぶだけで済みます。

オークションで買った500円のガワなので
総計で1000円ちょいです。

でも一番高かったのは送料と振込み代・・・

16F648A以外にも16F628Aなどでも使えるハズです。
16F648Aと同じように4MHzの内部発振とUSARTが使えれば
使えます。16F84AはUSARTがないので
同じプログラムでは使えません。

製作時間は一晩でした。
便利ですよ。


以前まではA,Bモードの2種類でしたがCモードを追加。
それと同時にアプリのほうもVerUpしました。
PICが吐く文字列は以前のA,Bモードと、今回のA,Bモードで同じなので
以前のソフトでも同様に動作します。

くさ

もどる?


いちおうですが注意事項:製作などは自己責任でおこなってください。
このページに記載されている情報をもとに製作された結果、
何らかの事故により損害をうけたとしても、"やまもっち”は一切関知しません。