关于非接触式IC智能(射频)卡及其读写设备内核技术的研究与应用开发(连载7).docx
《关于非接触式IC智能(射频)卡及其读写设备内核技术的研究与应用开发(连载7).docx》由会员分享,可在线阅读,更多相关《关于非接触式IC智能(射频)卡及其读写设备内核技术的研究与应用开发(连载7).docx(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、关于非接触式IC智能(射频)卡及其读写设备内核技术的研究与应用开发(连载7)7“Write写指令操作“Write“写指令允许用户写数据到MIFARE卡片上(完整的16个BYTEs的数据块(Datablocks)。只有在先“Authentication认证指令完成后,才允许进行对要求的数据扇区或数据块(Block)进行“Write“写指令操作。为了提供最大的数据集成度,以及包含大量密码值的密码数据块的保密性,我们必须保持一个大数据结构。这样可以允许MIFARE卡片执行增值/减值(Increment/Decrement)指令。数据块通过一个写操作,将存储的数据在每一个block块中写3次,1次反写
2、,从而完成数据块的初始化。此外,一个地址引导位代码域必须写4次,其中2次为反向写入。正/负数据值将以标准的2的补码格式来表示。注意:在将数据写到卡片上的某一扇区时,一定要小心。因为有些block中存储了密码数据以及存储允许使能数据。特别是每一个扇区的Block3中存放了该扇区的存取条件,包含有KEYA,KEYB及该扇区的控制字。Mifare1卡片出厂时的Block3有缺省值,为:“a0a1a2a3a4a5ff078069b0b1b2b3b4b5,共16个Bytes。涉及Mifare1卡片的存储结构等信息,请参考本文的关于Mifare1卡片章节。程序员在使用Mifare1卡片做应用时,一定要清清
3、楚楚记住每一个扇区的Block3的数据,这样也就记住了扇区的密码和存取控制字。否则,扇区的存储空间将不能被READ/WRITE等操作而失效。任何人试图用任何方式来读写不知密码的卡片或某一扇区都是徒劳无益的。卡片应放在安全的地方,即不要放在离MCM天线较近的地方。因为当MCM在执行某些指令时,有可能无意对这一卡片进行了读/写等操作。8“Increment“&“Decrement“&“Restore增值/减值/重储通过Mifare1内部电路,MIFARE1卡片能够执行“Increment“&“Decrement“增值/减值操作,如果:#用合适的写指令对数据块“valuebl
4、ock进行了初始化;#根据KEYA和KEYB,允许进行“Increment“&“Decrement“增值/减值操作;#“Increment“增值0操作和“Decrement“减值0操作是不允许的;“Increment“增值:加指定的值到卡片的存储器中“Decrement“减值:从卡片的存储器中减去指定的值“Restore重储:执行一个“Decrement0(减0)指令上述指令的计算结果将被存储在MCM的一个内部的数据缓冲寄存器中,直达以后的指令来存取。为了将结果写到卡片上,紧接着必须执行“Transfer指令。Transfer指令并不改变数据缓冲寄存器中的数据值。这一操作保持数据块中的
5、数据结构,直到数据块中的值被自动地反写及校验为止。存储的地址也被正确地传送存储到数据块中。数据块的长度为4字节(BYTES)。万一数据值溢出,即数据值远大于最大的正数值或远小于最小的负数值时,MIFARE卡片将停止操作,并返回一个NACK代码。9“Transfer传送指令每一个“Increment“&“Decrement“增值/减值操作都必须跟随一条“Transfer传送指令,这样真正地将数据结果传送到卡片上去。否则,没有传送指令,数据结果仍保持在数据缓冲寄存器(valuebufferregister)。“Transfer(传送)指令的目标地址可能会相同与“Increment“&
6、;“Decrement“增值/减值指令时的源地址。然而,如果有了完善的后备管理软件,这样的事可能不会发生。除了“Transfer指令之外,其他所有的指令将改变内部数据缓冲寄存器(valuebufferregister)的内容。这将要求使用“Restore指令。“Restore指令将重建“Read“指令之后的数据缓冲寄存器(valuebufferregister)的内容。如果“Transfer(传送)指令存取了一个新的存储器位置时,将被要求一个相同于源地址的存储条件的目标地址。即,对于两个内存位置,要求执行“Increment“&“Decrement“增值/减值指令。“Transfer(
7、传送)指令自动地保持正确的数据结构,包括存储数据的地址。10“Halt停机指令“Halt停机指令将MIFARE1卡片设置为“HALTMODE。例如,卡片已经退出使用等。卡片将保持“HALTMODE状态,直到被复位(例如:重新用于通信等)。第四章MCM应用开发在这一章节里,将向广大读者介绍MCM的具体的应用开发。我们选用的卡片为Mifare1S50系列的标准的符合ISO/IEC14443TYPEA标准的非接触式IC射频卡。选用的读写器的核心模块为MCM200(或是SB201)。根据以上几个章节的介绍,相信读者可以理解如下的通用读写器DEMO电路的设计。一DEMO硬件电路的应用开发通用读写器DEM
8、O的硬件电路请见所附的图纸。具体说明如下:1DEMO电路中,对于MCU的说明:笔者选用了市场上容易购置的美国ATMEL公司的89C52芯片。其内建8KEEPROM,256bytes的RAM,内设P0,P1,P2,P3等四个端口,其中P0,P2为数据/地址双向的多用端口。内有3个定时器,T0,T1和T2。其振荡晶体选用11.0592MHz,以利于以后通信时的波特率的精确设计和设置。89C52中还内设8级中断控制系统,3级单向一次性可编程的密码内存,可以防止芯片内的程序被非法读写,拷贝等,保护知识产权。等等。AT89C52的软件指令完全兼容与MCS-51系列的MCU的标准,包括指令的寻址方式,各种
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关于 接触 IC 智能 射频 及其 读写 设备 内核 技术 研究 应用 开发 连载
限制150内