最近、NFCの基礎勉強をしていないので、Interface 2012年4月号を読んでいる。
今朝はなんとなく、8章を読んでいた。
「FeliCaリーダを使った電子マネー表示システムの制作」というものだ。
RX62NというRenesasのチップを搭載した付属ボードが昨年の付録にあったのだが、それにRC-S620/Sを載せて動かすという企画である。
最初に書いておくが、通信もののデータはビッグエンディアンが多い。
NBO(Network Byte Order)という書き方をしている場合もあるが、ビットの並びもバイトの並びもビッグエンディアンになっているものが多いように思う。
NFCもだいたいそうなのだが、FeliCaパケットの中にはときどきリトルエンディアンを含んだものがある(ブロックリストくらいか?)。
8章ではいくつかパケットの説明が書かれているのだが、システムコードはビッグエンディアンなので注意してほしい。
共通領域のシステムコードは0xfe00だし、サイバネは0x0003だ。
システムコードは、ISO/IEC 18092にはブロードキャスト(FFFF)しかないのでわからないけど・・・そういうものなのだ。
出所の資料くらいすぐ見つかるだろうと読んでいたのだが、なかなか出てこないのでびっくりした。
NFC ForumのType 3 Tagドキュメントに「リトルエンディアン」と出てくるのが、一番はっきりした記載のように思う。
そういう些末なことよりも、InCommunicateThruがさらっと出てきているところに驚きがあった。
CommunicateThruEXでよさそうなところに、あえてInCommunicateThruを持ってくるとは。
渋いな。
これがOKなら、InDataExchangeもいいかもな(なにが?)。