门禁系统设计单片机、射频、.ppt_第1页
门禁系统设计单片机、射频、.ppt_第2页
门禁系统设计单片机、射频、.ppt_第3页
门禁系统设计单片机、射频、.ppt_第4页
门禁系统设计单片机、射频、.ppt_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

项目训练三门禁系统,一、目的要求1掌握门禁系统的概念。2掌握非接触式IC卡门禁系统的组成。3通过门禁系统的训练,掌握串行静态显示的方法。4掌握卡号显示方法。5进一步掌握单片机的使用技巧和方法。,二、任务目标利用单片机AT89S52构成一非接触式IC卡门禁系统,要求实现功能如下1程序控制开锁,当读卡器检索到合法IC卡时,由CPU提供一个低电平信号,因为,89S52单片机复位是高电平有效,并且实际电路必须有看门狗电路,一旦出现故障,也需高电平复位,因此,采用低电平作为控制门的开有效信号。,2出门按钮开锁,按钮按下,给出一个开关信号,此时门锁同样被打开。,3从消防安全考虑,如果发生意外或危险,只要断开电源,门锁同样可以被打开。,4读卡显示,当读卡器检索到合法射频卡时,七段数码管可以显示出此卡的卡号,以便识别出持卡人身份。,5蜂鸣器报警当门锁处于开启状态时,超过延时时间,蜂鸣器发出蜂鸣,以提示用户及时关门。6工作指示灯红色指示灯提示电源正常供电。绿色指示灯提示门锁工作状态,刷卡合法,绿色指示灯亮。,四、预备知识,门禁系统定义,门禁系统就是对出入口通道进行管制的系统,是一种管理人员进出的数字化管理系统。它是在传统的门锁基础上发展而来的。,门禁系统的组成门禁控制器门禁读卡器卡片电控锁及相应软件电源和其他相关门禁设备,(一)非接触式IC卡门禁系统框图非接触式IC卡门禁系统包括读写器、中央控制电脑的软件管理系统、中央控制电脑与读写器之间的数据传输三部分。其中读写器是核心,包括MCU、复位电路、时钟电路、报警及工作指示电路、显示电路、键盘、数据存储等主控模块及非接触式IC卡读写模块和电锁驱动部分。,非接触式IC卡门禁机总体工作流程,(二)门禁系统中单片机口的资源分配,(三)各部分电路原理分析非接触式IC卡门禁机工作过程为当刷卡时,蜂鸣器响一下,如卡权限获得允许,显示模块显示卡号,同时继电器动作将门锁打开,指示灯点亮,延时一段时间后继电器再次动作将门锁锁闭,指示灯熄灭;当按下出门按钮时,继电器动作将门锁打开,指示灯点亮,延时一段时间后继电器再次动作将门锁锁闭,指示灯熄灭。当遇到非法卡时,该系统不显示卡号,门锁不开。,1门控锁电路门控锁电路如图P3.3所示。偏置电阻R3与三级管Q16、Q6构成复合驱动电路以提高驱动能力,控制锁的开与闭。当P2.3为高电平时Q16导通,Q6截止,此时继电器的控制线圈为开路,继电器不动作。门锁接于继电器常闭端,门锁闭合,门处于锁死状态。当P2.3口输出低电平时Q16截止,Q6导通,此时继电器的控制线圈闭合,继电器动作。继电器常闭端断开,门锁打开,门处于打开状态。,2蜂鸣器电路蜂鸣器电路由蜂鸣器、三极管Q1、Q2及电阻R2组成。电路如图P3.4所示。当P2.6输出高电平时,Q1导通,Q2截止,蜂鸣器回路开路,蜂鸣器不响。当P1.2输出高电平时,Q1截止,Q2导通,蜂鸣器回路闭合,蜂鸣器发出响声。CPU、显示电路、键盘、数据存储等主控模块及非接触式IC卡读写模块将在后面章节中介绍。,图P3.3门控锁电路,图P3.4蜂鸣器电路,R2680,3.串行口在门禁系统中的应用,门禁系统读卡采用串口中断方式。非接触式射频卡的基本原理每个卡片内都有一个小芯片和感应线圈。每张卡有且只有一个唯一的、不可更改和复制的ID内码。非接触式IC卡系统的构成与特点非接触式IC卡(也称为“应答器”)是射频识别系统的电子数据载体,卡中嵌有耦合元件和微电子芯片。通常,非接触式IC卡没有自己的供电电源(电池),只是在读写器响应范围之内,卡才是有源的,卡所需要的能量以及时钟脉冲、数据,都是通过耦合单元的电磁耦合作用传输给卡的。,非接触式IC卡读写器典型的非接触式IC卡读写器(也称为“阅读器”)包含有高频模块(发送器和接收器)、控制单元以及与卡连接的耦合元件。常见的卡号输出格式说明ID卡最常见到的五种读卡方式的卡号定义如下:(1)格式110位十六进制的ASCII字符串,即10位十六进制格式。如:某样卡读出十六进制卡号为“01026f6c3a”。,(2)格式2将格式1中的后8位,转换为10位十进制卡号,即8H10D格式,如将“026f6c3a”转换为“0040856634”。(3)格式3将格式1中的后6位,转换为8位十进制卡号,即6H8D格式。如将“6f6c3a”转换为“07302202”。(4)格式4将格式1中的倒数第5、第6位,转换为3位十进制卡号,再将后4位,转换为5位十进制卡号,中间用“,”分开,即“2H4H”格式。如将2H“6f”转换为“111”,4H“6c3a”转为“27706”。最终将2段号连在一起输出为“111,27706”。,(5)格式5将格式1中后8位的前4位,转换为5位十进制卡号,再将后4位,转换为5位十进制卡号,中间用“,”分开,即“4H4H”。照此转换结果为:00623,27706本教材中的门禁系统使用的卡格式是格式4。RS232卡号输出协议串行输出格式如下:,卡片号码为62E3086CED,传送的HEX值如下10ASCIIDATA:36H,32H45H,33H30H,38H36H,43H45H,44H(62HE3H08H6CHEDH),CHECKSUM:(62H)XOR(E3H)XOR(08H)XOR(6CH)XOR(EDH)=08HChecksum为二进制格式数据。故MTP-K4射频模块输出的完整的二进制文档如下所示:02363245333038364345440803串行口程序分析门禁系统的读卡采用串口中断方式,随时读卡,随时响应。晶振必须是11.0592MHz。(1)读卡单元门禁系统采用EM9913BFID射频卡读卡器。读卡模块将数据按RS232和Wiegand26格式输出。,读卡单元连接图,(2)波特率初值计算晶振为11.0592MHz,串行接口工作于方式1,波特率为9600bs。公式:,代入已知条件,计算出初值为FDH。,(3)串口中断初始化程序SIC:ANLTMOD,#0FH;串口始化子程序ORLTMOD,#20HMOVTH1,#0FDHMOVTL1,#0FDHSETBTR1MOVIE,#90HMOVSCON,#50H;方式1十位异步收发RET,(4)串口中断子程序,该程序中加入不死机程序ZD:PUSHACC;中断子程序PUSH00HPUSH02HMOVR0,#30H;首地址MOVR2,#0BH;11个字节的ASCIILL1:ACALLLL2JBF0,LL3NOPNOPMOVR0,AINCR0,DJNZR2,LL1POP02HPOP00HPOPACCNOPMOV0FH,#33HRETILL2:MOV04H,#28HLL4:JNBRI,LL6CLRRIMOVA,SBUFCLRF0RET,LL6:MOV05H,#0AHLL5:DJNZR5,LL5DJNZR4,LL4SETBF0RETLL3:POP02HPOP00HPOPACCRETIEND,显示电路在门禁系统中,显示为串行静态显示方式。采用74LS164作为静态显示器接口,P1.0作为时钟,P1.4作为显示数据输入。,显示程序(1)直接显示段码程序。将20H27H中的段码从左到右显示出来。ORG0000HLJMPMAINMAIN:MOVSP,#60HMOV20H,#06HMOV21H,#5BHMOV22H,#4FHMOV23H,#66HMOV24H,#6DHMOV25H,#7DH,MOV26H,#07HMOV27H,#7FHLCALLSTSJMP$ST:MOVR0,#20HMOVR2,#08HLP1:MOVR1,#08HMOVA,R0LP2:RLCAMOVP1.4,C,CLRP1.0SETBP1.0DJNZR1,LP2INCR0DJNZR2,LP1RETEND,(2)把10H开始代码变成段码放到20H开始的单元中。方法一:ORG0000HLJMPMAINORG0100HMAIN:MOVSP,#60HMOV10H,#01HMOV11H,#02HMOV12H,#03HMOV13H,#04H,MOV14H,#05HMOV15H,#06HMOV16H,#07HMOV17H,#08HLCALLXIANSHILCALLSTSJMP$XIANSHI:MOVR2,#08HMOVR0,#10HMOVR1,#20H,LP3:MOVA,R0ADDA,#06HMOVCA,A+PCMOVR1,AINCR0INCR1DJNZR2,LP3RETDB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,79H,71H00HST:MOVR0,#20HMOVR2,#08H,LP1:MOVR1,#08HMOVA,R0LP2:RLCAMOVP1.4,CCLRP1.0SETBP1.0DJNZR1,LP2INCR0DJNZR2,LP1RETEND,方法二:ORG0000HLJMPMAINMAIN:MOVSP,#60HPORTEQU0155HLCALLSTSJMP$XIANSHI:MOVR2,#08HMOVR0,#10HMOVR1,#20HMOVDPTR,#PORT,LP3:MOVA,R0MOVCA,A+DPTRMOVR1,AINCR0INCR1DJNZR2,LP3RETST:MOVR0,#20HMOVR2,#08HLP1:MOVR1,#08HMOVA,R0,LP2:RLCAMOVP1.4,CCLRP1.0SETBP1.0DJNZR1,LP2INCR0DJNZR2,LP1RETPORT3FH,06H,5BH,4FH,66H,6DH,7DH,07H7FH,6FH,77H,7CH,39H,5EH,79H,71H00HEND,(3)将压缩码变非压缩码显示出来ORG0100HMAIN:MOVSP,#60HMOV10H,#39HMOV11H,#41HMOV12H,#42HMOV13H,#43HMOV14H,#44HMOV15H,#45HMOV16H,#46HMOV17H,#38HLCALLASC,LCALLXIANSHILCALLSTSJMP$ASC:MOVR2,#08HMOVR0,#10HMOVR1,#20HLP4:MOVA,R0ANLA,#0FHMOVR1,AINCR1MOVA,R0SWAPA,ANLA,#0FHMOVR1,AINCR0INCR1DJNZR2,LP4RETXIANSHI:MOVR2,#08HMOVR0,#10HMOVR1,#20HLP3:MOVA,R0ADDA,#06HMOVCA,A+PCMOVR1,A,INCR0INCR1DJNZR2,LP3RETDB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,79H,71H00HST:MOVR0,#20HMOVR2,#08HLP1:MOVR1,#08HMOVA,R0,LP2:RLCAMOVP1.4,CCLRP1.0SETBP1.0DJNZR1,LP2INCR0DJNZR2,LP1RETEND,卡号显示ID卡读出11个字节的ASCII,要显示卡号,需进行数值转换。(1)ID卡读出的11个字节ASCII码放在以30H开始的单元,先将ASCII码转换成16进制数,因第一个字节是包装头,不参与转换。LE:MOVR0,#30H;ASC转16进制数子程序MOVR2,#0AH;10个字节LE4:MOVA,R0ACALLLE1,MOVR0,AINCR0DJNZR2,LE4RETLE1:CJNEA,#40H,L13SJMPLE3L13:JCLE2ADDA,#09HLE2:ANLA,#0FHCLRCRETLE3:SETBCRET,(2)把上面转换的10个16进制数,变成5个压缩的16进制数,30H放最高位,34H放最低位。LB:MOVA,30H;装配压缩16进制数子程序SWAPAADDA,31HMOV30H,AMOVA,32HSWAPAADDA,33HMOV31H,ANOPNOP,NOPNOPMOVA,38HSWAPAADDA,39HMOV34H,ARET,MOVA,34HSWAPAADDA,35HMOV32H,AMOVA,36HSWAPAADDA,37HMOV33H,A,(3)上面程序中,30H到35H字节是先高后低,而后面调用子程序,需要先低后高,所以,先要把33H单元中的内容送到35H单元中,即把34H,35H里2个压缩的16进制数变成3个字节的压缩的10进制数。LD:MOV35H,33H;压缩16进制数转非压缩10进制子程序MOVR0,#34HMOVR7,#02HMOVR1,#28HLCALLLD1RET,LD1:MOVA,R0MOVR5,AMOVA,R1MOVR6,AMOVA,R7INCAMOVR3,ACLRALD2:MOVR1,AINCR1DJNZR3,LD2,MOVA,R7MOVB,#08HMULABMOVR3,ALD3:MOVA,R5MOVR0,AMOVA,R7MOVR2,ACLRCLD4:MOVA,R0RLCA,MOVR0,AINCR0DJNZR2,LD4MOVA,R6MOVR1,AMOVA,R7MOVR2,AINCR2LD5:MOVA,R1ADDCA,R1DAA,MOVR1,AINCR1DJNZR2,LD5DJNZR3,LD3RET,(4)再把压缩的10进制数变成非压缩的10进制数,即变成代码,为显示卡号做准备,L11:MOVR1,#10HMOVR2,#03HMOVR0,#28HL12:MOVA,R0ANLA,#0FHMOVR1,AINCR1MOVA,R0,SWAPAANLA,#0FHMOVR1,AINCR0INCR1DJNZR2,L12RET,(5)把代码变成段码,LF:MOVR2,#08H;代码-段码MOVR0,#10HMOVR1,#20HLF1:MOVA,R0ADDA,#06HMOVCA,A+PCMOVR1,AINCR0INCR1DJNZR2,LF1RETDB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,79H,71HDB00H,40H,73H,03H,18H,23H,1CH,3DH,76H,0FH,1EH,38H,(6)调显示子程序,采用串显方法,节省资源,XSH:MOVR0,#20H;显示子程序MOVR2,#08HLP1:MOVR1,#08HMOVA,R0LP2:RLCAMOVP1.4,CCLRP1.0SETBP1.0DJNZR1,LP2INCR0DJNZR2,LP1RET,(四)非接触式IC卡门禁系统参考程序,门禁系统程序主要包括读卡、数制转换、显示、合法卡比较、开锁、中断子程序、延时子程序等模块。1.显示子程序模块,显示子程序:XSH:MOVR0,#20HMOVR2,#08HLP1:MOVR1,#08HMOVA,R0LP2:RLCAMOVP1.4,CCLRP1.0SETBP1.0DJNZR1,LP2INCR0DJNZR2,LP1RET,2.门禁系统程序,门禁系统程序清单:,ORG0000HLJMPMAINORG0023HLJMPZDORG0300HMAIN:MOVSP,#60HCLRP2.5;关指示灯M1:LCALLBEING;调显“H”子程序LCALLSIC;调串口始化子程序DUKA:MOVA,0FH;判卡,CJNEA,#33H,L003SJMPL03L003:JNBP2.7,OPLOCK;出门开关是否按下SJMPDUKAL03:MOV0FH,#00HMOV17H,#10HACALLLE;ASC转16进制数子程序ACALLLB;调装配压缩16进制数子程序ACALLLD;调压缩16转非压缩10进制子程序ACALLL11;压缩-非压缩ACALLBJ;调比较子程序JNCKS1;合法转KS1,SJMPDUKAKS1:ACALLLF;代码-段码子程序ACALLXSH;调显示子程序ACALLOPLOCK;开锁SJMPDUKABJ:MOVA,32H;判卡合法否子程序CJNEA,#2DH,NEQMOVA,33HCJNEA,#0DBH,NEQMOVA,34HCJNEA,12H,LB1AJMPKSLB1:CJNEA,#13H,NEQKS:CLRCRET,NEQ:SETBCRETOPLOCK:SETBP2.5;开锁子程序CLRP2.6LCALLDEL;延时10SSETBP2.6CLRP2.3MOVR5,#0AHL8:LCALLDELDJNZR5,L8SETBP2.3CLRP2.5JNBP2.4,ALLJMPM1,AL:CLRP2.6LCALLDELSETBP2.6RETSIC:ANLTMOD,#0FH;串口始化子程序ORLTMOD,#20HMOVTH1,#0FDHMOVTL1,#0FDHSETBTR1MOVIE,#90HMOVSCON,#50HRET,ZD:PUSHACC;中断子程序PUSH00HPUSH02HMOVR0,#30HMOVR2,#0BHLL1:ACALLLL2JBF0,LL3NOPNOPMOVR0,AINCR0DJNZR2,LL1,POP02HPOP00HPOPACCNOPMOV0FH,#33HRETILL2:MOV04H,#28HLL4:JNBRI,LL6CLRRIMOVA,SBUFCLRF0RET,LL6:MOV05H,#0AHLL5:DJNZR5,LL5DJNZR4,LL4SETBF0RETLL3:POP02HPOP00HPOPACCRETILE:MOVR0,#30H;ASC转16进制数子程序MOVR2,#0AH,LE4:MOVA,R0ACALLLE1MOVR0,AINCR0DJNZR2,LE4RETLE1:CJNEA,#40H,L13SJMPLE3L13:JCLE2ADDA,#09HLE2:ANLA,#0FHCLRCRETLE3:SETBCRET,LB:MOVA,30H;装配压缩16进制数子程序SWAPAADDA,31HMOV30H,AMOVA,32HSWAPAADDA,33HMOV31H,ANOPNOPMOVA,34HSWAPAADDA,35H,MOV32H,AMOVA,36HSWAPAADDA,37HMOV33H,ANOPNOPMOVA,38HSWAPAADDA,39HMOV34H,ARET,LD:MOV35H,33H;压缩16转非压缩10进制子程序MOVR0,#34HMOVR7,#02HMOVR1,#28HLCALLLD1RETLD1:MOVA,R0MOVR5,AMOVA,R1MOVR6,AMOVA,R7INCAMOVR3,

温馨提示

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

评论

0/150

提交评论