网络IC卡读写器技术规范

发布时间:2019-09-08   来源:文档文库   
字号:

网络IC卡读写器ETH-M-RW技术手册


——13.56MHz Mifare系列卡读写器



科星互联出品




简介
ETH-M-WR是一款基于TCP/IP协议的IC卡读写器,支持全系列mifare写操作;能便捷的实现以太网(局域网,广域网,外网)接入。支持TCP服务器、TCP客户端、UDP全协议栈。可以选择TCP或者UDP协议进行传输。。利用网络的优势实现便捷组网,安装,远程读写卡片。在物联网发展的大背景下,网络读卡器更符合物联网的发展需求。

特性
10/100M以太网接口,支持自动极性转换(MDI/MDIX 支持TCP ServerTCP ClientUDPDHCP等网络协议。 支持局域网内多对一访问。 支持internet、跨网段局域网传输。 支持命令驱动蜂鸣器。 刷卡间隔短,实时传输。 完全支持Mifare系列兼容卡 工作频率:13.56MHZ 有效距离5cm以上
直流5V供电,功耗少于300MA 工作温度-1575℃,储藏温度-2585


接口描述
RJ45内部集成了网络滤波器和两个状态指示灯。RJ45内部管脚如下:

Mifare读写指令集
命令(HEX 说明 4A 枚举卡号 4B 卡片操作完成指令 60 密码授权,验证KeyA 61 密码授权,验证KeyB 30 读命令,读一个块(16字节) A0 写命令,写一个块(16字节) C1 加值操作 C0 减值操作 B0 Transfer C2 Restore 00 驱动蜂鸣器命令 命令说明
授权命令(60/61)格式如下: 1字节 2字节 39字节 1013字节 60/61 块地址 KeyA KeyB 授权卡片UID(唯一序列号) 命令举例:60 03 FF FF FF FF FF FF 2D B9 FE C9,即给卡号为2D B9 FE C9的卡片块3授权,验证A密码。
说明 :新卡片的KeyAKeyB默认都是FF FF FF FF FF FF




读命令格式如下: 第一字节 第二字节 30 需要读取的块地址
命令举例:30 03 ,即读取块3内部16字节数据 说明 :读取前必须授权

写命令格式如下: 第一字节 第二字节 318字节 A0 块地址 需要写入指定块号的16字节数据 命令举例:A0 03 FE FE FE FE FE FE FF 07 80 69 FF FF FF FF FF FF 即往块3写入数据FE FE FE FE FE FE FF 07 80 69 FF FF FF FF FF FF 说明:写数据前必须通过授权

加减值操作命令格式如下: 第一字节 第二字节 36字节 C1/C0 块地址 4字节加或减值(低字节在前) 命令举例:C1 05 01 00 00 00,即把块号为5的块加值1 注意 每次加减值必须是4字节,低字节在前,进行加减值前必须严格按照mifare卡数据块格式先格式化数据块,具体参考《Mifare技术说明》

Transfer/restore命令格式如下: 第一字节 第二字节 B0/C2 需要操作的块地址 举例:B0 05 说明: 加减值操作后必须进行命令才能确保加减后的数值写入卡片存储块内。

枚举卡号命令 4A 01 00 卡片操作完成命令:
4B 01 00 说明:读卡器上电默认在主动上发卡号状态,在这个状态下,只要有卡片靠近,读卡器即主动上发卡号提示远程客户端进行有卡操作,当远程客户端发指令操作卡片后,读卡器不再主动上传卡号,并且切换到卡读写状态,读写完成后需要客户端发卡片操作完成指令(4B)通知读卡器切换到主动上发卡号状态。



驱动蜂鸣器命令格式 第一字节 保留(第三字节) 保留(第四字节)
长度(第二字节)
0x00 N 0XFF 0XFF N参数:
以短鸣一次为基数,具体发声长度可以调整N参数,默认N=1. 如:发00 01 FF FF命令,驱动蜂鸣器短鸣一声。

指令回复
枚举卡号命令和主动上发卡号格式如下: 15字节 610字节 5字节读卡器编码 5字节卡号
说明:前5字节为读卡器唯一编码,可以通过读卡器配置软件进行配置,第6字节为00710字节为4字节UID(唯一序列号) 回复操作状态格式如下: 第一字节 第二字节 41 状态码(提示操作成功,如操作错误,这个一个字节为错误码)
说明:所有卡片操作命令除读卡命令外都适用。 状态码: 00 ----------------操作成功
其它--------------对应的错误码 错误码对照表:
01 ---------------超时,读卡器无响应 10----------------参数错误 13----------------命令格式错误 14 ---------------密码验证错误
(更多错误码解析请联系科星互联技术支持) 读卡命令数据回复格式: 第一字节 第二字节 318字节 41 状态字节(00 16字节数据 说明:若读取错误没有数据回复,状态字节适用于本文上述错误码。


如何读写mifare
1. 了解mifare卡,mifare卡详细请参考《mifare技术手册》文档,在这里我们只关心具体操作步骤; Mifare 默认密码: 对于一张新卡,所有扇区的KeyAKeyB默认都是:FF FF FF FF FF FF 控制字节 :默认的控制字节为FF 07 80 69,在这个控制字节组合下,验证KeyA后可以读写数据块,验证KeyA后可以写KeyA,不能读KeyA,验KeyA后可以读写KeyB,验证KeyA后可以读写控制字节。在一般情况下用默认的控制字节就能满足需要,不要轻易修改控制字节,修改KeyA用写块操作命令时,注意写入的控制字节不要变化。
2. 枚举卡,获取UID,可以直接使用读卡器主动上发的卡号对卡进行操作,如果在操作过程中需要再次获取UID,发送4A 01 00 3.验证KeyA 4.读写块内数据
5.操作完成,发送4B 01 00命令。

应用举例1 (数据块操作)
PC代表访问读卡器的终端,ETH代表读卡器,如下: // 读取卡号 PC->ETH 4A 01 00
ETH->PC 00 00 00 00 00 00 2D B9 FE C9 // 验证KeyA
PC->ETH 60 03 FF FF FF FF FF FF 2D B9 FE C9 ETH->PC 41 00 //写数据块2
PC->ETH A0 02 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF ETH->PC
41 00 //读数据块2
PC->ETH 30 02
ETH->PC 41 00 00 11 22 33 44 55 66 77 88 99 AA BB CC DD EE FF // 操作完成 PC->ETH 4B 01 00 ETH->PC
41 00

应用举例2(加减值操作)
PC->ETH 4A 01 00
ETH->PC 00 00 00 00 00 00 2D B9 FE C9 // 验证KeyA
PC->ETH 60 03 FF FF FF FF FF FF 2D B9 FE C9 ETH->PC
41 00 //对块5写入格式化数据
PC->ETH A0 05 01 00 00 00 FE FF FF FF 01 00 00 00 05 FA 05 FA ETH->PC 41 00 //读块5 PC->ETH 30 05 ETH->PC 41 00 01 00 00 00 FE FF FF FF 01 00 00 00 05 FA 05 FA // Increment PC->ETH C1 05 01 00 00 00 ETH->PC 41 00 // Transfert PC->ETH B0 05 ETH->PC
41 00 //读块5(加值操作后的值) PC->ETH 30 05 ETH->PC 41 00 02 00 00 00 FD FF FF FF 02 00 00 00 05 FA 05 FA //操作完成 PC->ETH 4B 01 00 ETH->PC
41 00

应用举例3(修改密码)
PC->ETH 4A 01 00
ETH->PC 00 00 00 00 00 00 2D B9 FE C9 // 验证KeyA
PC->ETH 60 03 FF FF FF FF FF FF 2D B9 FE C9 ETH->PC
41 00 //修改扇区1KeyA注意不要随便修改控制字节和KeyB将密码改为FE FE FE FE FE FE PC->ETH A0 03 FE FE FE FE FE FE FF 07 80 69 FF FF FF FF FF FF ETH->PC 41 00 //操作完成 PC->ETH 4B 01 00 ETH->PC
41 00

如何配置网络读写器参数
修改参数
IP地址、网关、子网掩码等,如图:

配置网络端口号(默认50000


注意:配置软件之提供一个端口号配置,此端口号根据读卡器的工作模式不同代表不同的意思,如果工作在服务器模式(从模式),那么这个端口号就是读卡器的本地端口号,是客户端(主机)需要访问的端口号。而如果读卡器工作在客户端模式(从机),则表示配置的端口号为远程服务器(主机)的端

口号,此时读卡器本地端口号为随机的一个端口号。 配置读卡器的工作模式:

读卡器提供四种可配置工作模式,分别是TCP服务器,TCP客户端,UDP服务器,UDP客户端模式,下面对4种模式进行介绍:
服务器模式:TCP服务器模式,工作在此模式下可以接受一个TCP客户端对读卡器进行访问
客户端模式:即TCP客户端模式,工作在TCP客户端模式,可以通过配置远程服务器IP和端口号来主动连接到一个远程服务器上。 UDP服务器模式:工作在UDP服务器模式下,读卡器可以响应所有IP地址和端口号发来的切换接收卡号客户端请求(读取读卡器唯一编码命令),并刷卡记录发送到最近一次请求的客户端,这个模式的好处是可以实现多个客户端对读卡器进行访问。
UDP客户端模式:UDP客户端模式下,类似TCP客户端,可以通过配置远程IP和端口号来实现指定地址上传卡号。
注意:建议配置时勾选心跳信号,心跳信号在TCP协议下用于非法断开自动重连功能实现。



如何把参数写入读卡器
读卡器内部自带FLASH,对参数有掉电保护功能,参数一旦写入后可以实现永久保存。
步骤如下:
1. 把读卡器连入局域网(也可以直接连接电脑,直接连接电脑,PC端需要使用固定IP,并上电运行。
2. 勾选参数配置选项,并点击扫描按钮,如图
在配置软件的左上角会看到扫描出来的读卡器现有IP和物理地址,如图:

3. 点击选中扫描到的IP地址(即需要配置的读卡器对应IP地址)然后点

“连接”按钮后出出现“配置”按钮,如图:

4. 最后点击“配置”按钮即可实现参数写入。





a 点击读取配置信息按你可以在右上角看到读卡器内部参数列表,如图:



如果测试读写器
通过上一章节成功配置读卡器参数后,即可测试读卡器读写卡片,本节通过TCP调试助手来示范读写器操作。 第一步,建立TCP连接
如图,读卡器工作在TCP服务器模式,TCP调试助手作为TCP客户端和读卡器建立TCP连接:
注意:远程主机要输入配置后的读卡器IP,端口号也要和配置的参数一致。




第二步,主动上发UID 建立TCP连接后,卡片靠近读卡器,即可看到上传的UID

注意:上传的数据包解析见上文报文回复章节,上图数据包表示读卡器编码5个字节00卡片UID17 01 BD 01另外TCP调试助手务必勾选16进制显示。
第三步,枚举卡号



第四步,授权(验证KeyA

注意:具体编程时,发送命令后必须要读取回复,根据具体回复进行下一步操作。
第五步,写块操作(写第二块)





第六步,读块操作(读第二块)

注意,如上图可以看到读出来数据和写入数据一致。 第七步,操作完成命令


如何编程
ETH-M-RW读写器编程采用标准Socket编程方式,根据不同上位机开发语言可以选择使用socket控件或者调用系统API





本文来源:https://www.2haoxitong.net/k/doc/ee405f946ad97f192279168884868762caaebb89.html

《网络IC卡读写器技术规范.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式