はじめに
FeliCa Lite-Sの検出ができたので、テストとしてデータの読み書きを行ってみたいと思います。
使用機器
PN5180 NFC RFセンサーモジュール
FeliCa Lite-S RC-S966
手順
FeliCa Lite-Sの動作確認のため、スクラッチパッド0にデータを書き込み、書き込んだデータを読み出してみたいと思います。
スクラッチパッド0に
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
のデータを書き込んで、書き込んだデータを読み出してみようと思います。
スクラッチパッド
ユーザーが自由に使用できる16バイトの領域
S_PAD0からS_PAD13までの14ブロックある
データの送受信を行うためには、カードの検出で取得したIDを使用します。
サービスコードは0x0009を使用します。
○Write Without Encryptionコマンド(FeliCa仕様)
0x09 0x00
0x20
0x08
0x01 0x2E 0x50 0xE7 0xDA 0xC7 0x8B 0x47
0x01
0x09 0x00
0x01
0x80 0x00
0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F
IDについて
0x01 0x2E 0x50 0xE7 0xDA 0xC7 0x8B 0x47は私の使用したFeliCa Lite-SのIDになります。
サービスコードリストについて
0x01
0x09 0x00
サービス数はFeliCa Lite-Sの仕様により1固定となります。
サービスコードは、0x0009(リード/ライトサクセス)をリトルエンディアンで指定します。
ブロックリストについて
0x01
0x80 0x00
今回は、スクラッチパッド0のみに書き込みを行うので、ブロックリスト数は1とします。
ブロック番号は1バイトで設定しています。
○Read Data(PN5180仕様)
0x0A 0x00
○Response(FeliCa仕様)
0x0C
0x09
0x01 0x2E 0x50 0xE7 0xDA 0xC7 0x8B 0x47
0x00 0x00
○Read Without Encryptionコマンド
0x09 0x00(FeliCa仕様)
0x10
0x06
0x01 0x2E 0x50 0xE7 0xDA 0xC7 0x8B 0x47
0x01
0x09 0x00
0x01
0x80 0x00
○Read Data(PN5180仕様)
0x0A 0x00
○Response(FeliCa仕様)
0x1D
0x07
0x01 0x2E 0x50 0xE7 0xDA 0xC7 0x8B 0x47
0x00 0x00
0x01
0x00 0x01 0x02 0x03 0x04 0x05 0x06 0x07 0x08 0x09 0x0A 0x0B 0x0C 0x0D 0x0E 0x0F
編集後記
データの読み書きができたので、次はセキュリティ対応を行ってみたいと思います。