关于非接触式IC智能(射频)卡及其读写设备内核技术的研究与应用开发(连载5)
文章出处:http://www.singbon.com 作者:张敏 人气: 发表时间:2011年11月01日
10.CRCSTACON寄存器, 地址: 09H
CRCSTACON寄存器是指CRC处理器状态和控z制寄存器。
11. KEYDATA 寄存器, 地址: 0A H (10)
被存储在MCM中RAM的密码数据必须先被写入KEYDATA 寄存器。
为了能够存取MCM内部RAM中的密码,密码的存放地址必须首先在KEYSTACON 寄存器和KEYADDR寄存器两者中指定。
在做存放密码操作或做密码验证操作之前,首先必须对KEYSTACON 寄存器进行设置; 在密码被准确无误地存进RAM之前,相关的传输密码(Transport KEY)Tkey必须被写入KEYDATA-寄存器中。传输密码TKey和写入RAM中的密码都是6字节(BYTE)长,连续被写入KEYDATA 寄存器中。但是,在“AUTHENCATION”(认证)操作时,这一寄存器不必使用。
12. KEYSTACON – 寄存器 地址:0BH(11)
KEYSTACON 寄存器是指(密码)KEY状态和(密码)KEY控制寄存器。
写入 数据到KEYSTACON – 寄存器进行设置,将确定存取RAM中的密码(KEY)或传输密码(KEY)的密码地址的一部分。
存放在MCM的RAM中的密码对程序员来说是透明的,不得而知的。因此也是不可读的。(这里指的是密码本身及存放密码的地址不可读)。
提取密码: AL=0, 表明将要提取密码;
密码认证(Authentication):AL=1, 表明将要认证“AUTHENTICATION” 操作。
RAM中的密码 和传输密码TKey 二者中允许被选择。
注意:KEYSTACON – 寄存器中的值必须根据所使用的 “AUTHENTICATION”命令(60 hex 或61 hex指令代码)来确定。
此外,密码地址通过写数据到KEYSTACON 和KEYADDR寄存器之后而在MCM中被确定,之后,通过写“命令”(Command)和写“地址”(address)到DATA寄存器之后,认证密码“AUTHENTICATION” 操作便开始启动执行。
13. KEYADDR-寄存器, 地址:0C H (12)
KEYADDR寄存器将存放RAM(密码)KEY和 传输(密码)KEY各自的 密码地址的一部分。
写入 数据到KEYADDR– 寄存器 将确定存取MCM的RAM中的密码(KEY)或传输密码(KEY)的密码地址的一部分。
程序员不可能知道密码实际存放在MCM的RAM中的地址,否则密码便没有秘密可言了。
提取密码: AL=0, 表明将要提取密码;
认证Authentication: AL=1, 表明将要认证 “AUTHENTICATION” 操作。
14. RCODE –寄存器,地址:0D H (14)
RCODE –寄存器 用于代码接收。
写入 数据到RCODE 寄存器对其进行设置,将使接收器的译码器参数化。
RCODE –寄存器中的值一般应设置为0X02 H。 然而,在有些环境中,设置为0x03 H 时,对Mifare 1卡片的操作距离可能会稍为好(远)一点。
三. MCM硬件初始化
为了与MIFARE 1卡通信,必须对MCM各硬件寄存器进行初始化设置。
一般地,应该先对MCM执行软复位(soft-reset),然后对MCM进行初始化设置,再进行数据通信。
在任何数据通信之前必须先执行“REQUEST”命令, 以和卡片建立第一步的通信联络。
以下是MCM各硬件寄存器在上电时或在软件复位时的复位表。
说明:上表中的POR和SOR两列中: X :表示此位不必关注;
N :表示此位没有使用; U :表示此位不变。
四. MCM的硬件内核包括了如下几大部分接口电路:
1.与MCU(微处理机CPU)接口电路
2.RF模块接口电路
3.与天线射频接口电路
4.与电源接口电路
(一)MCM与MCU(微处理机CPU)接口电路
MCM可以由标准的MCU接口信号来控制。这些标准的控制信号可以控制MCM的 ASIC进行工作。其间使用了标准的微控制器和微处理机通信协议。
MCM可由外部MCU发出特殊命令来启动运行。任何情况下,MCM都可以由对地址的选择来启动工作。例如,MCM的RST引脚,-CS引脚和CS引脚的信号设置等。
对MCM内部存储器的存取,意味着将激活-CS和CS信号,以及对地址为00H~~0FH的寄存器的合适的设置。
通过读特殊I/O地址的信息,可以得到MCM的状态信息。采用不同的MCU及其连接方法,将会有不同的硬件信号时序及数据信息流信息等。