ImageVerifierCode 换一换
格式:DOCX , 页数:55 ,大小:45.62KB ,
资源ID:11341662      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11341662.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(物联网RFID开发套件通讯协议.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

物联网RFID开发套件通讯协议.docx

1、物联网RFID开发套件通讯协议物联网RFID开发套件通讯协议基础产品开发部V1.0.11文档介绍1.1文档内容说明本文档定义了主要数据接口的通信协议,即本设备与服务终端(包括PC机、上级终端设备等) 之间数据传输的格式,便于扩展和完善。服务终端按照此协议与该设备进行数据交互,完成各种应用功能。应用项目:RFID实验箱 硬件开发平台:STM32F103xx软件开发环境:KEIL4.01.2术语与缩写解释缩写、术语解 释本设备实验箱服务终端包括PC机、平板、上级终端设备等2通讯协议描述本设备作为从设备与服务终端的通讯方式:串口(有线方式):波特率:115200Bps(固定) 起始位:1bit结束位

2、:1bit数据位:8bits校验位:无本设备接收服务终端数据的超时控制:两个数据之间的超时时间是10ms。本设备在接收服务终端数据包的时候,要是接收超时,不发送任何错误应答数据包,继续等待下一个数据包;如果已接收到整包,但有错(效验错误等),则应回发错误应答数据包,便于服务终端及时处理。本设备作为从设备,无重发机制。采用一问一答方式,即本设备收到一个数据包后回送一个应答数据包。服务终端可自行制定重发和应答超时控制。2.1消息格式说明完整的数据通讯包如下:服务终端发送:同步码包头长度校验开关模块号功能号数据域校验包尾STXLENChkSWModelFuncCHKETX55H04HXXH+XXHX

3、XHXXHXXHCRC06H8BYTE1BYTE2BYTE1BYTE1BYTE1BYTEN BYTE2BYTE1BYTE设备响应(应答):同步码包头长度校验开关模块号功能号数据校验包尾STXLENChkSWModelFuncCHKETX04HXXH+XXHXXHXXHXXH+ CRC06H8BYTE1BYTE2BYTE1BYTE1BYTE1BYTEN BYTE2BYTE1BYTE注释:H-表16进制数据。各字段说明:同步码-8个55H, 仅做为数据同步判断,不作为数据包有效数据,每个数据包开始必须包括。(后面有关数据包的描述省略此字段。)包头 -STX,完整消息包的起始标识。1byte,固定为

4、0x04。长度 - LEN ,(2字节,低端模式即低字节在前)表示从LEN的下一个字节开始到CHK结束的字节数(固定字节为5, 再加上数据域的长度就是LEN的值)校验开关 - ChkSW ,(1字节)表示是否要crc校验,0要,其他不要。(crc校验的字节都是存在的,区别在于是否要以crc校验来判断数据包的正确性 )模块号- Model ,(1字节)表示不同功能的模块。功能号- Func ,(1字节)功能(命令)编号。ST - (1字节)设备应答状态字节。DATA - 交换的数据信息,最大长度4096(暂定)字节。校验 - (2字节, 低端模式即低字节在前)从长度开始到数据域结束的所有字节CR

5、C16结果。包尾 - 数据包结束标志,固定为0x06。注:目前选用CRC16校验方式。生成多项式为CCITT推荐的16位的x16+x12+x5+1(0x11021)。发送方根据通信包生成2字节的CRC检验;同样,接收方收到完整的数据包后,根据通信包生成新的CRC检验值。如果所计算出的CRC值和收到的校验值相同则表明该数据包有效,否则认为该包在传输的过程中产生了差错。对于CRC校验出错的通信包,接收方不进行处理,直接返回错误应答包。 校验单元在数据传输时,按照小端模式进行传输,即低字节传输在前,高字节传输在后。若ChkSW!=0,发送方校验值可随意填写,但不可省略;接收方不进行CRC校验判断。2

6、.2模块号分类模块模块号说明系统00H未用,预留LED 蜂鸣器02H未用,预留125K低频模块03H900M超高频模块04h有源RFID05h13.56M高频模块(RC531)07HNFC(PN512)06H打印机08H未用,预留二维码硬解码09H未用,预留二维码软解码0AH未用,预留2.3状态返回码分类模块错误编码说明系统00H0FH LED 蜂鸣器20H2FH非接触式卡70H7FH3协议交互3.1流程本设备为被动方,消息交互由终端等主机发起。设备收到一个消息包后,根据消息内容作相应处理,回送一个应答消息包。正常消息交互流程如下图所示:通信正常消息交互交互由服务终端发起,服务终端在数据发送完

7、成后,及时启动接收定时器Tout,并等待接收方消息应答。超时参数Tout由服务终端根据消息特点自行决定。服务终端在Tout时间内未能成功接收到接收方的消息应答,是否重发及重发次数由服务终端决定。3.2交互详述实例以通讯握手为例:3.2.1服务终端设备: 0x04 0x06 0x00 0x00 0x00 0x01 0x53 chk(2) 0x06各具体说明如下:1.0x04: 消息起始标志,固定为0x05。2.0x06 0x00: 协议字节长度,低字节在前,2字节组合后为0x0006 共6个字节。3.0x00:ChkSW字段4.0x00: 模块号0x00为系统模块。5.0x01:功能号0x01

8、握手协议。6.0x53:数据(字符S)。7.chk(2):校验字, 2BYTE,低字节在前。8.0x06: 消息结束标志,固定为0x06。3.2.2设备服务终端:0x04 0x06 0x00 0x00 0x00 0x01 0x00 chk(2) 0x06各具体说明如下:1.0x04: 消息起始标志,固定为0x05。2.0x06 0x00: 协议字节长度,低字节在前,2字节组合后为0x0006 共6个字节。3.0x00:ChkSW字段4.0x00: 模块号0x00为系统模块5.0x01: 功能号0x01 握手协议。6.0x00:应答数据(握手成功)。7.chk(2):校验字, 2BYTE,低字节

9、在前。8. 0x06: 消息结束标志,固定为0x06。4系统功能描述(暂不支持)4.1握手协议服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H06H 00Hxx00H01HSCRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05HO1H 00xx00H01HCRC06H参数说明:功能:发送握手请求,搜索是否有设备存在参数:无返回:00H握手成功,表明设备存在且工作正常。01H握手失败,表明无设备或出现故障。注释:4.2驱动版本信息查询服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05H01H 00xx00H02HDCRC06H设备响应:包头长度

10、ChkSW模块号功能号数据校验包尾04H05HXXH 00xx00H02H gDriverSoftVer+CRC06H参数说明: 功能:查询设备驱动版本信息参数:无返回:00H成功其他失败注释:返回值说明:(以字符串方式)gDriverSoftVer; /驱动软件版本4.3应用版本信息查询服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05H01H 00xx00H02HACRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05HXXH 00xx00H02H gAppSoftVer +CRC06H参数说明: 功能:查询设备应用版本信息参数:无返回:00H成功其他失

11、败注释:返回值说明:(以字符串方式)gAppSoftVer; /应用软件版本4.4系统功能返回码说明功能:在每一模块中,系统返回值说明参数:无返回:00H成功01H握手失败,表明无设备或出现故障。02H接收通信命令长度错误03H模块错误0X04功能号错误0x05校验错误0x06数据包其他错误0x07参数错误注释:513.56M高频非接触式卡模块功能 非接触卡的英文名称为Contactless Card。在POS中,非接触卡专指近距离射频非接触IC卡,其英文名称为Proximity Integrated Circuit Card(邻近式IC卡),简称PICC。非接触卡模块能访问ISO14443标

12、准规定的A型CPU卡、B型CPU卡,以及MIFARE 1卡。这三种卡均采用由非接触卡模块产生的13.56MHz载波来激励和驱动,卡片应放到非接触卡模块的感应区内(面对天线约6厘米的范围内)。常见的M1卡容量为1K字节,分为64块,每块16字节。每4块依次组成一个扇区,扇区是一个相对独立的可操作单元,可用于存放一个钱包、两个密码(A密码和B密码),用以支持小额支付方面的应用。5.1打开模块(打卡天线)服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H0501 00xx07H01H无 CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H01H

13、CRC06H参数说明: 功能:打开模块(天线)参数:无返回:00H成功其他失败注释:在寻卡是会自动打开5.2寻卡服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05xx 00xx07H10H +CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H10H +CRC06H参数说明: 功能:按指定的模式搜寻PICC卡片; 参数:ModeREQmode =0x00或0搜寻磁场中的所有类型的RFID卡(此方式时原有状态可能会被改变,做原理机建议建议不要用)mode = m或M - 搜寻M1卡;mode = c或C -搜寻CPU卡;3 如在3秒内没搜

14、到卡,则返回无卡REQ: 寻卡方式 0x00:仅搜寻IDLE状态的卡(不唤醒HALT状态的卡) 非0:搜寻所有状态的卡(包括唤醒HALT状态的卡)返回:00H成功70H无卡71H参数错误 72H模块未开启注释:5.3防冲突服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05xx 00xx07H11H无CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H11H + +CRC06H参数说明: 功能:对搜到卡片进行防冲突检测。参数:CardType卡片类型字节缓冲区;目前均返回二字节的类型值:CardType0 、CardType1 :Card

15、Type0 :卡调制类型aA 搜寻到A型卡bB 搜寻到B型卡CardType1 :卡逻辑类型cC 搜寻到CPU卡 mM 搜寻到M1卡SerialNo卡片序列号信息的缓冲区首址.该信息依次包含了序列号长度和序列号内容等两项内容.B型卡和M1卡的序列号均为4字节;A型卡的序列号一般为4字节,也有7字节或10字节的.采用字节SerialNo0指示序列号的长度,SerialNo110保存序列号(左对齐).若需要读取序列号、则先要读取长度字节.返回:00H选卡成功70H无卡71H参数错误 72H模块未开启73H防冲突失败注释:5.4选卡服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05x

16、x 00xx07H12H无CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H12H + +CRC06H参数说明: 功能:对防冲突检测成功的卡,将其选中和激活。参数:CardType卡片类型字节缓冲区;目前均返回二字节的类型值:CardType0 、CardType1 :CardType0 :卡调制类型aA 搜寻到A型卡bB 搜寻到B型卡CardType1 :卡逻辑类型cC 搜寻到CPU卡 mM 搜寻到M1卡SerialNo卡片序列号信息的缓冲区首址.该信息依次包含了序列号长度和序列号内容等两项内容.B型卡和M1卡的序列号均为4字节;A型卡的序列号一般

17、为4字节,也有7字节或10字节的.采用字节SerialNo0指示序列号的长度,SerialNo110保存序列号(左对齐).若需要读取序列号、则先要读取长度字节.返回:00H选卡成功70H无卡71H参数错误 72H模块未开启73H冲突74H选卡失败注释:5.5激活卡收到此命令后,设备依次做【寻卡】、【防冲突】、【选卡】动作服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05xx 00xx07H02H +CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H02H + +CRC06H参数说明: 功能:按指定的模式搜寻PICC卡片;搜到卡片后,将

18、其选中和激活。参数:ModeREQmode =0x00或0搜寻磁场中的所有类型的RFID卡(建议不要用)mode = m或M - 搜寻M1卡;mode = c或C -搜寻CPU卡;3 如在3秒内没搜到卡,则返回无卡REQ: 寻卡方式 0x00:仅搜寻IDLE状态的卡(不唤醒HALT状态的卡) 非0:搜寻所有状态的卡(包括唤醒HALT状态的卡)CardType卡片类型字节缓冲区;目前均返回二字节的类型值:CardType0 、CardType1 :CardType0 :卡调制类型aA 搜寻到A型卡bB 搜寻到B型卡CardType1 :卡逻辑类型cC 搜寻到CPU卡 mM 搜寻到M1卡Seria

19、lNo卡片序列号信息的缓冲区首址.该信息依次包含了序列号长度和序列号内容等两项内容.B型卡和M1卡的序列号均为4字节;A型卡的序列号一般为4字节,也有7字节或10字节的.采用字节SerialNo0指示序列号的长度,SerialNo110保存序列号(左对齐).若需要读取序列号、则先要读取长度字节.返回:00H选卡成功70H无卡71H参数错误 72H模块未开启73H冲突74H选卡失败注释:5.6卡APDU命令处理服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H03H+ CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07

20、H03H+CRC06H参数说明: 功能:向卡片发送APDU格式的数据,并接收响应输入参数CLENC-APDU的总长度,2byte, 低端模式C-APDUAPDU命令输出参数DLEND-APDU的总长度,2byte, 低端模式D-APDU返回的APDU应答ST00H写入成功71H参数错误72H模块未开启7AHAPDU失败注释:仅cpu卡。命令应用协议数据单元按照ISO/IEC7816规范格式。5.7卡移开服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H0500 00xx07H04H CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H0501 00xx07H04H

21、CRC06H参数说明: 功能:判断卡片是否已经移开感应区参数:返回:00H卡片已移开感应区72H模块未开启74H卡片未移开感应区注释:5.8卡HALT服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H0500 00xx07H05HCRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H0501 00xx07H05HCRC06H参数说明: 功能:向卡片发送HALT指令 ,使PICC进入HALT状态参数:无返回:00H成功7CH失败注释:仅对 M1卡有效5.9关闭模块(关闭天线)服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H0500 00xx07H07HC

22、RC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H0501 00xx07H07HCRC06H参数说明: 功能:关闭非接触卡模块,使该模块处于关闭状态参数:无返回:00H关闭成功注释:执行该命令后,非接触卡模块变成关闭状态,模块不再向外面辐射射频载波。5.10M1卡密码认证服务终端发送:包头长度ChkSW模块号功能号数据校验包尾04H05XX 00xx07H08H+ CRC06H设备响应:包头长度ChkSW模块号功能号数据校验包尾04H0501 00xx07H08HCRC06H参数说明: 功能:验证M1卡访问时读写相应块需要提交的A密码或B密码。参数:Type用于指定提交的密码类型:(1字节)A 提交的是A密码B 提交的是B密码BlkNo(1字节) 用于指定访问的块号,对于1K容量的M1卡,其有效范围为063。Pwd(6字节) 提交的密码。SerialNo存放卡片序列号 。字节SerialNo0指示序列号的长度,SerialNo110保存序列号(左对齐).返回:00H写入成功72H模块未开启71H参数错误75H密码认证失败注释:M1卡依次以每四块组成一个扇区;每扇区的最后一块是控制块,存放着A密码、B密码以及各块的权限控制信息;A密码和B密码均为6字节,每块长度为16字节。4个块的读写仅用两个6字节的密码来保护,故其安全性不

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1