PC用キーボードにジョイスティック端子を取り付け、さらに連射機能を付ける

(2013.5.30)
使いにくい等の理由で要らないキーボードがゴロゴロしているので、そのうちの一つを改造して、キーボードはどれくらいの連射が可能なのか実験してみようと思いました。
ただ、キーが連射仕様になってしまうと不都合が多すぎるので、キーをジョイスティック&ボタンで乗っ取り(というより寄生?)、そのボタンに連射機能を付加することにします。
パソコンのキーボードやアーケード用麻雀のコントロールパネル等、ボタンの数が多い入力機器は配線数を減らすため「マトリックス配線」となっており、アタリ仕様のようなジョイスティックを直接繋ぐことは出来ません。(スイッチ1個(配線2本)ずつ、直接繋げば問題ありません。)
というわけで、キーのスイッチングに4066を使い、アタリ仕様やアーケードゲームのコントロールパネルを繋ぐことが出来るようにします。
まずはキーボードのチェック
今回改造するのはSunRace製コンパクトキーボードJME-8231。

打鍵感は悪くないのですが、数字キーの配列がかなりずれていて打ち間違いが頻発。

分解して

ICは1つだけ。
型番は U8448-AF006AP 0029T BPA7B1
ネットで検索すると U8448-AF006AP はたくさん出てきますが、有益な情報は無いようです。
どうやら自分で調べるしかなさそうです。
コネクタからチェックしていくと…
8x17のマトリックスが組まれているようです。

キーボードのキーそのものを連射仕様にするのはこの薄いシート上の配線をパターンカットしなければならないので現実的では無さそうです。

これを一つ一つチェックしていくと…
下のようなマトリックスになっていました。
Y1 Y2 Y3 Y4 Y5 Y6 Y7 Y8
X1 Win
X2 Caps W F1 X 2 S 変換
X3 Esc Tab Q 漢字 Z 1 A 無変換
X4 F4 F3 E F2 C 3 D カタカナ
X5 PB Ctrl 右Ctrl F5
X6 F11 Bs \ F9 Enter F10 ] F12
X7 Shift Fn 右Shift
X8 G T R 5 V 4 F B
X9 H Y U 6 M 7 J N
X10 F6 [ I ^ , 8 K
X11 : @ P - 0 ; /
X12 F7 O F8 . 9 L コンテキ
X13 Alt PrtSc
X14 PgUp PgDn
X15 Home
X16 Ins
X17 Space Del

とりあえず、74HC4066を使ってキーを乗っ取るには下の図のように配線します。
74HC4066で4キー分を乗っ取ることが出来ます。

これを元にアーケードゲームのコントロールパネルを当てはめてみると…

こんな感じになると思いますが、
今回はやめておきます…(^^;

(↓これがパターンカットしてキーボードそのものに連射機能を付ける回路)


今回の仕様としては、アタリ仕様(D-SUB 9pin)外付けボリューム式連射装置、連射ON-OFF切り替えスイッチという仕様で作ろうと思います。

これに


(用意した主要部品)

回路を取り付けて
(今の段階で抵抗、コンデンサ、コネクタへの配線は仮付け)

回路図では74HC4066になっていますが、今回は手持ち在庫の都合で4000シリーズの4066を使っています。
また、今回はコンパクトキーボードということで基板に乗せると厚みで内蔵できないので、基板に乗せずに配線しています。
さらに4049はミニフラットパッケージを使い小型化しています。(4049のうちの1つは左側の4066の上に乗っかっています。)

コネクタ、ボリューム、切り替えスイッチ(とりあえず1つだけ)を取り付け、


ほぼATARI規格準拠のTOWNSパッドを接続して実験します。


このソフトで
打鍵表示
上下左右ABボタンのチェックを済ませ、

それではいよいよ連射機能のチェック

計測にはこのソフトを利用することにします。
キー連射メーター

ボリュームをゆっくり回して追い込みます。

毎秒約20発。
まあ、十分な数字ではないでしょうか。

そして「」ボタンを押すと…

18発まで落ちました。

そして「」「」を同時に押すと…

15発ちょいまで落ちました。
これはおそらく1キーずつ転送するというPS/2の転送方式によるものだと思います。
6キー同時に転送する?というUSBキーボードでは違う結果になるのではと予想してますが…

それから「PS/2キーボード」だけではなく、「USBキーボード」でも「USBマウス」でも最小単位は約15.6msぐらいになるようです。
ということは…Windowsは約15.6msごとにデータを更新しているということでしょうか?
そうなると理論上の最大連射スピードは毎秒32発ぐらいになりそうです。

まだ完成はしてませんが、今回はこのへんで。

戻る