8
SDK for NFC Starter Kit を使う その2 とりあえず使う

SDK for NFC Starter Kit(2) 使ってみる

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: SDK for NFC Starter Kit(2) 使ってみる

SDK for NFC Starter Kitを使う

その2 とりあえず使う

Page 2: SDK for NFC Starter Kit(2) 使ってみる

「とりあえず使う」とは?

● SDK for NFC Starter Kit(以下、 S4NSK)はインストールできた

● さて、何をしたらいいんだ?

● ドキュメントを読むのは大変そうだし・・・

● と思ったので、付属サンプルの C#ラッパを使って、とりあえず動かせるライブラリを作りました

https://github.com/hirokuma/NfcStarterKitWrap/zipball/master

Page 3: SDK for NFC Starter Kit(2) 使ってみる

とりあえず使う前に

● 私のライブラリなので、できが悪いです!– 改造の余地を残すことで、もっと NFCに

興味を持ってもらえるよう・・・● (うそです。技がないだけです。 )

● S4NSK付属サンプルの C#ラッパをさらにラップしてるので、付属サンプルの扱いがどうなってるかは調べてないです。

Page 4: SDK for NFC Starter Kit(2) 使ってみる

では、 C#でやってみましょう

● MIFARE Ultralight用サンプルを使います– UltralightReadWrite.sln

● しばらく前まで「 SIN 」だと思ってました– Sonyさんのライブラリまでのソースファイルはあ

ります。

この中に、 Sony さんのC#サンプルと追加したソースファイルが入ってる

Page 5: SDK for NFC Starter Kit(2) 使ってみる

画面と処理の関係

● Pageを選択して Readするか、Pageを選択してデータを入力してWriteするか。

● UIDと SAKは、 ReadやWriteするたびに取得しなおすようにしている。

– そうする必要があったりなかったり

Page 6: SDK for NFC Starter Kit(2) 使ってみる

UltraLightを読む ! 書く !

● と思いましたが、退屈になるのでやめますNfcStarterKitWrap.support mFNS = new NfcStarterKitWrap.support();NfcStarterKitWrap.MifareUltralight mLight = null;mLight = new NfcStarterKitWrap.MifareUltralight(mFNS);bool ret = mFNS.pollingA(); //ポーリングif(!ret) {

MessageBox.Show("Polling fail"); //見つからんかったreturn;

}// ここまでやれば、 NFCIDは取得できているtextBoxUID.Text = BitConverter.ToString(mFNS.NfcId);textBoxSAK.Text = mFNS.RD[NfcStarterKitWrap.support.RD_SELRES].ToString("x2");

byte block = (byte)comboBoxReadBlock.SelectedIndex;byte[] rbuf = null;ret = mLight.Read(ref rbuf, block);if(!ret) {

MessageBox.Show("Read fail");return;

}textBoxReadValue.Text = BitConverter.ToString(rbuf);mFNS.unpoll();

Page 7: SDK for NFC Starter Kit(2) 使ってみる

FeliCa Liteの場合

● FeliCa Liteだとこんな感じNfcStarterKitWrap.support mFNS = new NfcStarterKitWrap.support();NfcStarterKitWrap.FelicaLite mLite = null;mLite = new NfcStarterKitWrap.FelicaLite(mFNS);bool ret = mFNS.pollingF(); //ポーリングif(!ret) {

MessageBox.Show("Polling fail"); //見つからんかったreturn;

}// ここまでやれば、 NFCIDは取得できているtextBoxIDm.Text = BitConverter.ToString(mFNS.NfcId);textBoxSc.Text = mLite.SystemCode.ToString("x4");

byte block = (byte)comboBoxReadBlock.SelectedIndex;byte[] rbuf = null;ret = mLite.Read(ref rbuf, block);if(!ret) {

MessageBox.Show("Read fail");return;

}textBoxReadValue.Text = BitConverter.ToString(rbuf);mFNS.unpoll();

Page 8: SDK for NFC Starter Kit(2) 使ってみる

「読む・書く」はドライバ

● NFCカードの読み書きにはいろいろある– あるけど、方法はどうでもいいと思う

– 読み書きできればよかろう、なのだ● 「フグは (手順通りに捌けば )食べられる」

– 捌き方よりも、捌いた後だろう