以前につくったプレーステーション専用赤外線リモコンパッドの本体とのインターフェ
イス部分をロジックICで構成していたのを、Xilinx(ザイリンクス)社のCP
LDのX9572で作り直したものです。
PLDの開発ソフトがインターネットで無料で手に入る上、チップが最近共立エレ
ショップで安く手にいるようになったので、試しに作成しました。
同時に、疑似信号の発生機をバージョンUPを行いLCDを追加して、パッドからのデ
ータをHex表示するようにしました。これは、私自信プレーステーションを持ってい
ないためで、動作確認はシュミレータでのチェックしか行っていません。
このシュミレータで、PSの純正パッドの動作確認は出来ていましたから、たぶん今回
作ったリモコンパッドもPS本体につないでも大丈夫だと思います。
ただし、PS2では動作しないと思います、以前のもそうでしたがPS2ではPSとち
がって、Keyデータ以外のデータをやりとりしているようでPS2のパッドもシュミ
レータでパッドのデータをPSのパッドと同様に見ることが出来るのですが。PSで動
作しても、PS2ではうまく動作しません。
開発は、VHDLで行いました、下記がソースファイルの中のSDOのコマンドをリー
ドする、シフトレジスタの部分です。たった10行書いただけでシフトレジスタが出来
ます。
---------------------------------------------------------
-- コマンドリード
---------------------------------------------------------
process (SCK,SDO,CCS) begin
if(CCS = '1') then
TQ_OUT(7 downto 0) <= "00000000";
else
if(SCK' event and SCK = '1') then
TQ_OUT(7 downto 1) <= TQ_OUT(6 downto 0);
TQ_OUT( 0 ) <= SDO;
end if;
end if;
end process;
XC9572で作成していますが、内部の使用率が30%程度ですからXC9536で
十分作成可能です。
それから、ピンの配列はソースファイルに書いていませんから、開発ツールで指定して
ください。
コントローラーのPIC16F877のプログラムは以前のと違いますが、基本的にほ
とんど変えていませんから、対応しているリモコンはソニーのビデオの1品種だけです。
プログラムは多品種のリモコンに対応可能にしてありますが、現在のプログラムは動作
しません、ポートAにつないで有る5個のSWは必ず全てOFFにしておいてください、
さもないとPIC16F877が暴走状態になります。
回路図
シュミレータは、本体と合わしてインターフェイス部は3.3Vにしてあります、LE
Dは、エラー表示で無接続や、データバイト数が合わない場合点灯します。データ数は
8Bytまでにしてあります、アナログパッドがデータが8Bytなのとそれ以上のも
のが無いようなのでそうしています。TRIGをオシロスコープの同期入力に接続し、
ACKとCDATをオシロスコープでパッドのデータの資料と比べて確認を行ってくだ
さい。
今回使用したXC9572は5Vのものですが、3.3Vでどうにか動いていました、
本来は3.3Vのデバイスを使用すべきですから注意してください。
最後に
疑問点等があればメールをください。出来る限りお答えするようにします。
このプログラムは、フリーウェアーなので、自由に配布可能です。
使用者自身の責任でご使用下さい。
「このソフトによってどのような損害が出ても私は責任を負いかねます。」
* プレステ専用赤外線リモコンパッド2ソースファイル*−−ps_pad02.lzh ( 約38kByt )
ファイル内容
pspad01c.asm ----> PIC16F877リモコンパッドソースファイル
pspad01c.hex ----> 上記書き込み用Hexファイル
ps_sml3.asm -----> PIC16F84Aシュミレータソースファイル
ps_sml3.hex -----> 上記書き込み用Hexファイル
pspad01.vhd -----> XC9572用ソースファイル
ps_rmc2.gif -----> リモコンパッド回路図
ps_sml2.gif -----> シュミレータ回路図
readme.txt ------> このページのテキスト版
戻る