ISO15693协议的Inventory
ISO15693的Inventory指令看起来比较让人迷糊,想明白其流程,我认为以下几点是必须了解的:
第一、ISO15693标签的几种状态,资料上有,这里罗嗦重复一下:
1.PowerOff状态
2.就绪态
3.静默态
4.选中态
其中选中态是可选的,而前三种是必须支持的。
第二、卡片操作的几个概念:
1.寻址模式,所谓寻址模式,就是读卡设备每次操作卡片前必须带上该卡的UID(不要问我UID是什么,我会拍死你的)。 这就好比老师再给学生上课,老师喊起立,大家都站起来,如果老师喊某某某起立,那么其他人就不用站起来,只需要某某某站起来,读卡设备就像老师,而UID就像每个学生的学号。
第三、指令域
FLAG域 + Command域 + Parameter域 + Data域 + CRC校验域(这个一般不用软件处理,目前市场上的读卡设备其硬件都支持自动添加校验,用户只需要将初值配好即可)
防冲突的过程:
1.发送Inventory命令,这时FLAG域的Address_flag位应设置为0,选slot16模式。
2.没有接收到response时,发送EOF命令,切换到下一个slot。收到响应时,判断CRC校验位和冲突检测寄存器的值,同时出现CRC错误和冲突检测寄存器的值不为0时表示有冲突,如果冲突检测寄存器的值为0而CRC不为0可以断定为校验错误,去调调天线吧!
3.由于卡片回送UID时是LSB优先回送,所以冲突寄存器的值一定是冲突发生的位(从右向左数),冲突寄存器的值就是MaskLength的值,冲突的位,有两种配置方法,每种配置方法其实都殊路同归,如果将冲突的位配置为1,那么防冲突首先选出的卡号将是所有参与防冲突指令的卡片中卡号发最大的,反之则是最小的,无论哪种都不影响最终结果。MaskValue的值就是从有至左一直到冲突位截至的字节数,不足一个字节的全部补0.
4.重新发送Inventory命令,这次发送时需要将FLAG域的Address_flag置位1。即告诉VICC,与MaskValue值中由MaskLength确定的有效位相同的VICC回答,有冲突时继续。
5.没有冲突时发送EOF并切换到下一个slot。直至slot16.
ISO15693协议的Inventory的更多相关文章
- 射频识别技术漫谈(24)——ISO15693的防冲突与传输协议
遵守ISO15693协议的电子标签都有一个8字节共64bit的全球唯一序列号(UID),这个UID一方面可以使全球范围内的标签互相区别,更重要的是可以在多标签同时读写时用于防冲突.8字节UID按权重从 ...
- 射频识别技术漫谈(23)——ISO15693的载波、调制与编码
射频识别技术中的通讯大多是主从式,主动方一般是读写器,被动方称为“卡片”或“标签”.到底是叫“卡片”还是“标签”,好像也没有严格的区分.习惯上可以从以下4个方面界定:一是形状,卡片通常体积较大,更像“ ...
- iso15693芯片读写工具套件 icode-slix2读写 nfc type 5 tag读写
iso15693芯片读写工具套件 icode-slix2读写 nfc type 5 tag读写校验套件 iso15693工具套件支持icode-slix,icode-slix2芯片的读写,支持iso1 ...
- RFID Hacking③:使用ProxMark3嗅探银行闪付卡信息
0×00 前言 RFID是Radio Frequency Identification的缩写,术语为射频识别,俗称电子标签.按照工作频率的不同,RFID标签可以分为低频(LF).高频(HF).超高频( ...
- 记录使用微信小程序的NFC和蓝牙功能读取15693芯片的开发历程
开发目标: (1) 对于Android手机,直接通过微信小程序调用手机的NFC功能,对15693协议的芯片进行读写操作: (2)对于苹果手机(及没有NFC模块的手机),通过微信小程序的蓝牙功能连接到蓝 ...
- Proxmark3命令帮助
Proxmark3命令帮助 目录 [隐藏] 1 使用技巧 2 help 主帮助命令(基于r830以及以下版本) 3 hw 硬件检测相关命令 4 data 图形窗口/缓冲区数据操作等命令 5 ...
- RFID编码
信号编码系统包括信源编码和信道编码两大类,器作用是把要传输的信息尽可能的与传输信道相匹配,并提供对信息的某种保护以防止信息受到干扰.信源编码与信源译码的目的是提高信息传输的有效性以及完成模数转换等:信 ...
- NFC芯片选型及基本电路框架
RFID作为一项专业度较高的技术,在一些公司,可能还会专门招聘专业的RFID工程师.本篇阐述的涉及到的只是基本选型设计.电路框架,关于RFID天线调试.低功耗检卡调试等,后续再其他篇章会继续更新! N ...
- 6.Swift协议|扩展|访问权限|异常调试|类型转换|运算函数|ARC|类类型初试化器|值类型初始化器
1. 协议(Protocol):与OC之间唯一不同的是Swift中的协议不管是属性还时方法全部是必须实现的 /** protocol*/ protocol FullNamed { /** 计算属性申明 ...
随机推荐
- Java model 对象处理
public class BaseFlowBo { /** * 流量 */ private String flow; /** * Pv */ private String pv; /** * CTR ...
- 全文检索luncence
检索技术基本原理: 最主要的两点是 1.如何创建索引 2.如何查询. 分析需求: 好几篇文档,从这些文档找关键词,一种方式是顺序一个个遍历,加入这些文档量很多,就花费太长时间了,第二种是建立索引, ...
- C#实现文件数据库
本文转载:http://www.cnblogs.com/gaochundong/archive/2013/04/24/csharp_file_database.html#commentform 本文为 ...
- [PWA] 15. Using The IDB Cache And Display Entries
We want to use IDB to store the wittr messages. The logic is when the page start: service worker wil ...
- python 全栈开发之路 day1
python 全栈开发之路 day1 本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...
- Android中SQLite使用
现在的主流移动设备像Android.iPhone等都使用SQLite作为复杂数据的存储引擎,在我们为移动设备开发应用程序时,也许就要使用到SQLite来存储我们大量的数据,所以我们就需要掌握移动设备上 ...
- C#-高血压生活习惯数据模拟
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace test ...
- SQL 插入查询的最大ID 号 进行批量
INSERT INTO tbl_image_language ( code, docomo_cd, au_cd, softbank_cd ) SELECT DISTINCT((SELECT max(c ...
- RESTful Web Services简单介绍
近几年,RESTful Web Services渐渐开始流行,大量用于解决异构系统间的通信问题.很多网站和应用提供的API,都是基于RESTful风格的Web Services,比较著名的包括Twit ...
- Html5 Canvas Text
html5 canvas中支持对text文本进行渲染;直接的理解就是把text绘制在画布上,并像图形一样处理它(可以加shadow.gradient.pattern.color fill等等):既然它 ...