NFC Shield用ライブラリのソースコード(PN532_SPI)を読む(2)

2013-07-15   treby   技術メモ  , , , このエントリーをはてなブックマークに追加

体感時間として一瞬で半月すぎてしまっていたことにびっくりしつつ、一方まだ新年度入ってから半年も経っていないことに驚きつつ。濃いですね。濃いからこそあっという間にすぎる的な。

基底にあるArduino標準SPIライブラリ

まず前提として、このライブラリは内部でもArduinoの標準SPIライブラリを使っています。PN532.hの83行目のSPIClassなんかがそうで、PN532クラス自体、これを継承してるらしいことがPN532クラスのコンストラクタからも分かります(PN532.cppの29行目付近)(コロン1つは継承らしい)。

コンストラクタでは、_csというprivate変数の設定が行われています。_csはSPIのチップセレクトのことみたいですね。お約束、といったところでしょうか。

続きを読む

NFC Shield用ライブラリのソースコード(PN532_SPI)を読む(1)

2013-06-24   treby   技術メモ  , , このエントリーをはてなブックマークに追加

まあ長くもないし(ヘッダファイルで100行未満、実cppファイルで650行程度)、さっくり読めるでしょう、と高をくくったのが2週間前の話で。

実際にはPN532のユーザーマニュアルとか読まなくちゃ理解できないことに気づき、睡眠時間を削りつつ頑張ったここ数日。別にさぼってたわけじゃないです。一応。

かといってユーザーマニュアルを完全に読んだわけでもなく、まずはライブラリがどういうことをしているかを説明しようかと思います。全部いっぺんにやろうとしても大変ですから。実際の利用とか拡張とかはその後ですかね……。

続きを読む

NFC Shieldのwikiを読む

2013-06-07   treby   技術メモ  , , このエントリーをはてなブックマークに追加

2013年6月6日時点のseedstudioのwikiを読むだけ読むお!まあ、英語って読めないことないけど、いまいちやる気出ないですよね、ということで記事にしてみます。

昨年末にしれっとLibraryのバージョンが上がっていますし、押し入れに眠らせているArduino引っ張りだして少し本腰入れてやってみてもおもろいんじゃないですかね。知らないけど。

イントロダクション

ここは確認になりますが、NFC ShieldはArduino向けのシールド(拡張基板)です。R/WチップとしてNXPのPN532というやつがのっています。これまた気がつかないうちにNFC Shield V2.0とやらが出ていますがライブラリが共通なあたりアンテナが外付けになっていること以外違いはないみたい。

続きを読む

MIFARE Ultralight周りのNXP製品の整理

2012-06-12   treby   技術メモ  , このエントリーをはてなブックマークに追加

旧知の友より「最近は専門的な内容ばかりでポカーンとなる」との指摘を受けたばかりであるが今回も技術ネタです。申し訳ないっす……。たまには見た目に華やかな内容あるからそっち見てね!

てなわけでいわゆるNFCタグのお話をば。NFC Tagと一口に言っても考え方によって指す範囲が変わってくる。例えばNFC Forum Tagのことを言うならば、

  1. Topaz
  2. MIFARE Ultralight
  3. FeliCa Lite
  4. MIFARE DESFire(ISO/IEC 14443-4)

のいずれかがベースになっていて、かつNFC Forum Tagとして扱えるようフォーマットされているタグのことを指すし、NFC Tagの「NFC」がRF層的な意味を表すならばこれらに以下の製品らが加わってくる。

  • MIFARE Classic 1K / 4K
  • FeliCa Standard
  • 各種TypeV製品

もしくはいっそ上記のうち特定の製品を指してNFC Tagだなんて呼んでいるパターンだってあるかもしれない。正直、このあたりの整理は未だ私にもついていない。要勉強。ガリガリ。

ひとまずここでは、広義(すなわちRF層的な意味)でNFC Tagを定義しておく。

続きを読む

Androidアプリ「NFC TagInfo」でタグを読む

2012-05-10   treby   技術メモ  , , , このエントリーをはてなブックマークに追加

「NFC TagInfo」というNFC機能搭載Android端末向けアプリがある。このアプリ、端末から出ている搬送波に応答したNFCタグの情報を表示できるという優れものである。NFCタグリーダーはいくつかあるが、個人的にはこれが一番良い感じだと思う。

NFCタグ・カード

ところで、我が家にはそれなりの種類のNFCタグがある。いつの間にやらこんなに集まっていたなんて我ながらビックリだ。

NFC TagInfo画面 NFC TagInfo画面(読み取ったところ) NFC TagInfo画面(Tag information)

この記事では、手持ちのNFC/RFIDタグを「NFC TagInfo」を用いて情報表示させた結果を私の補足を含めて示す。各タグの結果は以下の書式をもって記録し、特記事項は別に示すこととする。

  1. RF technology(e.g. Type A(ISO/IEC 14443 Type A))
  2. Tag Type(e.g. MIFARE Classic 1K)
  3. ID Name & Length(e.g. UID (4bytes))
  4. Target technology classes(Android)
続きを読む