通讯协议是通讯的双方或多方在交流时遵守的规矩,包括谁先发起通讯,先交流什么,后交流什么,一方如何问,另一方如何答等。在这里通迅的双方指的是读写器和卡片。

首先是谁先发起通讯,很显然有两种,读写器先发言和卡片先发言。前一种叫Reader Talk First,简称为RTF;后一种叫Tag Talk First,简称为TTF。

我们知道,卡片从读写器产生的射频场获得工作时需要的能量,一般认为应该是读写器主动,卡片被动才对,这也是人之常情。所以多数功能稍复杂的卡片都是采用RTF模式,即读写器问,卡片回答。读写器没有命令,卡片是无论如何也不能主动说话的。但是有些卡片功能单一,每次与读写器的交流中只会回答一个问题,而且每次内容都相同。对于这种卡片,似乎再让读写器每次先提问已经没有什么意义了,还不如每次与读写器交流直接让卡片先说它那永远不会变的一句话得了,于是就有了TTF模式。TTF模式的卡片一般都是我们常说的ID卡,即识别卡,ID卡每次说的相同的一句话都是一个识别号,读写器利用这个识别号确定持卡者的身份。

其次是交流的秩序。对TTF卡片当然没什么秩序可言了,一进入射频场卡片就自说自话。但对RTF的卡片一般有严格的顺序,如下图所示:

第一步是读写器呼叫卡,如果射频场中有读写器支持的卡片,卡片将回送一个应答,告诉读写器自己是什么类型的卡片。

然后读写发出命令选中卡片,如果射频场中有多张卡片,通常还要进行防冲突循环以便决出唯一张卡片进行操作。

第三步是进行认证,一方面读写器要认证卡片是合法的,另一方卡片也要认证读写器是合法的。

如果认证顺利通过,就可以进行正常的读写数据操作了。

这些步骤并不都是必须的,有些简单的卡片,要求操作前用户把卡片放到读写器上,读写器直接对其进行读写操作,前面的3步都省了;有些卡片没有密码,当然不需要相互认证;有些卡片不支持防冲突,同时有多张卡片时将无法操作;还有些卡片将呼叫和防冲突用一个步骤代替。所以对于具体的卡片,要仔细阅读其说明书,进行具体的分析。

还有一类卡片既可以工作在TTF模式,又可以工作在RTF模式。两种模式之间的切换一般有两种方式:一种是卡片刚进入射频场上电复位后会等待一个固定时间,在这段时间内如果有读写器的命令,则工作在RTF模式,如果没有收到命令则进入TTF模式。另一种是卡片上电后主动在RTF与TTF之间不停的切换,在TTF模式下发送完一个识别号后,立即进入RTF模式等待读写器的命令,如果有命令则执行命令,没有命令则退出RTF模式返回TTF模式继续发送识别号,之后进行下一次的切换。

最后还有一个全双工(Full Duplex,FDX)和半双工(Half Duplex,HDX)的概念。在有线通讯中,我们知道全双工就是通讯双方可以同时双向通讯,半双工就是虽能双向通讯,但某一时刻只能有一个方向通讯。一般来说当然是全双工好,如果技术上能实现全双工,当然最好不用半双工;成本上全双工贵,半双工便宜。但在射频识别技术中FDX和HDX并不是这个意思。在ISO11785中对FDX和HDX的定义如下:
FDX:标签和读写器在读写器产生的磁场没有消失的情况下进行通讯。
HDX:标签和读写器在读写器产生的磁场停止之后进行通讯。
RFID技术中FDX的例子如Mifare系列卡片,HDX的例子如TI公司的134.2KHz标签,如RI-TRP-WR2B。目前的射频卡FDX比较多,因为射频卡无源,需要从读写器的射频场取电,射频场不消失,卡片可以源源不断的取电,对卡片内部的储能电路要求不高。缺点是卡片回送数据时因为自己不能产生射频场,只能被动发送,所以一般采取负载调制的方法回送数据。HDX在读写器的射频场停止后回送数据,读写器对卡片数据的识别解调容易。缺点是对卡片的储能电路要求较高,而且回送数据量有限。成本上HDX也未必比FDX便宜。文本来自新浪网

射频识别技术漫谈(6)——通讯协议概述【worldsing笔记】的更多相关文章

  1. 射频识别技术漫谈(2)——国际标准【worldsing 笔记】

    如果你只是智能卡的用户,通常可以不必关注国际标准,但作为智能卡的专业开发人员,则至少也要对相关标准有所了解.国际标准一般都是西方人制定的,原版都是英文的,而所谓中文版往往是对原版的直译,许多情况下并未 ...

  2. 射频识别技术漫谈(8)——动物标签【worldsing笔记】

    动物标签也是工作在TTF模式的ID(Identification)卡.之所以通常称为动物标签,估计是因为一来和识别人的ID卡相区分,二是因为动物不如人听话,人的ID卡可以做成卡片形状拿在手上,而动物不 ...

  3. 射频识别技术漫谈(7)——ID卡【worldsing笔记】

    ID(Identification)是识别的意思,ID卡就是识别卡.ID卡包含范围广泛,只要具有识别功能的卡片都可以叫ID卡,例如条码卡,磁卡都可以是ID卡,我们这儿说的当然是射频识别卡. 射频ID卡 ...

  4. 射频识别技术漫谈(5)——防冲突【worldsing 笔记】

    正常情况下读写器某一时刻只能对磁场中的一张射频卡进行读写操作.但是当多张卡片同时进入读写器的射频场时,读写器怎么办呢?读写器需要选出唯一的一张卡片进行读写操作,这就是防冲突. 防冲突机制是非接触式智能 ...

  5. 射频识别技术漫谈(27)——CPU卡概述

    智能卡按安全级别可以分为三类:存储器卡.逻辑加密卡和CPU卡,其中CPU卡是安全级别最高的.从“CPU”这个名字可以看出,CPU卡最大的特点就是卡片里面有一个"CPU",有了CPU ...

  6. 射频识别技术漫谈(10)——识别号的格式变化【worldsing笔记】

    从事RDID行业的朋友经常会遇到这样的情况,同一张ID卡,在不同厂家生产的读卡器上读出的识别号完全不一样,有时甚至差之千里.ID卡的识别号一般是在出厂时被固化在卡片的ROM里,本身是不会改变的,问题出 ...

  7. 射频识别技术漫谈(23)——ISO15693的载波、调制与编码

    射频识别技术中的通讯大多是主从式,主动方一般是读写器,被动方称为“卡片”或“标签”.到底是叫“卡片”还是“标签”,好像也没有严格的区分.习惯上可以从以下4个方面界定:一是形状,卡片通常体积较大,更像“ ...

  8. JAVA之旅(三十二)——JAVA网络请求,IP地址,TCP/UDP通讯协议概述,Socket,UDP传输,多线程UDP聊天应用

    JAVA之旅(三十二)--JAVA网络请求,IP地址,TCP/UDP通讯协议概述,Socket,UDP传输,多线程UDP聊天应用 GUI写到一半电脑系统挂了,也就算了,最多GUI还有一个提示框和实例, ...

  9. 搞懂分布式技术4:ZAB协议概述与选主流程详解

    搞懂分布式技术4:ZAB协议概述与选主流程详解 ZAB协议 ZAB(Zookeeper Atomic Broadcast)协议是专门为zookeeper实现分布式协调功能而设计.zookeeper主要 ...

随机推荐

  1. SPRING IN ACTION 第4版笔记-第九章Securing web applications-003-把用户数据存在数据库

    一. 1.It’s quite common for user data to be stored in a relational database, accessed via JDBC . To c ...

  2. 每个QWidget都有contentsMargins函数,善用QMargins

    m_pSearchLineEdit = new QLineEdit(); QPushButton *pSearchButton = new QPushButton(this); pSearchButt ...

  3. MyBatis的动态SQL操作--插入

    需求:向数据库中插入一条数据 //id,name,sal非空,三个字段都插入 insert into student(id,name,sal) values (?,?,?) //id,name非空,只 ...

  4. POJ2253——Frogger(Floyd变形)

    Frogger DescriptionFreddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fi ...

  5. Android TextView结合SpannableString使用

    super.onCreate(savedInstanceState); TextView txtInfo = new TextView(this); SpannableString ss = new ...

  6. 转XMLHelper

    http://www.cnblogs.com/lixyvip/archive/2009/09/16/1567929.html using System; using System.Collection ...

  7. P143、面试题25:二叉树中和为某一值的路径

    题目:输入一棵二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.二叉树结点的定义如下:struct BinaryTreeNode ...

  8. JavaScript DOM高级程序设计 4.2 事件类型--我要坚持到底!

    对象事件 load和unload(载入页面的时候调用load,关闭页面的时候调用unload) abort和error 对于载入图像时出现错误的情况,可以使用error事件侦听器来进行说明: ADS. ...

  9. poj3114Countries in War(缩点+DIJK)

    http://poj.org/problem?id=3114 缩点+DIJK 注意缩点之后有重边啊 floyd会TLE #include <iostream> #include<cs ...

  10. 走迷宫(DFS)

    题目:http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2449&cid=1181 目前dfs 里的递归还是不很懂,AC代码如下: #incl ...