logo资料库

ACR122U API 中文版.pdf

第1页 / 共47页
第2页 / 共47页
第3页 / 共47页
第4页 / 共47页
第5页 / 共47页
第6页 / 共47页
第7页 / 共47页
第8页 / 共47页
资料共47页,剩余部分请下载后查看
1.0. 简介
1.1. 特性
1.2. USB接口
2.0. 功能实现
2.1. ACR122U通信流程图
2.2. 智能卡读写器接口概述
3.0. PICC接口描述
3.1. ATR的生成
3.1.1. ATR信息格式(适用于ISO 14443-3 PICC)
3.1.2. ATR信息格式(适用于ISO 14443-4 PICC)
4.0. PICC常用指令
4.1. 获取数据(GET DATA)
5.0. Mifare Classic存储卡的PICC命令(T=CL模拟)
5.1. 加载认证密钥(LOAD AUTHENTICATION KEYS)
5.2. 认证(AUTHENTICATION)
5.3. 读二进制块(READ BINARY BLOCKS)
5.4. 更新二进制块(UPDATE BINARY BLOCKS)
5.5. 与值块相关的命令
5.5.1. 值块操作(VALUE BLOCK OPERATION)
5.5.2. 读取值块(READ VALUE BLOCK)
5.5.3. 恢复值块(RESTORE VALUE BLOCK)
6.0. 私有APDU
6.1. 直接传输(DIRECT TRANSMIT)
6.2. 双色LED和蜂鸣器控制(BI-COLOR LED AND BUZZER CONTROL)
6.3. 获取读写器固件版本(GET THE FIRMWARE VERSION OF THE READER)
6.4. 获取PICC操作参数(GET THE PICC OPERATING PARAMETER)
6.5. 设置PICC操作参数(SET THE PICC OPERATING PARAMETER)
6.6. 设置超时参数(SET TIMEOUT PARAMETER)
6.7. 检测卡片时启用蜂鸣器(SET BUZZER OUTPUT ENABLE FOR CARD DETECTION)
7.0. 非接触式应用的基本流程
7.1. 如何访问符合PC/SC的标签(ISO 14443-4)?
7.2. 如何访问DESFire标签(ISO 14443-4)?
7.3. 如何访问FeliCa标签(ISO 18092)?
7.4. 如何访问NFC论坛Type 1标签(ISO 18092),例如Jewel和Topaz标签?
7.5. 获取非接触式接口的当前设置
附录 A. ACR122U PC/SC 直接(Escape)命令
附录 B. APDU命令和响应(ISO 14443标签)
附录 C. APDU命令和响应(ISO 18092标签)
附录 D. 错误代码
附录 E. 示例代码(设置LED)
ACR122U NFC 读写器(USB 接口) 应用程序编程接口 V2.02 如有任何更改,恕不另行通知 info@acs.com.hk www.acs.com.hk
3.1.1. 3.1.2. 目录 1.0. 简介 ............................................................................................................................. 4 1.1. 特性 ........................................................................................................................................ 4 1.2. USB 接口 ................................................................................................................................ 5 2.0. 功能实现 ...................................................................................................................... 6 2.1. ACR122U 通信流程图 ............................................................................................................ 6 智能卡读写器接口概述 ........................................................................................................... 7 2.2. PICC 接口描述 ............................................................................................................ 8 3.0. 3.1. ATR 的生成 ............................................................................................................................ 8 ATR 信息格式(适用于 ISO 14443-3 PICC) ............................................................... 8 ATR 信息格式(适用于 ISO 14443-4 PICC) ............................................................... 9 PICC 常用指令 .......................................................................................................... 11 4.0. 4.1. 获取数据(GET DATA) ..................................................................................................... 11 5.0. Mifare Classic 存储卡的 PICC 命令(T=CL 模拟) ................................................. 12 5.1. 加载认证密钥(LOAD AUTHENTICATION KEYS) ........................................................... 12 认证(AUTHENTICATION) ............................................................................................... 13 5.2. 读二进制块(READ BINARY BLOCKS) ........................................................................... 16 5.3. 5.4. 更新二进制块(UPDATE BINARY BLOCKS) ................................................................... 17 与值块相关的命令 ................................................................................................................ 18 5.5. 值块操作(VALUE BLOCK OPERATION) ............................................................... 18 读取值块(READ VALUE BLOCK) .......................................................................... 19 恢复值块(RESTORE VALUE BLOCK) ................................................................... 20 6.0. 私有 APDU ................................................................................................................ 21 直接传输(DIRECT TRANSMIT) ...................................................................................... 21 6.1. 6.2. 双色 LED 和蜂鸣器控制(BI-COLOR LED AND BUZZER CONTROL) ............................ 22 获取读写器固件版本(GET THE FIRMWARE VERSION OF THE READER) ................. 24 6.3. 获取 PICC 操作参数(GET THE PICC OPERATING PARAMETER) .............................. 25 6.4. 设置 PICC 操作参数(SET THE PICC OPERATING PARAMETER) ............................... 26 6.5. 6.6. 设置超时参数(SET TIMEOUT PARAMETER) ................................................................ 27 6.7. 检测卡片时启用蜂鸣器(SET BUZZER OUTPUT ENABLE FOR CARD DETECTION) .. 28 7.0. 非接触式应用的基本流程 ........................................................................................... 29 7.1. 如何访问符合 PC/SC 的标签(ISO 14443-4)? .................................................................... 30 如何访问 DESFire 标签(ISO 14443-4)?............................................................................. 31 7.2. 如何访问 FeliCa 标签(ISO 18092)? ................................................................................... 32 7.3. 7.4. 如何访问 NFC 论坛 Type 1 标签(ISO 18092),例如 Jewel 和 Topaz 标签? ................. 33 7.5. 获取非接触式接口的当前设置 .............................................................................................. 35 附录 A. ACR122U PC/SC 直接(Escape)命令 .............................................................. 36 附录 B. APDU 命令和响应(ISO 14443 标签) ................................................................ 39 附录 C. APDU 命令和响应(ISO 18092 标签) ................................................................ 40 附录 D. 错误代码 ............................................................................................................... 41 附录 E. 示例代码(设置 LED) ............................................................................................. 43 5.5.1. 5.5.2. 5.5.3. ACR122U – 应用程序编程接口 版本 2.02 Page 2 of 47 info@acs.com.hk www.acs.com.hk
图目录 图 1 :ACR122U 通信流程图 .................................................................................................................. 6 图 2 :资源管理器中的智能卡读写器接口 ............................................................................................... 7 图 3 :非接触式应用的基本流程 ........................................................................................................... 29 图 4 :Topaz 内存图 ............................................................................................................................. 34 表目录 表 1 :USB 接口 ...................................................................................................................................... 5 表 2 :ATR 信息格式(适用于 ISO 14443-3 PICC) ............................................................................. 8 表 3 :ATR 信息格式(适用于 ISO 14443-4 PICC) ............................................................................. 9 表 4 :Mifare 1K 卡的内存结构 ............................................................................................................. 14 表 5 :Mifare 4K 卡的内存结构 ............................................................................................................. 14 表 6 :Mifare Ultralight 卡的内存结构 ................................................................................................... 15 表 7 :BI-COLOR LED AND BUZZER CONTROL 的结构(1 个字节) .............................................. 22 表 8 :LED 当前状态(1 个字节) ........................................................................................................ 23 表 9 :PICC 操作参数(默认值 = FFh)............................................................................................... 26 ACR122U – 应用程序编程接口 版本 2.02 Page 3 of 47 info@acs.com.hk www.acs.com.hk
1.0. 简介 ACR122U 是一款连机非接触式智能卡读写器。它可以读写 ISO 14443-4 A 类和 B 类卡、Mifare 卡、 ISO 18092 或 NFC 卡、以及 FeliCa 标签。由于符合 PC/SC 标准,它可以与现有的 PC/SC 应用相兼 容。另外它采用了标准的 Microsoft CCID 驱动来简化驱动安装程序。 作为非接触式标签与个人电脑的中间设备,ACR122U 通过 USB 端口与电脑建立连接,并执行电脑发 出的指令——无论是用于与非接触标签通信的命令,还是用于控制外围设备(LED 或蜂鸣器)的命 令。 ACR122U 使用 PC/SC APDU 命令来操作遵从 PC/SC 规范的非接触式标签,同时它使用了私有 APDU 向 ISO18092 标签发送命令及控制外围设备。本文将介绍如何在智能卡系统中应用 ACR122U。 1.1. 特性 • USB 2.0 全速接口 • 符合 CCID 标准 • 智能卡读写器: o 读写速率高达 424 kbps o 内置天线用于读写非接触式标签,读取智能卡的距离可达 50 mm(视标签的类型而定) o 支持 ISO 14443 第 4 部分 A 类和 B 类卡、Mifare 卡、FeliCa 卡和全部四种 NFC(ISO/IEC 18092)标签 o 内建防冲突特性(任何时候都只能访问 1 张标签) • 应用程序编程接口: o 支持 PC/SC o 支持 CT-API(通过 PC/SC 上一层的封装) • 内置外围设备: o 用户可控的双色 LED 指示灯 o 用户可控的蜂鸣器 • 支持 Android™ OS 3.1 及以上版本 • 符合下列标准: ISO 14443 o o CE o FCC o KC o VCCI o PC/SC o CCID o Microsoft WHQL o RoHS ACR122U – 应用程序编程接口 版本 2.02 Page 4 of 47 info@acs.com.hk www.acs.com.hk
1.2. USB 接口 ACR122U 通过符合 USB 1.1 规范的 USB 端口与计算机建立连接,支持 USB 全速模式,速率为 12Mbps。 引脚 信号 功能 1 2 3 4 VBUS 为读写器提供+5 V 的电源(最大 200 mA,常规 100 mA) D- D+ GND 参考电压等级 ACR122U 和 PC 间以差分信号传输数据 ACR122U 和 PC 间以差分信号传输数据 表 1:USB 接口 ACR122U – 应用程序编程接口 版本 2.02 Page 5 of 47 info@acs.com.hk www.acs.com.hk
2.0. 功能实现 2.1. ACR122U 通信流程图 ACR122U 读写器采用标准的微软 CCID 和 PC/SC 驱动,因此可以直接使用 Windows 操作系统自带的 驱动,而无需另行安装 ACS 驱动。您也可以修改电脑注册表的设置来使用 ACR122U NFC 读写器的全 部功能。更多细节请参看附录 A。 图 1:ACR122U 通信流程图 ACR122U – 应用程序编程接口 版本 2.02 Page 6 of 47 info@acs.com.hk www.acs.com.hk
2.2. 智能卡读写器接口概述 单击“设备管理器”,找到“ACR122U PICC Interface”。我们使用标准的微软 USB CCID 驱动。 图 2:资源管理器中的智能卡读写器接口 ACR122U – 应用程序编程接口 版本 2.02 Page 7 of 47 info@acs.com.hk www.acs.com.hk
3.0. PICC 接口描述 3.1. ATR 的生成 读写器检测到 PICC 后,一个 ATR 会被发送至 PC/SC 驱动来识别 PICC。 3.1.1. ATR 信息格式(适用于 ISO 14443-3 PICC) 值 (Hex) 3Bh 标记 说明 初始字符 - 字节 0 1 2 3 4 至 3+N 80h 4Fh 0Ch RID SS C0 ..C1h 00 00 00 00h 4+N UUh 8Nh T0 80h TD1 01h TD2 高半字节 8 表示:后续不存在 TA1、TB1 和 TC1,只存在 TD1。 低半字节 N 指出历史字符的个数(HistByte 0 - HistByte N-1) 高半字节 8 表示:后续不存在 TA2、TB2 和 TC2,只存在 TD2。 低半字节 0 表示协议类型为 T=0 高半字节 0 表示后续不存在 TA3、TB3、 TC3 和 TD3。 低半字节 1 表示协议类型为 T=1 类别指示字节,80 表示在可选的 COMPACT-TLV 数据对象中或许存在一个状 态标识符 应用标识符存在标识 长度 注册应用供应商标识 (RID) # A0 00 00 03 06h 标准字节 卡片名称字节 RFU # 00 00 00 00h T0 至 Tk 的所有字节按位异或 T1 Tk RFU TCK 表 2:ATR 信息格式(适用于 ISO 14443-3 PICC) 例如: Mifare 1K 卡的 ATR = {3B 8F 80 01 80 4F 0C A0 00 00 03 06 03 00 01 00 00 00 00 6Ah} 初始字 符 T0 TD1 TD2 T1 Tk 长 度 3Bh 8Fh 80h 01h 80h 4Fh 0Ch ATR RID A0 00 00 03 06h 标 准 卡片名 称 03h 00 01h RFU TCK 00 00 00 00h 6Ah ACR122U – 应用程序编程接口 版本 2.02 Page 8 of 47 info@acs.com.hk www.acs.com.hk
分享到:
收藏