动态库和最底层读卡说明文档.docx_第1页
动态库和最底层读卡说明文档.docx_第2页
动态库和最底层读卡说明文档.docx_第3页
动态库和最底层读卡说明文档.docx_第4页
动态库和最底层读卡说明文档.docx_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

调用动态库方式:系统动态库文件MasterRDnew.dll MasterCom.dll 文件拷贝到windows/system32/目录底下,否则会提示连接设备失败。通用函数 功能:初始化串口原型:int WINAPI rf_init_com (unsigned short icdev,int port,long baud) 参数:icdev:通讯设备标识符,0-65536(新版本的动态库才有此参数)port:串口号,取值为19baud:为通讯波特率4800115200 返回:成功返回0 通用函数 功能:关闭串口原型:int WINAPI rf_ClosePort () 参数: 空返回:成功返回0通用函数 功能:蜂鸣器控制 原型:int WINAPI rf_beep (unsigned short icdev, unsigned char msec) 参数:icdev: 通讯设备标识符,0-65536 msec: 蜂鸣时限,单位是10 毫秒 返回:成功返回0 通用函数 功能:设置指示灯原型:int WINAPI rf_light(unsigned short icdev, unsigned char color) 参数:icdev: 通讯设备标识符,0-65536 color: 0 熄灭黄灯 1 熄灭绿灯2 点亮绿灯3 点亮黄灯M1卡专用 功能:寻TYPE_A卡原型:int WINAPI rf_request (unsigned short icdev, unsigned char model, unsigned short *TagType) 参数:icdev:通讯设备标识符,0-65536 model: 寻卡模式 TagType:返回卡类型值 返回:成功返回0 说明:mode=0x26:寻未进入休眠状态的卡 mode=0x52:寻所有状态的卡 M1卡专用 功能: TYPE_A卡防冲撞原型:int WINAPI rf_anticoll(unsigned short icdev, unsigned char bcnt, unsigned char *pSnr, unsigned char* pRLength) 参数:icdev:通讯设备标识符,0-65536 bcnt: 卡序列号字节数,取值4、7、10,Mifare 卡取值4 pSnr: 返回的卡序列号 pRLength:卡序列号长度 返回:成功返回0 4.1 UART协议l UART接口一帧的数据格式为 1个起始位,8个数据位,无奇偶校验位,1个停止位。l 波特率:19200l 发送数据封包格式:数据包帧头02数据包内容数据包帧尾03注:0x02、0x03被使用为起始字符、结束字符,0x10被使用为0x02,0x03的辨识字符。因此在通讯的传输数据之中(起始字符0x02,至结束字符0x03之中)的0x02、0x03、0x10字符之前,皆必须补插入0x10做为数据辨识之用。例如起始字符0x02,至结束字符0x03之中有一原始数据为0x020310,补插入辨识字符之后,将变更为0x100210031010。数据包内容:模块地址长度字命令字数据域校验字模块地址:对于单独使用的模块来说固定为0x0000;对网络版模块来说为0x00010xFFFE;0xFFFF为广播。长度字:指明从长度字到校验字的字节数命令字:本条命令的含义数据域:该条命令的内容,此项可以为空校验字:从模块地址到数据域最后一字节的逐字节累加值(最后一字节)。l 返回数据封包格式:同发送数据封包格式相同数据包内容:模块地址长度字接收到的命令字执行结果数据域校验字模块地址:对与单独使用的模块来说固定为0x0000;对网络版模块来说为本身的地址;长度字: 指明从长度字到数据域最后一字节的字节数命令字: 本条命令的含义执行结果:0x00 执行正确 0x01-0xFF 执行错误数据域: 该条命令的内容,返回执行状态和命令内容校验字: 从模块地址到数据域最后一字节的逐字节累加值(最后一字节)。5.2.1设置波特率:功能描述:用于设置模块内部的通讯波特率:发送数据序列:帧头发送数据包内容帧尾模块地址长度命令插入发送数据校验0x020x00,0x000x040x150x100x030x1C0x03发送数据=0x03表示设置模块波特率为19200;注:白色部分为正常的指令序列,因为在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03,根据通讯协议需在其前面增加0x10,即黄色的部分;正确返回数据序列:帧头正确返回数据包内容帧尾模块地址插入长度命令执行结果返回数据校验0x020x00,0x000x100x030x150x00空0x180x03注:黄色部分0x10为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03后自动增加的,故在操作接收数据时需过滤掉;错误返回数据序列:帧头错误返回数据包内容帧尾模块地址插入长度命令执行结果返回数据校验0x020x00,0x000x100x030x15非零空XXXX0x03注:黄色部分为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03后自动增加的,故在操作接收数据时需过滤掉;发送与返回正确举例:【发送数据:】02 00 00 04 15 10 03 1C 03 【接收数据:】02 00 00 10 03 15 00 18 035.2.3控制LED引脚状态:功能描述:用于控制模块LED引脚的状态:发送数据序列:帧头发送数据包内容帧尾模块地址长度命令数据校验0x020x00,0x000x040x6A0x00或者0x6E或者0x030x100x030x71注:数据部分为1字节LED引脚状态控制: 数据=0x00 LED引脚输出高电平,如果外接LED指示灯,则灯熄灭;数据=0x03 LED引脚输出低电平,如果外接LED指示灯,则灯点亮;白色部分为正常的指令序列,因为在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03,根据通讯协议需在其前面增加0x10,即黄色的部分;正确返回数据序列:帧头正确返回数据包内容帧尾模块地址插入长度命令执行结果返回数据校验0x020x00,0x000x100x030x6A0x00空0x6D0x03注:黄色部分为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03后自动增加的,故在操作接收数据时需过滤掉;错误返回数据序列:帧头错误返回数据包内容帧尾模块地址插入长度命令执行结果返回数据校验0x020x00,0x000x100x030x6A非零空XXXX0x03注:黄色部分为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03后自动增加的,故在操作接收数据时需过滤掉;发送与返回正确举例:【发送数据:】02 00 00 04 6A 10 03 71 03 【接收数据:】02 00 00 10 03 6A 00 6D 035.2.5 Mifare one卡寻卡:功能描述:用于Mifare one卡的寻卡,返回卡片类型:发送数据序列:帧头发送数据包内容帧尾模块地址长度命令发送数据校验0x020x00,0x000x040x460x26或者0x70或者0x030x520x9C注:数据部分为1字节寻卡模式;发送数据=“0x26” 寻未进入睡眠状态的卡;发送数据=“0x52” 寻天线范围内的所有状态的卡;正确返回数据序列:帧头正确返回数据包内容帧尾模块地址长度命令执行结果返回数据校验0x020x00,0x000x050x460x000x04 0x000x4F0x030x100x02 0x000x4D返回2字节卡类型:返回数据=0x04 0x00表示Mifare one S50卡;返回数据=0x02 0x00表示Mifare one S70卡;注:黄色部分为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03后自动增加的,故在操作接收数据时需过滤掉;错误返回数据序列:帧头错误返回数据包内容帧尾模块地址插入长度命令执行结果返回数据校验0x020x00,0x000x100x030x46非零空XXXX0x03注:黄色部分为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0x02或0x10或0x03后自动增加的,故在操作接收数据时需过滤掉;发送与返回正确举例:【发送数据:】02 00 00 04 46 52 9C 03 【接收数据:】02 00 00 05 46 00 04 00 4F 03 (通过返回数据可判断为S50卡)5.2.6 Mifare one卡防冲突:功能描述:用于Mifare one卡的防冲突指令,返回卡片唯一序列号,注该指令发送之前必须先发送寻卡指令,并且如果需要对卡进行读写等操作时,在该条指令之后还要发送选卡指令:发送数据序列:帧头发送数据包内容帧尾模块地址长度命令发送数据校验0x020x00,0x000x040x470x040x4F0x03注:数据部分为1字节卡序列号字节数;发送数据=“0x04” Mifare S50,S70卡序列号为4字节,故数据为0x04;正确返回数据序列:帧头正确返回数据包内容帧尾模块地址长度命令执行结果返回数据校验0x020x00,0x000x070x470x004字节卡号XXXX0x03返回4字节卡序列号:错误返回数据序列:帧头错误返回数据包内容帧尾模块地址插入长度命令执行结果返回数据校验0x020x00,0x000x100x030x47非零空XXXX0x03注:黄色部分为模块在返回数据时,在帧头0x02帧尾0x03之间出现了0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论