P2P中的NDEF(LLCP)

时间:2013-03-07 07:25:53

标签: nfc ndef nfc-p2p

我正在尝试了解我交换联系人的两部NFC手机之间的通信。

所以我得到的是:

B2 4D DD D5 07 03 13 20 00 10 02 00 00 00 D0 D2 0C C1 74 65 78 74 2F 78 2D 76 43 61 72 64 42 45 47 49 4E 3A 56 43 41 52 44 0D 0A 56 45 52 53 49 4F 4E 3A 32 2E 31 

B24D是SyncCode,DD是LEN,D5是CMD0,07是CMD1(它是DEP_RES),03是PFB。 没关系。

所以,现在我们拥有所有其他字节:

13 20 00 10 02 00 00 00 D0 D2 0C C1 74 65 78 74 2F 78 2D 76 43 61 72 64 42 45 47 49 4E 3A 56 43 41 52 44 0D 0A 56 45 52 53 49 4F 4E 3A 32 2E 31 

这些字节是LLCP I PDU。

13 20 00是DSAP(0x04),PTYPE(0x0C),SSAP(0x20)和序列(0x00)。

所以现在我们只有数据字节。

10 02 00 00 00 D0 D2 0C C1 74 65 78 74 2F 78 2D 76 43 61 72 64 42 45 47 49 4E 3A 56 43 41 52 44 0D 0A 56 45 52 53 49 4F 4E 3A 32 2E 31 0D 0A 4E 3A 3B 

我们可以很容易地理解NDEF从D2开始(D2是标志,0C是类型长度,......)

所以问题在这里,这些DATA的第一个字节是什么?

10 02 00 00 00 D0 

这就像初始化一样,我认为10是版本号,D0是长度。 但是这个初始化来自哪些文档?我在任何NFC论坛文档中都没有找到信息。

There is the comunication

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

好的,经过几个小时的谷歌,我在我的问题上找到了答案。

当通过LLC协议传输NDEF消息时,存在SNEP层。

所以SNEP标题是:Version - Put - Length(4字节)

就我而言,版本1.0(0x10),Put(0x02)和长度D0(0x00 0x00 0x00 0xD0)。