FeliCa简介____带命令协议说明
原文地址::http://blog.csdn.net/icebutterfly214/article/details/19552807
相关文章
1、FeliCa说明资料----http://www.docin.com/p-548345549.html
近学习NFC,此文章仅作为自己知识的整理,学习。
Felica技术并不是一个完全公开的协议,尤其是该技术涉及安全认证和加密的部分,SONY的保密做的很好。本文介绍的也仅是其公开的部分信息。
Felica技术的通讯协议包括三层:物理层描述数据传输的物理和电气特性; 数据链路层描述数据传输和错误检测的格式;应用层描述命令的功能和规范.
Felica射频传输的物理特性如下表所示
Felica射频接口的物理特性
数据传输方法 |
半双工同步系统 |
载波频率 |
13.56MHz |
调制方法 |
ASK |
位编码方法 |
Manchester编码,MSB在前 |
数据传输速率 |
212/424 kbps |
Felica卡片和读写器之间的数据传输使用数据包。数据包的格式如下:
数据包各部分定义
名称 |
字节长度 |
定义 |
前导码 |
6 |
00 00 00 00 00 00 |
同步码 |
2 |
B2 4D |
数据长度 |
1 |
包数据长度+1 |
包数据 |
n |
命令包或返回包中的数据 |
CRC |
2 |
基于CRC-CCITT的校验, 初始值=0000H, 生成多项式:X16+X12+X5+1 |
Felica技术应用层的命令包由命令码和命令数据两部分组成,包括1字节的命令码和N字节的命令数据。命令码标识命令的类型,命令数据为本条命令执行所需的数据。读卡器命令发出后卡片回复一个响应包,响应包由1字节响应码和N字节响应数据两部分组成。响应码标识响应的类型,响应数据为本条命令执行后卡片返回的数据。
Felica命令列表如下:
命令 |
命令码 |
响应码 |
功能简述 |
轮询 |
00H |
01H |
探测识别卡片 |
请求服务 |
02H |
03H |
验证卡片上是否存在指定的域或服务 |
请求响应 |
04H |
05H |
验证射频场中是否有卡 |
不需认证读 |
06H |
07H |
从不需认证的服务中读取数据块 |
不需认证写 |
08H |
09H |
向不需认证的服务中写入数据块 |
请求系统码 |
0CH |
0DH |
读取卡片上已注册的系统码 |
认证1 |
10H |
11H |
读写器认证卡片 |
认证2 |
12H |
13H |
卡片认证读写器 |
读 |
14H |
15H |
从需认证的服务中读取数据块 |
写 |
16H |
17H |
向需认证的服务中写入数据块 |
Felica有两个重要的参数:出厂识别码(IDm)和出厂参数(PMm)。IDm和PMm可以使用轮询命令获得,IDm和PMm在出厂时固化在卡片中,卡片出厂后不能修改。
Felica使用出厂识别码(IDm)在通讯中识别一张卡片。Idm包含制造商代码和卡片识别码两部分。
出厂参数(PMm)包括2字节的芯片类型(用来识别产品)和6字节的最大响应时间参数(用来确定每一条命令的超时时间)。
Felica采用基于时隙的方法实现卡片的防冲突机制。为了识别一张卡片,读写器必须使用轮询命令轮询未知数量的卡片。卡片收到轮询命令后,以随机的方式选择一个时隙,并在读写器呼叫该时隙时予以应答,从而实现防冲突。
当读写器正确接收一个卡片对于轮询命令的应答,读写器可以获得卡片的Idm,在之后的通讯中,读写器通过在命令包中包含Idm,就可以从射频场的多张卡片中唯一的指定一张进行通讯。卡片收到命令后将把自己的Idm与命令包中的Idm比对,如果不同卡片不会对命令做出反应。这种机制实现了射频场中的卡片选择。
FeliCa简介____带命令协议说明相关推荐
- 【转载】dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)
更新时间:2014年05月11日 00:26:16 投稿:mdxy-dxy 这篇文章主要介绍了windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息的方法,需要的朋友可以 ...
- 转载《利用Windows系统自带命令手工搞定病毒》_原水_新浪博客
转载 360软件百科的文章,其实WINDOWS有很多的命令我们不熟悉,你认真看下就会发现其他的操作系统其实就是这样做的,只是我们没有想到WINDOWS也可以这样做. 利用Windows系统自带命令手工 ...
- 【网络通信 -- 直播】FFMPEG 简介与常用命令总结
[网络通信 -- 直播]FFMPEG 简介与常用命令总结 [1]FFMPEG 简介 FFmpeg,项目的名称来自 MPEG 视频编码标准,"FF"代表"Fast Forw ...
- (win和win server)dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)
如何在windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息?最直接的是:开始→运行→CMD打开命令提示符,在该窗口下输入systeminfo执行,即可看到几乎所有想知道的系 ...
- 如何在windows系统自带命令查看硬件信息
如何在windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息?最直接的是:开始→运行→CMD打开命令提示符,在该窗口下输入systeminfo执行,即可看到几乎所有想知道的系 ...
- 如何利用系统自带命令搞定手工杀毒
电脑用户最害怕的就是一些病毒,虽然我们的电脑上安装有各种的杀毒软件,但是也抵制不了病毒的恶性侵入,下面教你如何自己亲自动手来用系统自带的工具绞杀病毒,快来看看吧 自己亲自动手来用系统自带的工具绞杀病毒 ...
- 计算机的硬盘 内存在哪查到,dos下通过wmic命令查看硬盘和内存/CPU信息(windows自带命令查看硬件信息)...
怎么查硬盘里隐藏的内存 如何在windows系统自带命令查看硬件信息,怎样dos命令查看硬盘和内存/CPU信息?最直接的是:开始→运行→CMD打开命令提示符,在该窗口下输入systeminfo执行,即 ...
- 利用系统自带命令杀毒——手动杀毒
利用系统自带命令杀毒--手动杀毒 上网最恐怖的事莫过于新病毒出来的时候,尽管电脑上我们都装有各种强大的杀毒软件,也配置了定时自动更新病毒库,但病毒总是要先于病毒库的更新的,所以中招的每次都不会是少数, ...
- python编写请求参数带文件_转载:如何编写一个带命令行参数的Python文件
看到别人执行一个支持命令行参数的python文件,瞬间觉得高大上起来.牛逼起来,那么如何编写一个带命令行参数的python脚本呢?不用紧张,下面将简单易懂地让你学会如何让自己的python脚本,支持命 ...
- c语言学习进阶-C语言带命令行参数的文件数据批量计算
C语言带命令行参数的文件数据批量计算 (1)假设输入文件中的数据为多行整数,把数据文件命名为"InputData.txt",也可以命名为任意的文件名,尝试设计一个c 语言程序, 主 ...
最新文章
- 搭建turnserver
- JavaScript写XML
- 每日一题(开开森森学前端之变量与函数)
- A1035. 素数之和
- 树莓派cpu检测_【树莓派3B+测评】线程的挂起与恢复CPU温度检测
- C语言函数调用的原理
- java视窗_java-预览窗口(如Windows 7任务栏显示已打开的...
- 编写一个C程序,实现以下功能:动态申请长度为5的整数空间数组,用户输入5个整数;动态扩展数组空间为8,用户另外输入3个整数,最后输出扩展后的全部数组元素。
- const int *p说明不能修改_随时随地学习C语言之6—const修饰的变量真的不能修改吗?...
- 如何安装python3.7.2_Python3.7与Python2.7在centos7下兼容并存
- 在线圆周率查询下载工具
- 关于WPF中RichTextBox失去焦点后如何保持高亮显示所选择的内容
- python坐标轴拉伸_python-Matplotlib垂直拉伸histogram2d
- Redis进阶: 锁的使用
- python实时监控文件夹内文件数量变化_python 监控文件夹变化
- vue中的事件修饰符.self、.capture和.passive
- 渐行渐远的是熟悉的身影
- 用友U8 cloud释放新动能,加速城投行业数智化转型
- dxe 如何跟smm 沟通 SMM Communication Protocol
- 如何知道一台Linux服务器使用的是千兆网卡还是万兆网卡