hx-100D串口指令,嵌入式232串口开发接口协议
hx-100D身份证阅读机具串口指令,嵌入式232串口开发接口协议
1.数据格式
1.1 数据格式
数据格式(起始位,数据位,校验位,停止位)可以根据通讯的需要由软件设置,下面是设备支持的数据格式:
|
参数 |
描述 |
|
|
|
|
|
|
|
||
|
波特率 |
可选: 9600, 19200, 38400, 57600, 1152000 |
|||
|
数据位 |
固定: 8 bits |
|
|
|
|
起始位 |
固定: 1 Bits |
|
|
|
|
停止位 |
固定: 1 bit. |
|
|
|
|
校验位 |
可选: Odd, Even, None |
|
|
|
下面是默认设置: |
|
|
|
|
|
|
波特率 |
数据位 |
起始位 |
停止位 |
校验位 |
|
9600 |
8 |
1 |
1 |
None |
1.2 数据包格式
数据包格式,命令包是由主机发送到读写器,返回包是由读写器返回主机。
命令包格式 (主机到读写器):
STX |
STATION ID |
DATA LENGTH |
CMD |
DATA [0..N] |
BCC |
ETX |
(BCC) = STATION ID DATALENGTH CMD DATA [0] … DATA [n], where is the “EOR”.
返回包格式 (读写器到主机)
STX |
STATION ID |
DATA LENGTH |
STATUS |
DATA[0..N] |
BCC |
ETX |
(BCC) = STATION ID DATA LENGTH STATUS DATA [0] … DATA [n], where is the “EOR”.
数据包中字节描述:
字段 |
长度 |
描述 |
备注 |
STX |
1 |
0xAA – ‘起始字节’ – 标准控制字节. 表示一个数据 |
|
|
|
包的开始 |
|
|
|
|
|
STATION ID |
1 |
设备地址,在多机通讯所必需,读写器在收到数据 |
地址 0x00 是一个在 |
|
|
包后判断包内的地址与自身预设地址是否相符,相 |
单机模式下使用的 |
|
|
符才会响应。 |
特殊地址。读写器 |
|
|
|
会响应任何带 0 地 |
|
|
|
址的数据包(不进行 |
|
|
|
地址判断). |
DATALENGT |
1 |
数据包中数据字节的长度.包括 CMD/STATUS 和 |
|
H |
|
DATA field,但不包括 BCC. |
|
|
|
LENGTH= 字节数 (CMD/STATUS + DATA[0.. N]) |
|
|
|
|
|
- 1 -
ZKSoftware、ZKAccess、 ZKiVision、 ZKBiolock、 ZKAFIS 和 ZKTeco 均为中控科技在中国与其他国家已注册商标,未经中控
科技书面授权许可,不得擅自使用。版权©1998-2012 中控科技 版权所有 www.zkteco.com
CMD |
1 |
命令字:由一个命令字节组成. |
可以参照命令表 |
该字节只在发送包 |
|||
|
|
|
|
|
|
|
中使用 |
|
|
|
|
STATUS |
1 |
返回状态字节: 由读写器返回主机的状态 |
该字节只在返回包 |
|
|
|
中使用 |
|
|
|
|
DATA [0-N] |
0–255 |
这是一个长度与命令字有关的数据流。也有部分命 |
|
|
|
令不需要附加数据. |
|
BCC |
1 |
8bits 的校验字节.它包括除 STX, ETX 外所有字节 |
|
|
|
的异或校验. |
|
ETX |
1 |
0xBB:’终止字节’ – 标准控制字节,表示数据包的结 |
|
|
|
束. |
|
COMMANDS(命令)
|
|
|
命 |
令 表 |
|
|
|
|
|
命 令 字 |
|
名称 |
描述 |
|
|
|
|
|
|
|
|
ISO14443 TYPE A Commands (0x03~0x06) |
||
0x03 |
REQA |
|
|
ISO14443 -A 寻卡请求 |
0x04 |
Anticoll A |
|
|
防冲突 |
0x05 |
Select A |
|
|
选定卡 |
0x06 |
Halt A |
|
|
使卡进入 HAIT 状态 |
|
|
|
|
|
|
|
ISO14443B TYPEB Command ((0x09~0x0C) |
||
|
|
|
|
|
0x09 |
ReqB |
|
|
ISO14443B 寻卡命令 |
|
|
|
|
|
0x0A |
AnticollB |
|
|
IS14443-B 防冲突命令 |
|
|
|
|
|
0x0B |
Attrib_TypeB |
ISO14443B ATTRIB 命令 |
||
|
|
|
|
|
0x0C |
Rst_ TypeB |
|
|
集成了寻卡和 ATTRIB 命令通过此命令直接对卡进 |
|
|
|
|
行复位 |
|
|
|
|
|
0x0D |
ISO14443_TypeB_Transfer_ |
ISO14443B 传送命令,可以通过此命令向卡发任意 |
||
|
Command |
|
|
有效的命令,数据 |
|
|
|
|
|
|
|
|
|
|
|
|
Mifare Application Commands (0x20~0x2F) |
||
|
|
|
|
|
0x20 |
MF_ Read |
|
集成寻卡,防冲突,选卡,验证密码,读卡等操作,一 |
|
|
|
|
个命令完成读卡操作。 |
|
|
|
|
|
|
- 2 -
ZKSoftware、ZKAccess、 ZKiVision、 ZKBiolock、 ZKAFIS 和 ZKTeco 均为中控科技在中国与其他国家已注册商标,未经中控科技书面授权许可,不得擅自使用。版权©1998-2012 中控科技 版权所有 www.zkteco.com
0x21 |
MF_ Write |
集成寻卡,防冲突,选卡,验证密码,写卡等操作,一 |
|
|
个命令完成写卡操作。 |
|
|
|
0x22 |
MF_ InitVal |
集成寻卡,防冲突,选卡,验证密码等操作,一个命令 |
|
|
完成块值初始化操作。 |
|
|
|
0x23 |
MF_Decrement |
集成了寻卡,防冲突,选卡,验证密码,块值减操作, |
|
|
一个命令完成块减值操作。 |
|
|
|
0x24 |
MF_Increment |
集成了寻卡,防冲突,选卡,验证密码,块值加等操 |
|
|
作,一个命令完成块值加操作。 |
|
|
|
0x25 |
MF_GET_SNR |
集成了寻卡,防冲突,选卡等操作,一个命令完成读取 |
|
|
卡片序列号的操作 |
|
|
|
0x28 |
ISO14443_TypeA_Trans |
ISO14443 TypeA 通用命令,可以根据 ISO14443 |
|
fer_Command |
TypeA 向卡发任何数据 |
|
ISO15693 Commands (0x10~0x1D) |
|
|
|
|
0x10 |
ISO15693_Inventory |
寻卡,防冲突 |
|
|
|
0x11 |
ISO15693_Read |
读卡操作 |
|
|
|
0x12 |
ISO15693_Write |
写卡操作 |
0x13 |
ISO15693_Lockblock |
锁定卡扇区内容操作 |
0x14 |
ISO15693_StayQuiet |
将卡至于静止状态 |
|
|
|
0x15 |
ISO15693_Select |
选择卡 |
|
|
|
0x16 |
ISO15693_Resetready |
使卡进入 READY 状态 |
|
|
|
0x17 |
ISO15693_Write_Afi |
写 AFI |
|
|
|
0x18 |
ISO15693_Lock_Afi |
锁定 AFI |
|
|
|
0x19 |
ISO15693_Write_Dsfid |
写 DSFID |
|
|
|
0x1A |
ISO15693_Lock_Dsfid |
锁定 DSFID |
|
|
|
0x1B |
ISO15693_Get_Informatio |
获取卡信息 |
|
|
|
0x1C |
ISO15693_Get_Multiple_ |
获取块安全信息 |
|
ock_Security |
|
0x1D |
ISO15693_Transfer_Co |
可以通过此命令向卡片发任何数据和命令 |
|
mmand |
|
|
系统命令 (0x80~0xFF) |
|
|
|
|
0x80 |
SetAddress |
设置读写器地址 |
|
|
|
0x81 |
SetBaudrate |
设置通讯波特率 |
|
|
|
- 3 -
ZKSoftware、ZKAccess、 ZKiVision、 ZKBiolock、 ZKAFIS 和 ZKTeco 均为中控科技在中国与其他国家已注册商标,未经中控科技书面授权许可,不得擅自使用。版权©1998-2012 中控科技 版权所有 www.zkteco.com
0x82 |
SetSerlNum |
设置读写器的序列号 |
|
|
|
0x83 |
GetSerlNum |
读取读写器的序列号 |
|
|
|
0x84 |
Write_UserInfo |
设置用户数据信息 |
|
|
|
0x85 |
Read_UserInfo |
读取用户数据信息 |
|
|
|
0x86 |
Get_VersionNum |
用来读取模块的版本信息 |
|
|
|
0x87 |
Control_Led1 |
控制 led1 的工作方式(只有带有两个 LED 口的模块,支 |
|
|
持此命令) |
|
|
|
0x88 |
Control_Led2 |
控制 led2 的工作方式 |
|
|
|
0x89 |
Control_Buzzer |
控制 buzzer 的工作方式 |
|
|
|
3 System Commands
3.1 SetAddress (0x80)
发送数据:
DATA[0]: 要设置的新地址 ,十六进制表示。
正确返回:
STATUS: 0x00 – OK
DATA[0] 设置的地址
错误返回:
STATUS: 0x01 –FAIL
DATA[0] 参考错误代码表
描述: 为读写器设置新的地址,读写器返回设置好的地址.
比如:
发送命令: AA 00 02 80 02 80 BB
回执数据: AA 00 02 00 02 00 BB
3.2 SetBaudrate (0x81)
发送数据:
DATA[0] 波特率
0x00 – 9600 bps
0x01 – 19200 bps
- 4 -
ZKSoftware、ZKAccess、 ZKiVision、 ZKBiolock、 ZKAFIS 和 ZKTeco 均为中控科技在中国与其他国家已注册商标,未经中控
科技书面授权许可,不得擅自使用。版权©1998-2012 中控科技 版权所有 www.zkteco.com
0x02 – 38400 bps
0x03 – 57600 bps
0x04 – 115200 bps > 0x04—9600 bps
正确返回:
STATUS: 0x00 – OK
DATA[0] 设置的波特率代码.
错误返回:
STATUS: 0x01 –FAIL
DATA[0] 参考错误代码表
描述 : 设置读写器与主机通讯的波特率. 这个波特率将被保存到 EEPROM 内并作为新的默认波特率.设置好新的波特率后,系统开始使用新的波特率,而不需要复位。
比如:
发送命令: |
AA 00 |
02 81 01 82 BB |
|
回执数据: |
AA 00 |
02 00 01 03 BB |
(设置波特率为 19200,N,8,1) |
3.3 SetSerNum (0x82)
发送数据:
DATA[0..7]: 8 个字节的读写器序列号
正确返回:
STATUS: 0x00 – OK
DATA[0] 0x80(表示操作成功)
错误返回:
STATUS: 0x01 –FAIL
DATA[0] 参考错误代码表
描述: 设置 8 个字节的序列号。
比如:
发送命令: AA 00 09 82 AA BB AA BB AA BB AA BB 8B BB
回执数据: AA 00 02 00 80 82 BB
3.4 GetserNum (0x83)
发送数据: N/A
正确返回:
更多接口欢迎来电咨询:020-32201009-606
身份证阅读机具开发接口官网:http://www.hxanf.com
- 上一篇:普天CPIDMR身份证阅读器开发说明 2016/9/23
- 下一篇:消防岗哨系统--部队信息化管理的解决方案 2016/9/12