2018年9月15日から2018年9月11日までの日記を表示中
2018年 9月15日 (土)
■CPS2
PICでのキー書き込みが、ひとまず想定通り動くことがわかったので、Arduinoからそのまま持ってきた無駄な待ち時間などを削減して、書き込みを高速化してみるなど(これまでは安全側に振る&動作がわかる動画を撮るために、長めの待ち時間をそのまま入れてました)。また、合わせて、初期状態で入力ピンに変更したSETUP2信号用のピンを監視し、HIGHを検出したら(すなわちM/B側のリセットが解除されたら)、即出力に切り替えてLOWを出すように変更。問題なく動作したので、93646B-3のヴァンパイア用に2個目を作成。
無事動きました。気持ちがいいなぁw
次に、これまで一度も見たことがない93646B-5なサブボードがうちにあるかどうかを調べてみました。修理中で開いているやつはいいんですが、ネジ止めされているやつを1枚ずつ開けて調べるのは超大変なので、これらはスリットの隙間から懐中電灯で中を照らして型番を読み取りますw。で、結果、44枚中、1枚だけ発見することができました。これ。リース品だったロックマン2 パワーファイターズです。
というわけで、早速開けて中身を確認。
ぱっと見、93646B-6以降との違いはわからず。
ArcadeHackerさんの手順書には、93646B-5では、電源をCN9(JST NH 6ピン)の1番ピンからではなく、CN7から供給するように書かれています。つまり、CN9の1番ピンが、93646B-6以降と違うってことですね。
そこで、念のためプログラムROMをダンプして、通常版と中身が同じことを確認した上で、テスターを当ててCN9の1番ピンを中心に調べてみました。
結果、93646B-5では、CN9の1番ピンは、サブボードの+5Vではなく、+5Vと電池からダイオード経由でチャージされる電解コンデンサCCXの+に繋がっていることが判明。93646B-6以降では、+5Vに直結しているので、ここが大きな違いとなりますね。これだとサブボード単体時にCN9に電源を繋いでも、サブボード全体に給電されないため、キーが書けないと考えられます。ArcadeHackerさんの手順で、ここがNCなのに納得。
ていうか、これ、回路のバグっぽい気がするんですが、どうなんですかね・・・。ひょっとして、「このままだと電池切れのときのキーの書き直しが面倒だから、Rev.6作って修正しようぜー。あ、でも、ちょっと作っちゃったRev.5も勿体無いから、リース用に回しちゃえ。どうせリースは電池が切れる前に回収するし」なんて感じだったりするのかも? そしてそのせいで、93646B-5は非常にレアな存在に・・・。
で、妄想は置いておくとして、蘇生的な観点で考えると、M/Bに装着してPICで書く場合、CN9の1番ピンからPICの電源を取っちゃうと、PICのIOのHIGHの電圧が、サブボードの通常電圧よりもダイオードの電圧降下分落ちた電圧になって、PIC自体は動くけど、うまく書けないという結果になっちゃいそうな・・・。うーん、どうしよう。
ちなみに、サブボードの内訳は以下の通りでした。
バージョン | 枚数 |
---|---|
93646B-3 | 4 |
93646B-4 | 7 |
93646B-5 | 1 |
93646B-6 | 13 |
93646B-7 | 19 |
93646B-5だけがレアな感じなのがよくわかります。あ、あと、これに、M/B一体型の97691A-4のハイパーストIIが1枚ありますね。
ところで、93646B-5を調べていて気づいたんですが、サブボードによって、搭載されてるCCXの個数が違うのが興味深いところです。ひょっとして、これが少ないと、電池交換でミスりやすいとか、あったりするのかもしれません。まあ、今となってはどうでも良いことですがw
2018年 9月14日 (金)
■何もしていない
帰りが遅くて何もできず・・・(´・ω・`)
[コメントを書く]
2018年 9月13日 (木)
■CPS2
PICを単独で動かすと、SETUP2信号は、ちゃんと起動直後に一旦LOWからHIGHになることを確認。となると、基板側に何かある感じです。というわけで、基板側にテスター当てまくって調べてみました。結果、CN2 A29 もしくは CN9 5 は、こんな感じにマザーボード側の信号に繋がっている模様。
マザーボード側の該当箇所はこの辺。
M51953Bは、入力電圧が一定値に達して安定したら、出力をLOWからHIGHに上げるリセット制御ICらしいです。というわけで、これはいわゆる普通のリセット制御信号な模様。
M51953Bの出力がLOWの間は、74LS07の入力もLOWになります。74LS07はオープンコレクタ型のバッファなので、入力がLOWだと、R40のところから電流が流れ込んで、CN1 B28はLOWになり、一方、入力がHIGHだと、出力がハイインピーダンスになって、CN1 B28はHIGHになる感じかな。
で、ここのCN2 A29のところにPICの出力ピンを繋いでいて、PIC側では、起動直後、SETUP2信号の線に最初に一瞬だけLOWを出力して、その後HIGHにして、またしばらくしてからLOWにするような制御をしているんですが、この間、ロジックプローブで見る限り、出力がHIGHな状態が観測されない感じです。うーん、よくわからん。
ただ、まあ、M51953Bの出力がHIGHになるより前に、PICのSETUP2信号の出力がHIGHになってしまうと、大電流がPICから74LS07に流れてしまうような気も・・・。ま、まさか、そのせいで電源電圧が十分に上がらなくて、M59153BはLOWを出したままになってしまっていたとか? PICは低電圧でも動くから、そのうちSETUP2信号の出力がLOWになったところで、電圧が安定して、M59153BがHIGHを出すようになり、74LS07の出力ピンがハイインピーダンスになって、その後はPICのSETUP2信号でリセットが制御できるようになっていたとか?
うーん、それでよくチップがぶっ壊れなかったなという感じですが(特に熱くなったりもしなかったようだし・・・)、ひとまず、PICが起動直後、いきなりSETUP2にHIGHを出力してしまうのは大変まずそうな感じですね。というわけで、PICのSETUP2信号のピンは、初期状態では入力ピンとしておき、十分に時間を空けてから、出力ピンに切り替えてLOWを出す形に変更してみました。
ついでに、GNDを電池の跡地のマイナス極の接続先から取るようにして、サブボードに固定。さて、今度こそ・・・
きたー!ちゃんと白画面が出た後で、リセットがかかるようになりました。
と言うわけで、無事試作第1号完成です。ふぅー。
[コメントを書く]
2018年 9月12日 (水)
■飲み
飲み会でした。お疲れ様でした。帰宅後まったく何もできずw
[コメントを書く]
2018年 9月11日 (火)
■CPS2
部材や工具が届いたので、早速作ってみることに。
さくっとユニバーサル基板に部品を載せて配線し、サブボードに繋いで・・・
PICにTL866CSでHEXファイルを書き込んで・・・
いきなり実機でテストw
よし、動かん (´・ω・`)
とりあえず、PICが期待通り動いていないっぽいですね。SETUP1信号とSETUP2信号の両方がLOWのままで、さらにクロックも出ていない感じ。・・・って、GP3は出力にできないピンなのか!そりゃここにCLOCK信号を割り当てても動かないわけです。なるほど・・・。初心者感丸出しですね(汗)
というわけで、CLOCK信号をGP1に変更したら、無事にクロックが出るようになり、キーの書き込みにも成功しました。やったね。
ただ、キーを書き終えるまでリセットがかかりっぱなしみたいな状態になっているのが気になります。SETUP2が、起動直後にHIGHになっていないからなんでしょうけど、何だろうなぁ・・・。
[コメントを書く]
2018年9月15日から2018年9月11日までの日記を表示中
[コメントを書く]