1、64科技资讯科技资讯 SCIENCE 其协议并没有定义通讯的波特率、也没有定义数据长度 ,韦根格式主要定义是数据传输方式 :Data0和Data1两根数据线分别传输 0和 1。现在应用最多的是 26bit,34bit,36bit,44bit等等。Wiegand数据输出由二根线组成 ,DATA0和DATA1二根线分别将 0或 1输出 :输出 0时 ,DATA0线上出现负脉冲 ;输出 1时 ,DATA1线上出现负脉冲。其中负脉冲单片机控制的智能门禁系统设计陈青(华中科技大学武昌分校信息系 武汉 4 3 0 0 6 4 )摘 要 :本文介绍单片机结合 RF01D读卡机模块实现智能门禁系统的方案。 R
2、F01D感应式读卡机模块是针对 125kHz非接触式 RFID晶片而设计的读卡机模块。本系统将 RF01D读卡器读入的卡号通过韦根 26通信协议读出并通过 LCD显示出来 ,同时完成相应电器控制。该系统是具有识别 ID卡功能的产品 ,产品主要应用范围为人员考勤管理、门禁管制系统、玩具、动物或物品辨识及产品管理。关键词 :门禁 射频卡 韦根协议 单片机中图分类号 :TP273 文献标识码 : 文章编号 :1672-3791(2011)05(b)-0064-01宽度为 100mS,周期为 1600mS。 Wiegand 26位数据输出时序如图 1所示。 Wiegand 26位输出格式如表 1所示。
3、以上数据从左至右顺序发送 ,高位在前。电子卡的 Wiegand 26码的接收对时间的实时性要求比较高 ,如果用查询的方法接收会出现丢帧的现象 :假设查询到DATA0为 0时主程序正在指向其他任务 ,等主程序执行完该任务时 DATA0已经变为 1了 ,那么这样就导致了一个 0bit丢了 ,这样读出的卡号肯定奇偶校验通不过 ,所以表现出单片机接收不到 ID模块发送的卡号了。唯一的办法是在外部中断里接收每个bit。射频识别模块的子程序流程如图 2所示。单片机系统硬件结构如图 3所示。其中关于卡号对比的部分涉及到外部中断服务产生的卡号信息。射频识别模块的MCS-51单片机 C语言读卡程序片段如下。通过 P3. 1、 P3. 2两个中断端口读入DATA0和 DATA1的数据 ,分别为 0和 1 ,程序为 :void data0() interrupt 0 /*中断 0读入 DATA0*-计算刷卡传递的卡号信息 *射频识别模块 */ if(num=2num+; if(num=26) da_ready=1;图 1 Wiegand 26 位数据输出时序图图 2 射频识别模块程序流程图表 1图 3 系统硬件结构框图