内容发布更新时间 : 2024/12/25 23:45:27星期一 下面是文章的全部内容请认真阅读。
Temic卡(感应式)门锁接口开发包使用说明
一、Temic卡门锁工作原理
卡中主要有作业流水号、时间长度两种类型参数来决定开启房门的条件: 1. 更换作业流水号标志,其中作业流水号是由日期时间中的年月日时+1小时内所发卡
的序号组成。1小时内的发卡序号需由开发人员在程序设计时做好分析判断,并确认可用的序号。
卡中作业流水号必须大于等于门锁电路板中作业流水号,否则将导致开门失败。
2. 取消在用的客人卡(可解释为挂失客人卡)标志使用方法:单个客人必须置对应标
志位为1;多个客人住同一间房时的情况可举例说明如下: 若一个房间同时发三张卡,第一张卡对应挂失标志为需置为1,后两张卡该挂失标志位需置为0。
3. 最重要的是需在接口软件中写客人卡之前,应先将工具软件 GetLockID.exe拷贝至
门锁软件工作目录下,然后再运行GetLockID.exe文件,运行后选择对应的门锁软件的版本号,然后获取门锁软件中的房号与门锁编号对应表文件,再将此文件中的房号门锁编号关系,改成自已的对应表; 或在门锁软件中每一房号写一遍客人卡,然后一一读出客人卡的门锁编号来建立你自己的房号门锁编号对应库,剩下的过程就简单了。
4. 特别注意,每张卡的作业流水号务必保持唯一并且存挡,它是开门查询的依据。
二、函数声明原型
接口动态库文件:LCRFRW_SDK.dll
1. 打开串口
int mif_selecom(int com,int baud); 2. 读卡
int tem_readdoorcard_sdk(LPSTR BH, LPSTR buff) 返回10个字符的门锁编号; 3. 写卡
int tem_writedoorcard_sdk(LPSTR BH, LPSTR fksj,int xh,int sjdw,int sjlength,bool gs)
写10个字符的门锁编号:
4. 关闭串口
int mif_closecom(void);
三、用户接口软件开发使用步骤
1. 将获取房号门锁编号工具文件GetLockID.exe拷贝至门锁软件工作目录下。
2. 运行GetLockID.exe文件,选择对应门锁软件版本,然后按[获取]按钮,得出房号门锁编号对应关系表,获取的此表文件存放于门锁软件的工作目录下的LockID.ini,用户可直接将此文件拷贝至接口工作目录下,接口软件可直接对此表进行操作,或另建自已的数据库表进行读操作。LockID.ini文件说明:
此文件中左边是房号,右边是对应此房号的门锁编号。
3. 将门锁接口文件LCRFRW_SDK.dll拷贝至接口程序工作目录下。
4. 接上专用的接口读写器,安装USB读写器驱动(运行USBDriver_RW.exe驱动程序即可自动完成)。
5. 使用专用的接口读写器,否则接口函数在读写卡时将返回错误代码值129。
6. 建立自己的房号门锁编号对应关系表,这里有两种方法:
A. 利用GetLockID.exe工具软件获取的房号与门锁编号对应关系表,将此对应关
系表填入自已的房号门锁编号数据表中,或直接使用此表; B.
C. 利用SDK接口读卡函数或演示程序读出卡片数据中的门锁编号部分。
房号门锁编号对应关系表至少应包括门锁编号及所对应的房号字段,门锁编号为10个字符长度的字段,如下表(此表是假设用户建立起的自已的房号数据表)
门锁编号 Abcd0001 Efgh0002 Acda0003 Bded0004 . 房号 101 102 201 202 . … … … … … . 表1
注:存入的门锁编号字段值用户不要关心它是否具务一定的规律性的,其值是门锁软件自动分配的一个没有规律的门锁编号,用户只需将此编号作为写卡参数即可。门锁系统就是用此编号对房门进行编号且为唯一一标识号,它是决定是否能开门的条件之一。
7. 开始读卡,将读出卡中的门锁编号及日期时间序号,读出的门锁编号为10个字符。在写卡之前用户可以不进行读卡,根据实际应用情况用户可选择读卡或不读卡。 8. 输入房号,接口软件需从房号数据表找到此房号所在记录所对应的门锁编号字段值,如输入房号201则接口软件将找到门锁编号为Acda0001,用此门锁编号作为写卡函数中的门锁编号的参数值。
9. 将当前时间、发卡序号(1小时内)、时间单位、对应时间单位的时间长度、是否挂失在用的客人卡标志等内容按规定的格式作为写客人卡时的对应参数。 10. 开始将已准备好的参数数据写入卡中。
接口程序的函数调用的步骤一般为:
A. 打开串口
int mif_selecom(int com,int baud); B. 读卡
int tem_readdoorcard_sdk(LPSTR BH, LPSTR buff) 返回10个字符的门锁编号;
C. 写卡
int tem_writedoorcard_sdk(LPSTR BH, LPSTR fksj,int xh,int sjdw,int sjlength,bool gs)
写10个字符的门锁编号;
D. 关闭串口
int mif_closecom(void);
四、函数使用说明
1. 打开串口
int mif_selecom(int com,int baud); 〖参 数〗
COM=0:串行口一 COM=1:串行口二 Baud=9600(固定); 〖返回值〗
0:正确;其它:参看函数返回代码
注意:
1. USB读写器在安装驱动后,其串口号值的查看如下所示:
在桌面上找到我的电脑,在我的电脑上按右键->点击属性->点击硬件->点击设备管器,如下图: