杭州灿宇科技的NFC卡通讯协议

杭州灿宇科技的NFC卡(CY14443A)通讯协议规范:
通讯波特率默认为 19200,1 位起始位,8 位数据位,1位停止位 
UART工作在半双工方式,即模块接受指令后才会做出应答。 
命令格式为:前导头+通讯长度+命令字+数据域+校验码 
前导头:0xAA0xBB两个字节,若数据中也有0xAA,那么其后为0,但长度不增加 
通讯长度:指明去掉前导头之外的通讯帧所有字节数(含通讯长度字节本身) 
命令字:各种用户可用命令(详见后文) 
校验码:去掉前导头和校验码字节之外,所有通讯帧所含字节的异或值  
CPU发送命令帧之后,需要等待读取返回值,返回值的格式如下:
正确:前导头+通讯长度+上次所发送的命令字+数据域+校验码 
错误:前导头+通讯长度+上次所发送的命令字的取反+校验码 
通讯指令表: 
序号 命令解析  数据长度 命令字 指令说明 
1  读头类型   2  0x01 正确返回数据域为 8 字节的模块型号 
2  模块序列号 2  0x02 正确返回数据域为 4 字节的模块序号 
3  模块掉电   2  0x03 正确返回数据域为空的帧,模块进入掉电模式 
4  模块工作模式设定 3  0x11 正确返回数据域为空的帧,发送数据域包含一字节控制信息,1,模块进入省电模式,0退出省电
5  卡片进入省电模式 2  0x12 正确返回数据域为空的帧,卡片进入休眠模式,移开卡片后重新进入天线区域解除 
6  设置自动寻卡 3  0x13 正确返回数据域为空的帧,发送数据域包含一字节控制信息,1:自动寻卡,0:关闭自动寻卡 
7  蜂鸣器开关 3  0x14 正确返回数据域为空的帧,发送数据域包含 1 字节信息,0x1?:蜂鸣器响?次,0x0F:蜂鸣器关 
8  蜂鸣器间隔 3  0x15 正确返回数据域为空的帧,发送数据域包含 1 字节信息:蜂鸣器响声间隔时间,单位秒 
9  OUT1 控制 3  0x16 正确返回数据域为空的帧,发送数据域包含 1 字节信息:1:输出低电平;0输出高电平
10  OUT2 控制 3  0x17 正确返回数据域为空的帧,发送数据域包含1字节信息:1:输出低电平;0 输出高电平 
11  读卡的类型 2  0x19 正确返回数据域为 2 字节的帧 S50 卡:0x400,S70卡:0x200 ,其他类型参考手册
12  读卡 2  0x20 正确返回数据域为 4 字节的卡序列号 
13  读数据块 0x0A  0x21 正确返回数据域为 16 字节的块内容 发送:1字节密钥标志+1字节块号+6 字节密钥 
14  写数据块 0x1A  0x22 正确返回数据域为空的帧 发送:1 字节密钥标志+1字节块号+6 字节密钥+16 字节数据 
15  初始化钱包 0x0E  0x23 正确返回数据域为空的帧 发送:1 字节密钥标志+1字节块号+6 字节密钥+4 字节钱包初始化值 
16  读钱包   0x0A  0x24 正确返回数据域为 4 字节的钱包值 发送:1字节密钥标志+1字节块号+6 字节密钥 
17  给钱包充值 0x0E  0x25 正确返回数据域为空的帧 发送:1 字节密钥标志+1字节块号+6 字节密钥+4 字节钱包增加值 
18  钱包扣款   0x0E  0x26 正确返回数据域为空的帧 发送:1 字节密钥标志+1字节块号+6 字节密钥+4 字节钱包需扣款值 
19  读E2   0x05  0x30 正确返回数据域为若干长度值的帧 发送:1 字节低地址+1字节高地址+1 字节长度值 
20  写E2   n  0x31 正确返回数据域为空的帧 发送:1 字节低地址+1字节高地址+n 字节写入的数据(n ≤ 16) 
注:
1、密钥标志:0 为 PICC_AUTHENT1A;1 为 PICC_AUTHENT1B。 
2、钱包操作涉及的值:都是低位在前,值为四字节有符号数。 
3、指令详细使用方法,请参考工程代码。

命令:AA BB 02 01 03 (读头类型)
返回:AA BB 0A 01 43 59 31 34 34 34 33 41 66 (CY14443A)
命令:AA BB 02 02 00 (模块序列号)
返回:AA BB 06 02 62 75 91 22 A0 (62759122)
命令:AA BB 02 03 01 (模块掉电)
返回:AA BB 03 03 01 01 (?)
命令:AA BB 03 13 01 11 (设置自动寻卡)
返回:AA BB 02 13 11 
命令:AA BB 03 14 0A 1D (蜂鸣器开关?)
返回:AA BB 03 14 00 17 
命令:AA BB 03 16 00 15 (OUT1 控制)
返回:AA BB 02 16 14 
命令:AA BB 03 17 0F 1B (OUT2 控制)
返回:AA BB 02 17 15 
命令:AA BB 02 19 1B (读卡的类型)
返回:AA BB 02 E6 E4 (返回:错误)
命令:AA BB 0A 21 00 01 FF FF FF FF FF FF 2A 
返回:AA BB 02 DE DC (返回:错误)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值