Why not login to Qiita and try out its useful features?

We'll deliver articles that match you.

You can read useful information later.

0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

NFCを使ってみる

Posted at

はじめに

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バイトで設定しています。

FeliCaLiteS-ページ2.drawio.png

○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

編集後記

データの読み書きができたので、次はセキュリティ対応を行ってみたいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?