2013年01月11日

ジョイスティック端子のレベルシフト回路(3)

  ジョイスティックの5V化の回路が動かない件ですが、一応解決しました。


JOYSTICK_5V

  これが回路図例になります。

  74LS244、245 は、相当品で構いませんし、ピンアサインも適当に入れ替えてもらって構いません。
  3.3V−5V変換は、双方向以外はもっと簡単な回路で実現できるかと思いますが、とりあえず今の回路を生かしたままという事にしました。

  変更点は以下の通りです。

・1、2、3、4ピンの入力専用ピンは、5V-TTLの入力バッファを追加した。
・8ピンの出力専用ピンは、5V-TTLの出力バッファを追加した。
・6、7の入出力ピンは、双方向バッファを追加した。制御信号は、FPGAからの出力を使用する。




  不具合の原因は、一部のジョイスティックで、結構変な(?)回路になっている事でした。
  このため、8ピンの"L"出力が、それなりなドライブ能力が必要になっていたようです。
  また、逆にジョイスティック側のドライブ能力が足らないために、正常動作しないものもありました(XE-1 PRO)。



  一番素直な回路は、TONWS-PAD のような回路になります。

TOWNSPAD



  9ピンが GND として使って、各方向キー、ボタンは、その9ピンと結線しています。


  変な回路の典型的は、純正スティックのPC-6052 です。

PC-6052


  8ピンが "L" になっている事が前提で、各方向キー、ボタンをその8ピンと結線しています。
  このため、8ピンに"L" を出力しないと、各方向キー、ボタンのデータを受け取れません(ベタ"H"になる)。


  8ピンに"L"を出力しないと、入力が反映されないという仕様のような気がしますが、SEGA のジョイパッドに合わせたのかも知れません。



SC3000PAD

  古いですが、SC-3000(マスターシステム)のジョイパッドです。
  これは、9ピンの方のボタン入力を取ると、PC-6052 と同じです。



MEGA_PAD

  同じパターンで、後継機のメガドライブのパッドです。
  これは、7ピンが出力で、複数ボタンの選択のために使われています。



  電波新聞社のXE-1シリーズで、XE-1 ST、XE-1 ST2 は、SC-3000、メガドライブをサポートしているようです。

XE-1_ST

  これは、XE-1 ST の回路図です。
  8ピンは、SC-3000、メガドライブはGNDになっていて、他の機種は"L"出力しているはず、という回路になっています。



posted by えすび at 21:44| Comment(7) | FPGA化:ジョイスティックポート | このブログの読者になる | 更新情報をチェックする

2013年01月04日

ジョイスティック端子のレベルシフト回路(2)

  明けましておめでとうございます。今年もよろしくお願いします。


  新年の初っ端からアレなんですが、、以前組んだジョイスティックのレベルシフト回路ですが、どうも調子が悪い事があるようです。

  普通のジョイスティックが動かない事もあるようです。持っていないんですが、タッチパネルもダメかも知れません。


  原因は何となくわかっているんですが、対処方法などをどうしたものかと思っています。


  手持ちのジョイスティック(FM-TOWNS用のJOYパッド)は、素性がいいせいか、全く問題が起きなかったんですよねぇ。



posted by えすび at 12:19| Comment(0) | FPGA化:ジョイスティックポート | このブログの読者になる | 更新情報をチェックする

2012年11月20日

ジョイスティック端子のレベルシフト回路

 ジョイスティック端子のレベルシフト回路を組んでみました。

 こんな回路です。5V と3.3V を間違えやすいので注意して下さい。

ジョイスティック端子のレベル変換回路



 いろいろと調べましたが、↓を参考にしています。

 http://blogs.yahoo.co.jp/gomisai/24363625.html

 抵抗値が変わっているのは、何となくです(手持ちがなかったためですが)。


レベル変換実装

 1ポート当たりトランジスタが7個並ぶので、結構場所を取ります。
 抵抗は集合抵抗を使っています。

 また、場所を取っていた Dsub-9pin を、変換基板なしにしました。


 TI のレベルシフタのIC を試してみたんですが、なぜか発振する事があるので断念しました。


 これでやっとマウスが接続できます。

posted by えすび at 19:56| Comment(0) | FPGA化:ジョイスティックポート | このブログの読者になる | 更新情報をチェックする

2011年11月19日

ジョイスティックのレベルシフト

 ('13-12-13追記)

 下記の記事に書かれているレベルシフト回路は、一部誤りがあります。
 出来れば実際の回路で確認している方の回路を使って下さい。

_(追記)ジョイスティック回路(5V用)


 ('13-12-13追記 ここまで)





 DE0 に搭載されているFPGA は、5V の入出力が出来ません。

 そのため、ジョイスティックの入出力回路は、以下の方法を求められます。

・3.3V系で使用する
・5V系に変換して使用する


 普通のジョイスティックは、パッドの1〜4、6、7のピンをGNDに接続されたかどうかのスイッチがあるだけ

です。
 そのため、3.3V系で使用しても、全く問題ありません(そもそも3.3V自体も使っていません)。


 連射パッドなどは、パッド内部にICが搭載されています。搭載されているICにより、3.3Vで動作するものに関

しては、
 3.3V系で動かして問題ありません。


 それ以外のパッドや、外付け回路などに関しては、レベルシフトをして、5V系で動かす必要があります。


 レベルシフトの回路は、この辺りのHPを参考にしています。

 http://blogs.yahoo.co.jp/gomisai/25337527.html
 http://www.semicon.toshiba.co.jp/product/logic/faq/answer21.html


 !注意! 実践するなら、自己責任で行ってください(質問などはして頂いても構いませんが)。
      また、この書き込みの内容は、実際に確認していませんので、動作しない可能性があります。


・レベルシフト入力側(5V→3.3V)

 入力側の回路例です。

レベルシフト入力側


 上の方がが手抜きバージョン、下の方がちゃんとした(?)バージョンです。

 手抜きバージョンの方は、本来は抵抗分圧だけでいいんですが、オープンになった時に"H" になる必要がある

ため、結局バッファをつなぐ必要があります。

 下の方が回路が簡単なんですが、IC の入手性が問題になります。


 連射パッドなどは、入力側のみで問題ないかと思います。



・レベルシフト出力側(3.3V→5V)

 出力側なんですが、パッドの8ピンは出力固定(ただし、Hi-Z出力有り)、パッドの6、7ピンは双方向です。

 以下がPC-6001 のパッド周りの回路図です。回路図内の、IOA、IOB は、AY-3-8910 のI/O ポートです。


ジョイスティック周辺回路(修正版)

 ↑回路図の誤りを修正しました('13-12-10)

 双方向があるので、IC で変換して使うのが一番無難なようです。

 入力+出力側の回路例です。

レベルシフト入出力(修正版)

 ↑回路図の誤りを修正しました('13-12-20)



 実際に、今回のDE0 の入出力に付けたものの例が次のようになります。

レベルシフト回路1(修正版)

レベルシフト回路2(修正版)

 ↑回路図の誤りを修正しました('13-12-20)


 多分動くとは思うのですが、試してみたわけではないので、間違いがあるかも知れません。

 また、部品は、共立電子の通販でも入手可能かと思います。

 http://eleshop.jp/shop/default.aspx


posted by えすび at 17:34| Comment(18) | FPGA化:ジョイスティックポート | このブログの読者になる | 更新情報をチェックする