15693协议相关内容纪要

一、从VCD to VICC的一次请求;

请求格式:

1.1 请求标志位

下文出现请求标志eg:

0x07——双载波/高速率/无AFI域/16个slots

0x17——双载波/高速率/有AFI域/16个slots

0x23——双载波/高速率/请求寻址带UID

0x63——双载波/高速率/请求寻址带UID/选择权标志置位

1.2 命令编码

二、从VICC to VCD的一次响应;

响应格式:

2.1响应标志位

当上表中错误标志被VICC置位,将包含错误码域,并提示出现的错误信息错误码在表 7 中定义。假如 VICC 不支持表 7 中列出的规定错误码, VICC 将以错误码 '0F' 应答( "不给出错误信息")。

三、命令格式说明+示例;

1、清卡指令 "01"

VCD TO VICC

标志(1B)+命令编码(1B)+可选AFI(1B)+MASK长度(1B)+mask值(1B)+CRC16(2B)

17 01 00 00 82 32  (带AFI的清卡指令)

07 01 00 11 53

VICC TO VCD

标志(1B)+DSFID(1B)+UID(8B)+CRC16(2B)

00 00 5F 02 1F 9E 50 01 04 E0 C8 F4

00 11 AA 9C 37 59 50 01 04 E0 3D F8

2、读单个块指令 "20"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+数据(块数量1B)+CRC16(2B)

63 20 1D 9F 37 59 50 01 04 E0 0A 08 99

VICC TO VCD

标志(1B)+块状态(1B)+数据(4B)+CRC16(2B)

00 00 00 00 00 00 8F F7

00 00 11 22 33 44 FC 06

3、写单个块指令 "21"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+块数量(1B)+数据(块长度4B)+CRC16(2B)

(块被锁定之后写指令返回错误状态)

23 21 1D 9F 37 59 50 01 04 E0 0A 11 22 33 44 4A 18

23 21 1D 9F 37 59 50 01 04 E0 0B 55 66 77 88 24 3F

23 21 1D 9F 37 59 50 01 04 E0 0C 99 AA BB CC 06 6B

VICC TO VCD

标志(1B)+ CRC16(2B)

00 78 F0

4、锁定块 "22"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+块序号(1B)+CRC16(2B)

(锁定之后为永久锁定,能读不能写,二次锁定返回错误状态)

23 22 AA 9C 37 59 50 01 04 E0 0A 0B A3

VICC TO VCD

标志(1B)+ CRC16(2B)

00 78 F0

5、读多个快 "23"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+数据(首块序号+块数量)(2B)+CRC16(2B)

(块数量为0表示读单个块)

63 23 1D 9F 37 59 50 01 04 E0 0A 01 93 93

63 23 1D 9F 37 59 50 01 04 E0 0A 02 08 A1

VICC TO VCD

标志(1B)+[块状态(1B)+数据(4B)]*(块数量+1)+CRC16(2B)

00 00 11 22 33 44 00 55 66 77 88 22 B1

00 00 11 22 33 44 00 55 66 77 88 00 99 AA BB CC 00 00

6、写多个块 "24"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+首块序号(1B)+块数量(1B)+数据(块长度NB)+CRC16(2B)

(一直返回error未找到原因)

23 24 1D 9F 37 59 50 01 04 E0 09 05 01 01 01 01 02 02 02 02 03 03 03 03 04 04 04 04 05 05 05 05 B3 81

VICC TO VCD

数据(块长度NB)+CRC16(2B)

01 0F 68 EE

【notice】:关于读写多个块指令不同厂商自定义,有出现读多个块数据回复循环且多于要读数量,无法接收到CRC校验值;写多个块也有写不成功的情况出现,不同的VICC卡情况不同,需注意,大多数情况下,写单个块和读单个块满足需求,基于稳定性考虑,这两条指令使用需测试。

7、选择 "25"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+CRC16(2B)

23 25 1D 9F 37 59 50 01 04 E0 A3 05

VICC TO VCD

标志(1B)+CRC16(2B)

00 78 F0

8、复位准备 "26"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+CRC16(2B)

23 26 1D 9F 37 59 50 01 04 E0 A4 D3

VICC TO VCD

标志(1B)+CRC16(2B)

00 78 F0

9、写AFI "27"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+AFI值(1B)+CRC16(2B)

(AFI被锁定后二次写入返回错误状态)

23 27 1D 9F 37 59 50 01 04 E0 00 A2 3F

VICC TO VCD

标志(1B)+CRC16(2B)

00 78 F0

10、锁定AFI "28"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+CRC16(2B)

(AFI被锁定后二次锁定返回错误状态)

23 28 1D 9F 37 59 50 01 04 E0 71 08

VICC TO VCD

标志(1B)+CRC16(2B)

00 78 F0

11、写DSFID命令 "29"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+DSFID值(1B)+CRC16(2B)

(DSFID被锁定后二次写入返回错误状态)

23 29 1D 9F 37 59 50 01 04 E0 11 51 BF

VICC TO VCD

标志(1B)+CRC16(2B)

00 78 F0

12、锁定DSFID命令 "2A"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+CRC16(2B)

(DSFID被锁定后二次锁定返回错误状态)

23 2A 1D 9F 37 59 50 01 04 E0 8B 93

VICC TO VCD

标志(1B)+CRC16(2B)

00 78 F0

13、获取系统信息 "2B"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+CRC16(2B)

23 2B 1D 9F 37 59 50 01 04 E0 76 DE

VICC TO VCD

标志(1B)+信息标志(1B)+UID(8B)+DSFID(1B)+afi(1B)+信息域(2B)+CRC16(2B)

00 0F 1D 9F 37 59 50 01 04 E0 11 00 1B 03 01 51 00

00 0F C7 C2 37 59 50 01 04 E0 00 00 1B 03 01 33 00

14、获取多个块安全状态 "2C"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B)+首块序号(1B)+块数量(1B)+CRC16(2B)

(返回状态数量等于块数量加一)

23 2C 1D 9F 37 59 50 01 04 E0 09 06 68 86

VICC TO VCD

标志(1B)+块安全状态(NB)+CRC16(2B)

00 00 00 00 00 00 00 00 73 83

15、静默 "02"

VCD TO VICC

标志(1B)+命令编码(1B)+UID(8B) +CRC16(2B)

23 02 AA 9C 37 59 50 01 04 E0 72 09

VICC TO VCD


防碰撞部分待整理。

在读卡过程中出现一张卡会回复两个UID情况,暂时未查明原因。

转载于:https://www.cnblogs.com/smy87/p/9166460.html

15693协议命令格式汇总相关推荐

  1. 用lua生成modbus协议中的ascii模式的1363格式(适合爱默生公司的ups或者空调之类的协议命令)

    --协议格式 local str = "7E 32 31 30 31 36 30 00 00 30 30 30 30 00 00 00 00 0D" local var = {} ...

  2. Linux性能分析命令工具汇总

    转自:http://rdc.hundsun.com/portal/article/731.html?ref=myread 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章. ...

  3. Linux系统监控命令整理汇总-掌握CPU,内存,磁盘IO等找出性能瓶颈

    的性能有问题,总之,每到晚上挖站否的主机就出现了不稳定的情况,系统负载忽高忽低.利用服务器日志分析利器:ngxtop和GoAccess也能查出有一些IP一直在不断地扫描服务器端口还有WP后台. 但是, ...

  4. windows与linux中,ping大数据包的命令格式

    日常工作中,为了测试网络的质量,经常会有ping大数据包的场景. Linux环境下,命令格式:ping -s [1-65507] x.x.x.x Windows环境下,命令格式:ping -l [1- ...

  5. 思科服务器查看生成树协议,思科基于端口的生成树协议命令

    思科基于端口的生成树协议命令 [命令格式]set port [portlist|all] spanning-tree enable [使用指南]该命令用于使能基于端口的生成树协议.参数为交换机物理端口 ...

  6. 蓝牙BLE数据包格式汇总

    蓝牙BLE数据包格式汇总 以蓝牙4.0为例说明: BLE包格式有:广播包.扫描包.初始化连接包.链路层控制包(LL层数据包).逻辑链路控制和自适应协议数据包(即L2CAP数据包)等: 其中广播包又分为 ...

  7. (转)DOS命令格式

    DOS基本命令 MD--建立子目录 1.功能:创建新的子目录 2.类型:内部命令 3.格式:MD[盘符:][路径名]〈子目录名〉 4.使用说明: (1)"盘符":指定要建立子目录的 ...

  8. 华三交换机ping大包命令_如何Ping大包命令_Ping大包命令格式详解-win10铺

    如何Ping大包命令?Ping大包命令格式详解如下: ping全称Packet Internet Grope-英特网包探索器,是一个Windows自带可执行命令,主要用来检测网络是否通畅或者网络链接速 ...

  9. linux ls没有反应_Linux入门②“命令格式”

    Linux终端敲命令是一件"爽"的事情. 对于我这样的新手来说,这个过程是我一直坚持下去的动力,每次敲下一行命令,终端就会对你作出反馈,而且这个反馈掷地有声,反应非常的迅速,说不出 ...

  10. Linux之终端命令格式的组成

    Linux之终端命令格式的组成 1. 终端命令格式说明 command [-options] [parameter]   [一般情况下这两项是可以调换位置的] 每项信息的说明: command:命令名 ...

最新文章

  1. Linux用户查看系统有多少用户在登录
  2. 计算机图形软件---图形功能
  3. css margin-top设置html元素之间的距离
  4. VirtualBox 在Linux升级后不能用的解决办法实践
  5. python改变numpy数据类型_numpy-Python Pandas-将某些列类型更改为类别
  6. 图论文快讯|AAAI2020图相关论文合集,涉及各个方面
  7. SAP CRM Contact和Account的从属关系
  8. iphone静态库的加载和调试
  9. 圣杯布局——针对前端小白篇
  10. android jar包 权限,Android系统启动执行jar程序
  11. C# 替换string字符串指定位置的字符
  12. 阅读笔记——凤凰架构(第1章)
  13. 利用偏最小二乘法选出最重要的特征波段Matlab
  14. Linux 下的Bluetooth 架构
  15. 四、六级考试的标准分计算方法-“710分转换表”
  16. QT 幸运大转盘动画
  17. 腾讯云-云主机购买正确姿势
  18. 论斯芬克司吃人的合理性。
  19. python浏览器自动化测试仪器_【松勤软件自动化测试】纯干货:基于Python+Selenium2登录163邮箱实例...
  20. 更改Docker的shm(共享内存)大小

热门文章

  1. Bridging the Gap Between Anchor-based and Anchor-free Detection 阅读
  2. Win10笔记本电脑设置插入鼠标时自动禁用触摸板
  3. 大数据的应用领域有哪些
  4. 华为2019届校招笔试题及解法
  5. CUDA C/C++ 教程一:加速应用程序
  6. 【转】前端开发设计必备的Chrome插件
  7. android短信验证码免费版,短信验证码功能-免费哦!亲测可用
  8. mysql 分表联合查询_解决分表后联合查询
  9. mybatis三表联合查询
  10. 【HAVENT原创】Firebase 相关操作及代码示例