temic卡门锁接口开发包说明_第1页
temic卡门锁接口开发包说明_第2页
temic卡门锁接口开发包说明_第3页
temic卡门锁接口开发包说明_第4页
temic卡门锁接口开发包说明_第5页
全文预览已结束

下载本文档

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

文档简介

1、Tem(感应式)门锁接口开发包使用说明一、Tem门锁工作原理卡中主要有作业流水号、时间长度两种类型参数来决定开启房门的条件:1 更换作业流水号标志,其中作业流水号是由日期时间中的年月日时+1 小时内所发卡的序号组成。1 小时内的发卡序号需由开发认可用的序号。在程序设计时做好分析判断,并确卡中作业流水号必须大于等于门锁电路板中作业流水号,否则将导致开门失败。2 取消在用的客人卡(可解释为挂失客人卡)标志使用方法:单个客人必须置对应标志位为 1;多个客人住同一间房时的情况可举例说明如下:若一个房间同时发三张卡,第一张卡对应挂失标志为需置为 1,后两张卡该挂失标志位需置为 0。3 最重要的是需在接口

2、后读出客人卡的门锁中写客人卡之前,应在门锁系统中写一遍客人卡,然来建立你自己的对应库,剩下的过程就简单了。4 特别注意,每张卡的作业流水号务必保持唯一并且存挡,它是开门查询的依据。二、函数原型接口动态库文件:32.dll1 打开串口(com,baud);2 读卡tem_readmsdata(LPSTR BH, LPSTR buff);返回 4 字符的门锁(不可见字符);tem_readmsdata1(LPSTR BH, LPSTR buff)返回 8 个字节字符的门锁(可见字符);3 写卡tem_writemsdata(LPSTR BH, LPSTR fksj,xh,sjdw,sjlength

3、,bool gs)写 4 字符的门锁(不可见字符);tem_writemsdata1(LPSTR BH, LPSTR fksj,写 8 字节字符的门锁(可见字符):xh,sjdw,sjlength,bool gs)4 关闭串口(void);三、用户接口开发使用步骤1. 将门锁接口文件32.dll 拷贝至接口程序工作目录下。2. 利用 SDK 接口读卡函数读出卡片数据中的门锁部分,建立起自己的门锁库。门锁库至少应包括门锁及所对应的房号字段,门锁一般为 4 或 8 个字节长度的字段,如下表(此表是假设用户建立起的自已的房号数据表)表 1注:存入的门锁字有的值是不可见的,但用户不必关心(根据实际使用

4、情况调用相应的函数即可命名用门锁可见或不可见),门锁系统就是用此对房门进行且为唯一一标识号,它是决定是否能开门的条件之一。3. 开始读卡,将读出的卡中的门锁及日期时间序号,读出的门锁为不可见字符,用户可不用关心它是什么内容(根据实际使用情况调用相应的函数即可命名用门锁可见或不可见),只需准确将此 4 个字节或 8 个字节的数据存入自已的门锁编号房号库中,在写卡调用此门锁值时同时也必须准确取出 4 个字节或 8 个字节的数据值。门锁4. 输入房号,接口写卡之前可以不进行读卡,但需根据实际应用情况而定。需从房号数据表找到此房号所在所对应的门锁字,参如输入房号 201 则接口数值。将找到门锁为 Ac

5、da,用此作为写卡时的5. 将当前时间、发卡序号(1 小时内)、时间、对应时间的时间长度、是否挂失在用的客人卡标志等内容按规定的格式作为写客人卡时的对应参数。6. 开始将已准备好的参数数据写入卡中。四、函数使用说明1 打开串口(com,baud);参 数 COM=0:串行口一 COM=1:串行口二 Baud=9600(固定);返回值0:正确;其它:参看函数返回代码2 读卡tem_readmsdata(LPSTR BH, LPSTR buff);BH: 门锁buff:卡,4 字符长度(4 个字节不可见字符),期时间,长度为 10 个字符,前 8 个为年月日时,后两位为一小时内发卡序号,读出结果为

6、作业流水号。每张卡的作业流水号是唯一的。tem_readmsdata1(LPSTR BH, LPSTR buff)BH: 门锁buff:卡,8 字符长度(8 个字节可见字符),期时间,长度为 10 个字符,前 8 个为年月日时,后两位为一小时内发卡门锁房号Abcd101Efgh102Acda201Bded202.序号,读出结果为作业流水号。每张卡的作业流水号是唯一的。在读卡之前,卡片必须经门锁系统写过一次客人卡(主要是写入客人卡标识),否则读卡将失败返回。返回值0:正确;其它:参看函数返回代码3 写卡tem_writemsdata(LPSTR BH, LPSTR fksj,xh,sjdw,sj

7、length,bool gs)写 4 字节不可见字符的门锁;tem_writemsdata1(LPSTR BH, LPSTR fksj,xh,sjdw,sjlength,bool gs)写 8 字节可见字符的门锁:参 数BH: 门锁,在 tem_writemsdata 函数中为 4 字符长度 HEX),在t em_writemsdata1函数中为 8 字符长度(ASC)。发卡时间,为年月日时,每个两位,比如发卡时间为 2004 年 8 月 9 日 10 点,fksj= “04080910”;注意:如果一小时内的发卡序号超过 63 此发卡时间可以小时+1 方式进行。比如,当前时间是 2004 年

8、 08 月 09 日 10 点,如在此 10 点内的发卡序号在 0-63 内则此参数值为 04080910,如在此 10 点内的发卡序号已超过 63,则此参数值为04080910+1 小时=04080911,同时发卡序号再从 0 开始。fksj:客人退房时仍可调用此函数进行退房写卡,此时的写卡参数中的 BH=实际门锁编号,fksj=00000000,xh=0,sjdw=0,sjlength=1,gs=0 即可达到退房功能。xh:一小时内发卡序号,从 0 到 63;此发卡序号意为当前写卡时间的小时内的第几次写卡,如果在当前小时内的写卡次数超过64 次(即发卡序号大于63),则需要将fksj 参数

9、以小时数+1 为新的fksj参数进行写卡,同时此发卡序号复位为 0 开始(即新的 fksj 中的序号)。sjdw:时间(小时/天/月/年);0 为小时,1 为天,2 为月,3 为年。其它为天sjlength:时间长度;卡片有效时间。为几天或为几小时。取值范围(0-63 小时/ 0-63天/ 0-15 月 /0-3 年)gs:1 为取消在用的客人卡(挂失),0 为不取消(不挂失)。退房时间的钟点在非小时时间时是由门锁系统自行设定,接口不用关心。返回值0:正确;其它:参看函数返回代码4 关闭串口(void);参 数无返回值0:正确;其它:参看函数返回代码注:读写卡完成后必须调用此函数关闭串口,以便

10、串口资源。五、总卡,栋卡,层卡的制作(更新:2007-10-15)说明:此类卡的制作与客人卡的制作基本相拟,只需将读客人卡的更换成读相应总卡或栋卡或层卡的,具体说明如下:在门锁系统中制作一总卡或栋卡或层卡,然后用演示程序或接口程序读出此卡的门锁编号,读出后保存至自已的数据库中,并标明此为总卡或栋卡或层卡的,接口程序制作总卡或栋卡或层卡时首先在自已的数据库中找到此总卡或栋卡或层卡对应的此值作为参数调用写卡函数(writemsdata1()即可。如下表所示:然后用即写卡函数 writemsdata1()能制作所有开门卡,调用时仅仅门锁参数意义均一致相同.参数有所变化,其它同样,接口程序在制作总卡或

11、栋卡或层卡均需用在门锁系统中制过的客人卡进行制作。六、时钟卡的制作(更新 2007-12-08)必须在门锁管理1 读时钟卡中写过一次的时钟卡.tem_readtimercard(LPSTR fksj,LPSTR lpTime)参数说明:fksj:卡期时间,长度为 10 个字符,前 8 个为年月日时,后两位为一小时内发卡序号,读出结果为作业流水号。lpTime:上次写卡的时钟,时钟格式为年+月+日+时+分, 长度为 10 个字符,每段均占用 2 位,如 0712081530 表示 2007 年 12 月 8 日 15 点 30 分2 写时钟卡tem_writetimercard(LPSTR fk

12、sj,参数说明:nXh, LPSTR lpTime)fksj: 发卡时间,长度为 8 个字符,分别年月日时,每个两位,比如发卡时间为 2004年 8 月 9 日 10 点,fksj=“04080910”;xh: 一小时内发卡序号,从 0 到 63;lpTime:写入的时钟, 长度为 10 个字符(传递至门锁的时钟),分别年月日时分,每个两位,精确至分钟,如 0408092052 表示需要将门锁时钟调至 2004 年 8 月 9 日 20 点 52 分.注意:时钟中的年月日与流水号的年月日需相同卡类Abcd总卡Efgh栋卡Ijkl层卡七、函数返回代码八、注意1. 所有客人卡片都必须在门锁系统中写

13、一遍客人卡。2. 发卡原则,客人卡按酒店管理系统,而其他卡片均需在门锁系统。3.多个门锁在不同卡片之间串发。4. 正式开通使用,建议将所有卡片全部收回之后,再发一张复位卡把所有门锁的数据复位,然后再进行发卡。5. 特别注意计算机时间一定不能出现,保持时间正确,否则可能导致开门失败。6. 如果某客人卡经门锁自身系统的注销或回收功能后,需将此卡再次一次客人卡,否则在接口中读写卡将失败。九、开发示例当前已包括 VB6.0,VFP6.0,Delphi5.0,PB9.0 环境下的四种语言工具样例源代码,以便用户参考。注意,示例程序程序代码的参考,通过示例程序读写出的开门卡,因写卡函数的参数与实际门锁与实际门锁应用的差异,所以不能保证能正确开门,但是只要写卡函数中的参数应用的对应则可成功开启门锁。强烈建议开发事先必须认真阅读并理解此文档,这样才能保证完成接口任务。更新日期:2009-05-13代码描述原因解决方法0正确1通讯错误通讯底层中断检查通讯硬件是否存在2超时错误错误检查硬

温馨提示

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

评论

0/150

提交评论