T5557读写模块开发手册
T5557 读写模块开发手册 一、概述 T5557 读写模块是本公司低频(Low Frequency)RFID 中的一员,可以读写 T5557 芯片,同时支持 ID(EM4100)和 FDX-BISO11784\85两种标准。该模块 电路和读卡算法都经过仔细优化,模块具有功耗低,感应灵敏,读卡稳定、读 卡速度快等特点;通过 UART 发送简单的指令就可完成操作,易于嵌入到各类电 子产品中,可以缩短您的开发周期,减少开发和维护费用。 参数 频率125KHz 供电 2.7V 3.6V 接口 采用 UART 通信,波特率为 38400 标准 同时支持 ID(EM4100)、FDX-B(ISO11784\85)两种标准 卡片 可以读写 T 5557、AT A5567、ATA5577 距离07cm,测试以 EM4100 为准 功耗 1 1 / 1010 读卡功耗 16.7mA,空闲功耗 1.1mA。 二、电路连接和电路尺寸图 图 1 图 2 三、操作协议 3.1、主从 外部 CPU 为主,读卡器为从,读卡器始终处于应答状态,不主动向外部 CPU 发送命令。1 BIT 起始位、8 BIT 数据、1 BIT 停止位。 3.2、通讯协议 3.2. 1.外部 CPU 命令格式 命令头长度字命令字命令参数校验字节 命令头2 BYTES,0 xAADD 长度字2 BYTES,从命令字到校验字节的字节长度,高字节在前,低字节 在后 命令字2 BYTES,高字节在前,低字节在后 命令参数 可以为空 校验字节1 BYTE,命令字到命令参数最后一字节的逐字节异或 2 2 / 1010 注 如果从长度字到校验字节中有一个字节AA,则在其后跟一字节 00 以区分 命令头,但长度字不变 3.2. 2.读卡器应答格式 命令头长度字命令字状态字节返回数据校验字节 命令头2 BYTES,0 xAADD 长度字2 BYTES,从命令字到校验字节的字节长度,高字节在前,低字节 在后 命令字2 BYTES,高字节在前,低字节在后 状态字节1 BYTE,00 成功;非零=失败 返回数据 可以为空 校验字节1 BYTE,命令字到返回数据的最后一字节的逐字节异或 注 如果从长度字到校验字节中有一个字节AA,则后跟一字节 00 以区分命令 头,但长度字不变 3.2. 3.示例(以下数据均为 16 进制表示) 发送 AA DD 00 03 01 03 02 返回 3 3 / 1010 AA DD 00 04 01 03AA 00A8 3.3、命令详解 上位机发送任何命令字读卡器都有相应的应答,以下标注的“应答数据 无”是指读卡器返回的数据包中“返回数据”部分为空;当发送的命令字无效 时,下位机会返回一个状态字节为 0 x0A 的数据包。 3.3. 1、设置读卡器命令 1.设置读卡器波特率 命令码0 x01 参数019600 0214400 0319200 0428800 0538400 0657600 07115200 备注 读卡器每次上电后初始默认波特率 38400,如果修改了读卡器波特率,上位 机波特率也应该在执行完这条指令后修改波特率。 应答数据无 2.获取读卡器型号 命令码0 x0102 4 4 / 1010 参数无备注 启动上位机时,第一步应该发送这条命令,看读卡器是否连接上。 应答数据 读卡器型号 3.蜂鸣 命令码0 x0103 参数1 字节蜂鸣时间,单位 5MS 应答数据无 4.设置 LED 颜色 命令码0 x0104 参数00 熄灭 01 红色 02 绿色 03 红、绿色 备注 读卡器上电时蜂鸣一声,绿灯闪一下,表示启动成功,之后红灯 xx,表示处于工作状态。 应答数据无 5.休眠模块 命令码0 x0105 参数无备注 5 5 / 1010 读卡器上电后处于工作状态,当模块接收到这条命令后就进入休 眠状态,全部 LED 熄灭,当模块再次接收到串口数据时,又会自动进入工 作状态,点亮红色 LED。 应答数据无 6.读 FDX_B 标签 命令码0 x010B 参数无备注 每个读写器都会带有这个功能,所以将这个命令看成是设置读写 命令。 应答数据10 BYTES 卡片数据,结构如下 5 BYTES 国内代码 2 BYTES 国家代码 3 BYTES 自定义数据 7.读 EM4100 xx 命令码0 x010C 参数无备注 每个读写器都会带有这个功能,所以将这个命令看成是设置读写 命令。 应答数据5 BYTES 卡片数据 3.3. 2、ATA5567 命令 除了读卡命令外,其它命令都是表示读卡器给卡片发送的命令,这些命令的返 回值仅表示由读卡器发送数据操作流程完毕,并不代表该命令是否正确被卡片接 受,如写卡命令在应用程序中,一般会有一个读卡命令来确定数据是否正确写入。 6 6 / 1010 1.写卡 命令码0 x0201 参数1 BYTE 页地址 1 BYTE Lock 4 BYTES 数据 1 BYTE 块地址 Lock0 x00 不固化,Lock0 x01 固化; 页地址 10(二进制)表示第 0 页 页地址 11(二进制)表示第 1 页 应答数据无 2.写卡(带密钥) 命令码0 x02 参数1 BYTE 页地址 4 BYTES 密码 1 BYTE Lock 4 BYTES 数据1 BYTE 块地 址 Lock0 x00 不固化,Lock0 x01 固化; 页地址 10(二进制)表示第 0 页 页地址 11(二进制)表示第 1 页 备注 当卡片加密后,必须用这个命令来完成写卡。应答数据无 3.唤醒卡片 命令码0 x0203 参数4 BYTES 密钥 备注 7 7 / 1010 当卡片的 AOR 位被设置成 0 时,卡片会自动向读卡器发送数据,当卡片的 AOR 位被设置成 1 时,卡片不会主动发送数据到读卡器上,直到接收到这条命 令,这条命令可用于防冲突,密钥被看做地址。 应答数据无 4.访问卡片 命令码0 x0204 参数1 BYTE 页地址 1 BYTE 块地址 页地址 10(二进制)表示第 0 页 页地址 11(二进制)表示第 1 页 备注 设置卡片自动返回的指定地址的数据块。 应答数据无 5.访问卡片(带密钥) 命令码0 x0205 参数1 BYTE 页地址 4 BYTES 密码 1 BYTE 块地址 页地址 10(二进制)表示第 0 页 页地址 11(二进制)表示第 1 页 备注 如果卡片的 PWD 位没有设置,这条命令将被卡片误认为是写卡操作。 应答数据无 6.选择存储页 8 8 / 1010 命令码0 x0206 参数1 BYTE 页地址 页地址 10(二进制)表示第 0 页 页地址 11(二进制)表示第 1 页 备注 ATA5567 总共两页 应答数据无 7.复位卡片 命令码0 x0207 参数无备注 用块 0 的配置重新复位卡片 应答数据无 8.读卡(Manchester RF/32) 命令码