2011/03/05

[nfc][dep]私は考え違いをしていたように思う

私は・・・DEPについて考え違いをしていたのではなかろうか。

まず、PFBの件。
これは前回も書いたが、InDataExchange()の引数にする必要はないと思う。
PN533・・・もそうだが、きっとRC-S620/Sもそうだと思いたい。

ということは、だ。
PN533は、ISO-14443のDEPもサポートしている。
それもInDataExchange()で自動的にやってくれていることになる。
つまり、ISO-DEPとNFC-DEPを使い分けるのは、ホスト側が作るパケットというよりも、コントローラ側が現状を把握して使い分けているということになろう。

私も今、DEP_REQ/RESで通信できていると書いているが、実は既にNFC-DEPかISO-DEPで通信しているのではないか?ということである。


しかし、それがどうなのかを確認するのは難しい。
リファレンス機というか対抗機というか、相手がいないからわからないのだ。
せめて、PN533ではどこを見て使い分けているのかを調べておこう。

ドキュメントp.102に、PN533からターゲットに渡すパケットが書かれている。
ターゲットに応じてパケットの中身が変わってきている。
p.153をみると、ISO-DEPの場合はSEL_REQの戻り値で区別しているように見える。

しかししかし、Type-AはISO-DEPもNFC-DEPもどっちもいける。
だから、相手からの応答だけで判断できないはずだ。
どっちでやるかの意志をどこかで示しているはず。

私にわかるのは、ISO-DEPの場合はInListPassiveTargetから始まり、NFC-DEPの場合はInJumpForPSLから始まっているということ。
InJumpForPSLは、ほとんどInJumpForDEPと同じはず。
PSLだから、通信速度も変更するのかな?

それくらいしか、違いがわからない。


なので、今はいきなりInDataExchangeをしているから、NFC-DEPになっていると思う。。。

その認識でいいのかなぁ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。

注: コメントを投稿できるのは、このブログのメンバーだけです。