2020年7月24日の日記の2番目の記事へのコメント
■基板
ググると出てくる出どころ不明のアセンブリで記述されたNAOMIとかのセキュリティキーチップのコードをビルドして動かすことに挑戦してみました。ちょっと変なところを手直しする必要がありますが、直した結果、NAOMIでは PIC16C621A と PIC16F628Aの両方で動作することを確認。一方、Chihiroの方は、PIC16C621Aだと動くものの、PIC16F628Aでは起動せず。一体なぜ・・・。
ロジアナで取得したシーケンスを見比べてみると、PIC16F628Aのケースでは、PICがM/B側からの要求に応答していないように見えます。PIC自体が動き出していない感じです。うーん、ということはリセット回り? ソースコードを見ると MCLRE はオンにせよとあり、その通りコンフィギュレーションしているので、明示的にホストからリセットがかかるのを待って動き出すモードになっています。ロジアナで見ると、PICのリセットである4番ピンが一瞬Lowになっているんで、リセット自体はかかっているように見えるんですが・・・。
まあでも、もしかしたらこれが短すぎたりするのかも? というわけで、試しにMLCREをオフにすることで、外部からのリセット入力に関係なく電源オン時に自動でリセットがかかるようにしてやったところ、PIC16F628Aでもあっさり起動するようになりました。うおー、これだけでよかったのか・・・。そんなわけで、ChihiroでPIC16F628Aを使ってキーチップのクローンを作る際のコンフィギュレーションは 0x3F82が正解みたいです。いやー、面白いですね。
2020年7月24日の日記の2番目の記事へのコメント
[コメントを書く]