AT88RF020在学校就餐管理系统中的应用

技术分类: 模拟设计  通信  消费电子设计  | 2006-10-11
来源:单片机及嵌入式系统应用 | 湖北师范学院 洪家平

Atmel的AT88Rt020射频卡芯片有2048位的存储容量,分成32页,每页8个字节,存储组织结构如表1所列。

存储组织结构

点击看原图

    表1中标有“—”的字节由用户定义,出厂时初始值为0。

    ①Pseudo Unique PICC Identifier。卡唯一序列号,卡序列号由卡厂家写入,不能被修改。

    ②Applicatlon Data。应用数据,这个数据被作为ATQB回复信息的一部分由卡传输到读写器中。

    ③counter。计数器,每执行一次COUNT指令,计数器的值就加1,初始值由厂家设为0。

    ④Signature。签名(用于加密),这个数据位于第2页的前6个字节,可以通过COUNT指令修改,counter和Signature 可以提供更进一步的安全保护。

    ⑤Password。密码,密码放在第3页中,不能读出。

&n

bsp;   ⑥Lock Bits。锁定位,位于第0页,验证密码后,能用LocK命令修改。锁定位中的每一位与内存各页对应,如果某位被设为“1”,则对应的页就被锁死,不能再进行写操作,也没有机制解锁,所以某页一旦被锁,其内容再也不能修改,出厂初始值为0。

    AT88RF020通电或重启的工作流程如图3所示。

 AT88RF020通电或重启的工作流程

    5 RFlD卡AT88RF020的常用命令与函数

    5.1 AT88RF020的常用命令

    ①REQB/WUPB:用于寻卡或者唤醒处于HALT状态的卡,这种卡只响应应用代码(API)为00或01的情况,如果接收到一个带有无效API代码的WUPB命令,那么卡仍然处于HALT状态。

    ②ATTRIB:用于从所有响应REQB/WUPB的卡中选择一张卡,此后,卡进入AC-TIVE状态。

    ③Slot MARKER:为读写器提供了一种用于查询随机数大于1的卡。

    ④HALTB:设置卡处于HALT状态,此后只能执行WUPB命令。

    ⑤READ:用于读取卡中的数据,读取页0~2可以不必验证密码,而第3页的数据不能读出,只能通过PASS—WORD命令修改,其他的页验证密码后可以读出。

    ⑥WRITE:用于对卡写入数据。

    ⑦LOCK:只有在验证密码之后才能执行,用于锁定某一地址区域,被锁定的地址区域在验证密码之后只可以进行读操作。

    ⑧CHECK PASSWORD:密码校验命令,在设备进入就绪状态之后执行。

    ⑨DESELECT:如果对处于ACTIVE状态的卡执行该命令,且通过,则卡发送一个正确的回答信息,并进入HALT状态。

    ⑩COUNT:用于写第2页。COUNT命令中所带的数据写入到第2页的前6个字节中,后2个字节被用做计数器使用,每执行一次COUNT命令,计数器的值就增1,如果计数器的值达到2的15次方,就不能再执行COUNT操作,且第2页被锁定,不能再修改。执行该命令之前要验证密码。

    5.2 AT88RF020的函数

    下面以rf_attrib()函数为例来说明AT88RF020的函数用法。

    ①函数rLattrib()的格式:    int rI_attrib(HANDLE icdev,unsigned long pupi,unsigned char param,unsigned char cid,unsigned charbrTx,unsigned char brRx);

    ②函数的功能。从已响应REQB/WUPB命令的卡中选取一张卡,同时给每一张卡分配一个ID号。


    ③函数的参数描述。

    icdev:rf_init(

0
0
(请您对文章做出评价)
1】【2】【3】【4
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

  • 博客推荐

  • 论坛推荐

  • 在线研讨会