版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业论文(设计) 题 目 智能门禁系统设计 学生姓名 学 号 院 系 电子与信息工程学院专 业 电子信息工程指导教师 二一三 年 五 月 二十二 日目 录1 引言.12 系统总体设计及方案论证.2 2.1 方案论证.2 2.2 工作原理.3 2.3 系统结构.33 硬件电路设计.3 3.1 控制模块.3 3.2 射频卡识别模块.5 3.3 显示模块.9 3.4 存储模块.14 3.5 键盘模块.17 3.6 报警、提示模块.184 软件设计.19 4.1 总体流程图.19 4.2 设置模块流程图.20 4.3 检测模块流程图.20 4.4 模块子程序.205 系统调试与分析.226 总结.25
2、参考文献.25致谢.26ABSTRACT.27附录一.28附录二.29智能门禁系统设计乔冬春南京信息工程大学电子与信息工程学院,南京 210044摘要:门禁系统是日常生活里不可缺少的一个角色,因此,在此基础上提出了基于51单片机的多功能电子门禁系统。利用单片机作为控制核心,外围加键盘、射频卡识别电路、蜂鸣器提示电路、开门指示灯电路、密码存储电路、以及液晶显示电路等,设计一个智能型门禁系统。该设计采用射频卡完成刷卡进门,其门禁系统的工作状态为:刷卡时,蜂鸣器响一下,如卡权限获得允许,显示模块显示欢迎字样,指示绿灯点亮,延时一段时间指示灯熄灭,如果不匹配,红灯亮,显示屏显示“该卡未被授权”,蜂鸣器
3、急促响起。按功能键进入设置状态,可以进行注册卡、注销卡和修改授权密码等。关键词:门禁系统;51单片机;智能卡;MFRC5221 引言随着改革开放的深入和中国特色社会主义市场经济的深入发展,智能门禁系统作为一项重要的安防措施,在日益复杂的社会环境里,为保障人民群众的生命财产安全起到了至关重要的作用,像智能楼宇和智能小区等,早已在某些大城市中普及,而对于整个中国而言,智能门禁系统有着巨大需求和广阔的发展空间。进出口门禁安全系统是一种新型的现代化安全管理系统,它集现代安全管理和微机自动识别技术措施为一体,它涉及机械,电子,计算机,光学技术,生物技术,通讯技术等诸多新技术。它实现了对重要部门出入口实现
4、安全防范管理。适用各种机要部门,如办公大楼、学校、军事基地、银行等。为了解决这个问题,就出现了电子磁卡锁,电子密码锁,这两种锁的出现从一定程度上提高了人们对出入口通道的管理程度,使通道管理进入了电子时代。 随着感应卡技术,生物识别技术在这几年得到推广,门禁系统获得了飞跃式发展,跨了全盛期,出现了虹膜门禁系统,指纹门禁系统,感应卡式门禁系统,乱序键盘门禁系统,面部识别门禁系统等各种技术的系统,它们在方便性,易管理性,安全性等方面各有擅长,门禁系统也不断发展,应用领域越来越广泛。门禁系统为什么能在众多的安防产品李脱颖而出呢?其深层次原因为它和传统的安全产品的工作方式大相同,如:闭路监控,报警防盗等
5、被动监控方式,以控制的主动性替代了监控的被动方式,通过控制主要通道,极大的防止了犯罪人员从正常的通道侵入,并且可以在罪案发生时通过对通道门的控制权限限制罪犯的活动范围,减少和预防犯罪。2 系统总体设计及方案论证2.1 门禁系统方案选择(1) 密码识别通过检验输入密码是否正确来识别持卡人是否有权限进入。 这类产品分为两类,一类是普通型,一类是乱序型(键盘的按键所代表数值不固定,会随机自动切换)。 普通型优点:操作上方便简介,不需要携带卡片;成本比较低廉。 缺点:同一时间内只可存在三组密码,容易泄露,安全性不能得到保证;而且没有进出的记录;只可以实现单方向控制。 乱序型优点:操作简单方便,不需要携
6、带卡片;安全系数略高。缺点:密码会被轻易地盗取,安全性仍然不是很高;依旧没有进出的记录;只可以实现单方向控制,成本比较高1。(2) 卡片识别通过识别卡或者加上密码来鉴别使用者是否具有进出的权限,按照卡片的类别有可以分成射频卡和磁卡。 磁卡 优点:一人一卡(+密码),安全性一般; 成本略低;可以联机,存有进出记录。 缺点:卡片,读卡器会由磨损,寿命不长;卡片会很容易地被复制;不容易实现双方向的控制;卡片上的信息会受到外界磁场干扰而丢失,从而让卡片失效。 射频卡优点:卡片,读卡器没有接触,开门较方便和安全;寿命比较长,理论上数据可存在十年以上;安全性比较高,可以联微机,存有进出记录;能够实现双方向
7、的控制,卡片不能轻易被复制。缺点:成本比较高1。(3) 生物识别通过检查进入人员的生物特征确认其是否有进出的权限,有指纹型,虹膜型,面部型等。 优点:从识别的角度来看,安全性很好;不需要持卡 。缺点:成本高,识别率较低,环境的要求较高,使用者的要求比较高(例如指纹不可被划伤,眼睛不能红肿或者出血,脸上不能被划伤,或留胡须);使用不方便(比如虹膜型的和面部识别型的,系统安装高度是一定的,可是使用者的身高却各有所不同),值得留意的大多数觉得生物识别系统的安全性很高,其实并非如此,门禁系统的安全不仅仅指识别方式的安全性,还包括控制系统、软件系统、通讯系统,电源系统的安全,它们作为一个整体是不能被割裂
8、开的,如果某一部分不合格,将会威胁到整个系统的安全。例如有的指纹识别系统,它的识别和控制系统是一体的,如果都放在室外,整个系统将会受到威胁1。综合以上各种门禁系统,从成本、安全性、可用性等角度分析,选择射频卡作为本次门禁系统设计的主要器件。2.2 门禁系统的工作原理 智能门禁系统的核心是智能卡识别技术,利用单片机作为控制核心,外围加键盘、智能卡识别电路、蜂鸣器提示电路、开门指示灯电路、密码存储电路、以及液晶显示电路等,主要有三种工作状态。第一种状态:上电后进入主界面,显示请刷卡进入;第二种状态:按菜单键,输入密码获得权限,可以选择添加新卡或者注销所有卡,自动退出该界面;第三种状态:进入菜单界面
9、,长按切换键,进入修改授权密码界面,可以选择修改授权密码。2.3 门禁系统的总体结构图 智能门禁系统采用了模块化设计,主要包括射频卡识别模块、液晶显示模块、存储模块、键盘模块、报警提示模块。智能门禁系统的硬件系统总体框图如图1所示: 图1 多功能电子门禁系统硬件系统总体框图3 硬件电路设计3.1 控制模块3.1.1 STC89C52主要性能 STC89C52具有下列主要性能: 8KB可改编程序FLASH存储器(可经受1000次的写入/擦除周期)。 32条可以编程的的I/O口。 两个16位的定时/计数器。 8×128个字节内部随机存取寄存器。 6条中断源。 2个串行的中断,能编程的UA
10、RT串行的通道。 可编程的串行通道。 时钟频率0-24MHz。 片内时钟振荡器2。3.1.2 STC89C52的引脚及功能图2 STC89C52的管脚(1) 主要电源引脚VCC 电源GND 地(2) 外接晶体引脚XTAL1和XTAL2XTAL1 当采用外部振荡时,该引脚可以作为外部振荡的输入端;当采用内部振荡时,它与晶体的一个引脚相连接。XTAL2 当采用外部振荡时,该引脚悬空;当采用内部振荡时,它与晶体的另外一个引脚相连接。(3) 控制或与其它电源复用的引脚RST、ALE/PROG、/PSEN和/EA/VPPRST 复位输入端。当RST保持两个周期以上高电平时,单片机复位。ALE/PROG
11、地址锁存输出/变成脉冲输入引脚。正常工作时为ALE(允许地址锁存)功能,提供把低字节地址锁存到外部锁存器的信号。ALE引脚以不变的频率(时钟信号的1/6)周期地发出正脉冲信号,因此,它还可以对外部总线结构输出时钟信号,或用于计时目的。但要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。ALE段输出可以驱动八个TTL电路。但对于EPROM型单片机,在用编程器对Flash编程时,次引脚接受变成脉冲(PROG功能)。ALE可以通过设置特殊功能寄存器8EH,使能或者禁止ALLE信号输出,在禁止时,只有MOVX和MOVC指令才能使ALE1有脉冲输出,平时ALE引脚有个弱上拉。PSEN 外部程序
12、的存储器读选通信号。在读外部ROM时PSEN(非)低电平有效,以实现外部ROM单元的读操作,全拼为Program Store Enable,在AT89C52/LV52从外部程序的存储器中取指令(或常数)时,每个周期有两个PSEN是有效的(即2个输出脉冲)。/EA/VPP 片内、片外程序存储器选择输出/变成电压输入引脚。要使CPU只访问外部程序的存储器(地址为0000H至FFFFH),则EA端必须维持低电平(即接地)。当EA端保持高电平(即接电源)时,CPU则运行内部程序存储器中的程序。(4)输入/输出引脚 P0.0 P0.7、P1.0P1.7P2.0 P2.7 和P3.0P3.7P0端口(P0
13、.0 P0.7) P0口为一个8位的漏级开路的双向I/O口,每个脚可以吸收8TTL门电流,在P1口的管脚首次写1时,被定义作高阻输入,P0可以用于外部的程序数据的存储器,其能够被定义作数据地址的低八位。在Flash 编程时,P0 口当作原码的输入口,当Flash在进行校验时候,P0输出原码,此时P0外部必须被拉高。P1端口(P1.0 P1.7) P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口作为输入线时,必须先将1写入锁存器,使V截止,把该口线由内部上拉电阻拉成高电平。P1口作为输入端时,可被任何TTL电路和MOS电路所驱动。P2端口 (P2.0P
14、2.7) P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可以驱动(输出或者吸收电流)4 个TTL 门电路。对P2 端口写“1”,通过自身地上拉电阻将端口提到高电平,这个时候可以作为输入口,当作为输入口用的时后,因为其内部有上拉电阻,当某个引脚在被外部的信号拉低电平的时候会输出来一条电流(IIL)。当访问外部的程序存取器或者16 位地址地外部的数据存取器(比如执行指令MOVX DPR )的时候,P2 口会送出高8 位的地址数据,当访问8位的地址地外部数据存取器(比如执行指令MOVX RI )的时候,P2 口将输出P2的锁存器地内容。Flash编程或者校验的时候,P2也接收
15、高位的地址与一些控制的信号。P3端口(P3.0P3.7) P3 口是一个8 位双向I/O 口,其自带内部上拉电阻。P3 口的输出缓冲端能够驱动(输出或吸收电流)4 个TTL 门电路。在对P3 口写入“1”时,其被内部的上拉电阻提高电位且可当做输入端口。在这个时候,被外部电势拉低的P3 口会使用上拉的电阻来输出电流(IIL)。P3 口除了可以作为普通的I/O 口线外,更加重要的用处是它的第2个功能,P3 口还接收一些用于Flash闪速存储器编程和程序校验的控制信号2。3.2 射频卡识别模块概述:一套完整的RFID系统是由Reader 与Transponder两部分组成,其工作原理是由Reader
16、发射一束频率特定的电磁波给Transponder,用来驱动Transponder电路使其将内部之ID Code送出,此时Reader就接收这个ID Code。Transponder的特殊在于不需电池、无需接触、不需刷卡所以不怕脏污,且晶片的密码是世界唯一无法复制COPY,安全性高、长寿命。卡片的电气部分只是由ASIC和一个天线组成,智能卡的天线只是有几组线圈组成,很适于封装到IS0 卡片中,卡片的ASIC由一个高速(106KB 波特率)的RF接口,一个控制器和一个 8K的EEPROM组成3。 工作原理:读写装置向卡片发送一束电磁波,其频率固定,该卡具有一个LC串联的谐振电路,其频率和阅读器发送
17、频率相同,在电磁波刺激下,LC谐振电路将产生谐振,使电容器的电容器充电,另一端,一个单向传导电子泵连接,将充电电容发送到其他电容器储存,当所积累的电荷达到2V,电容器提供工作电压可以作为其它电路电源,向卡内写入数据或者将数据发送出去3。3.2.1 读卡器(1)MFRC522简介 MFRC522是Philips针对三表(电表、水表、热表)开发的最新一款基站芯片,它具有非接触和低功耗读写的特性。它是应用在13.56MHZ非接触式通信里面的高度集成读卡芯片中的一员。这种读卡芯片采用了领先的调制与解调概念,几乎结合了13.56MHz下全部种类的被动非接触式通读协议和方式。ISO14443A所有的层MF
18、RC522都支持,其传输速率最高可达424kbps,不需要增加有源电路其内部发送模块就可以直接带动近距离的天线,而接收模块则提供了一个牢固而高效的解调与解码电路,用来接收ISO14443A所兼容的应答训号。数字处理模块则提供CRC和奇偶检测功能。MFRC522具有三种接口方式:SPI方式、UART方式、I2C方式。可方便地与任何MCU通讯,甚至可以通过RS232以及RS485的通讯方式直接和PC机相连,为终端设计给出了前所未有的灵活性4。(2)MFRC522内部框图 MFRC522的内部构造框图3所示。MFRC522支持可直接相连的各种MCU接口,如SPI、I2C和串行UART。MFRC522
19、能使其接口复位自动检测上电或者硬复位的当前MCU接口类型。可以通过观察复位控制引脚上的逻辑电平来鉴别MCU接口。数据处理模块实现数据串行、并行转换。可支持奇偶和CRC校验。由于MFRC522用完全透明的方式操作,所以支持ISO14443A的所有层。控制和状态模块用来配置器件,以适应环境的影响并让性能达到最好。当MFRC522和MIFARE通信时,使用高速率CRYPTO1流密码单元与一个非常可靠的非易失性密钥储存器。模拟电路模块包含超低阻抗的桥驱动器输出的发送模块。这样可以使其最大操作距离能够达到100 mm。接收器检测弱应答讯号并对其进行解码4。图3 读卡器结构图(3) 操作指令 表1 RC5
20、22操作指令指令名称指令代码指令功能Idle0x00空闲,取消当前操作CalcCRC0x03开启CRC校验Transmit0x04从FIFO中发送数据NoCmd Change0x07无指令变化Receive0x08开始接收数据Transceive0x0B将FIFO中的数据通过天线发送,发送完毕后接收数据MFAuthent0x0E进行Mifare射频卡密码验证Soft Reset0x0F配合NRSTPD完成MFRC522的复位(4) MFRC522接线图图4 MFRC522接线图3.2.2 非接触式卡Mifare S50(1)Mifare S50简介RFID的产品有电容式(Capacatine)
21、、微波式(Microwave)、无线电频率RF(RadioFrequency),因电容式在使用时须与CSC验票机几乎贴近才能感应,而微波式则须与CSC验票机直线对准,只有无线电频率式则无此限制,所以目前CSC的主流卡片是飞利浦的MIFAER卡片,其材质采用无线电频率式;而以无线电频率不含电池之CSC,其动作原理是经由内部RF天线接收由读写器所发送出来之电波,感应出一微小电源电压来供应内部电路及读写器所需之电力,亦藉由此感应电压来读写、运算、储存卡片内记忆体资料或藉由读写器和外界接触,并进行卡片和读写器彼此间之资料之交换4。(2) Mifare S50构造及功能图图5 S50外部构造图 图6 S
22、50内部结构图(3)S50寄存器结构S50智能卡具备有大容量之记忆体,可依实际应用场所(公车、地铁、停车场等)之特性加以规划,每一应用场所有一独立之记忆空间(Sector),在每个记忆空间内可分数个资料储存区(Block),每个储存区可再分多组密码区及存取条件。以地铁系统为例,其资料储存区内记载发卡日期、票种、进站站名代码、出站站名代码余额等资料。密码区为储存密码,此密码之读写过程经编、乱码及多次完整之确认处理。记忆区之存取条件区记载进出资料储存区之条件,要读写资料储存区之内容必须依存取条件之规定;例如某些资料可读取但不能写入,某些资料则可读取亦可写入4。表2 S50内部结存储区空间用途存储区
23、存储区0记载卡片共同资料Block0卡号序号(注)1Block1资料储存区(注)2Block2资料储存区Block3密码 & 存取条件(注)31.15其他用途: 如(公车、捷运、台铁、台汽、高速公路、停车等)Block0资料储存区Block1资料储存区Block2资料储存区Block3密码存取条件(注)1:制造商在生产每张卡片时,会将每一序号写入。(注)2:读卡器欲读写资料储存区之资料时,须先核对密码,密码确认无误后再依据该资料储存区之存取条件来决定资料是否读取或写入。(注)3:密码组中有一组密码是不容许读卡器读取,而欲更改其它密码组及存取条件则须输入此组密码,存取条件中则明定每个Bl
24、ock之存写条件。(4)卡操作指令表3 S50操作指令指令名称指令代码指令功能Request Std0x26请求天线的范围内非休眠的状态所有卡Request All0x52请求天线的范围内所有的卡AntiCollision0x93防碰撞,当多张卡处于天线范围中的情况下,选取一张Select Tag0x93选卡,将防碰撞所返回的卡选中,对该卡进行操作Authentication_A0x60验证卡内的某扇区密码aAuthentication_B0x61验证卡内的某扇区密码bRead0x30读卡Write0xA0写卡,16字节的操作,即整块对射频卡进行操作Increment0xC1增值Decreme
25、nt0xC0减值Restore0xC2复制,将卡内的某一数据块整地体复制到设定地方Transfer0xB0将buffer数据传输到指定块,增、减值需要该指令完成HALT0x50使卡进入到休眠状态,并结束MFRC522和卡的通信(5)通讯原理图7 S50与读卡器通讯原理3.3 显示电路3.3.1 LCD12864电气特性介绍 输入高电平(VIH): 0.7VddVdd 输入低电平 (VIL): 0.6V max 输出高电平(VOH): 0.8VDDVDD 输出低电平(VOL): 0.4V max 模块工作电流: 35mA 白背光工作电流: 60mA max 黄绿背光工作电流: 360mA max
26、53.3.2 LCD12864结构图图8 LCD12864内部结构图3.3.2 LCD12864的引脚介绍表4 LCD12864引脚介绍管脚号管脚名称电平管脚功能描述1VSS0V电源地2VCC3.0+5V电源正3V0-对比度(亮度)调整4RS (CS)H/LRS=“H”,代表DB7DB0为要显示的数据RS=“L”,代表DB7DB0为要显示的指令数据5R/W(SID)H/LR/W=“H”;E=“H”,数据被读至DB7DB0R/W=“L”;E=“HL”, DB7DB0 数据被写至IR或者DR6E (SCLK)H/L使能信号7DB0-DB8H/L3态数据线8PSBH/LH:八位或四位并口的方式,L:
27、串口方式9NC-空脚10/RESETH/L复位端,低电平生效续表4管脚号管脚名称电平管脚功能描述11VOUT-LCD的驱动电压的输出端12AVDD背光源的正端(+5V)13KVSS背光源的负端3.3.3 LCD12864的控制信号说明RS,R/W的配合选择决定控制界面的4种模式:表5 RS,R/W的工作模式RSR/W功能说明LL写指令至指令存储器LH读出忙的标志(BF)及地址的记数器(AC)的状态HL写数据至寄存器(DR)HH从数据寄存器(DR)里读出数据E使能信号的工作模式说明:表6 E使能信号的工作模式E状态执行动作结果高>低I/O的缓冲>dr配合/W开始写数据或者指令高DR&
28、gt;I/O缓冲配合R开始读数据或者指令低/低>高无动作 (1)忙标志BF BF标志显示内部的工作情况,BF=1代表模块正在开始内部的操作,这个时候模块不接收外部指令与数据;bf=0,模块处于准备的状态中,随时都可接收外部指令与数据。使用STATUS RD 指令,能够将bf标志读到DB7总线,然后检验模块的工作状态。(2)字体生成ROM(CGROM) 字体生成ROM(CGROM)提供8192个触发模块用来打开和关闭屏幕显示。DFF = 1是开显示,DDRAM的内容就会显示在屏幕上,DFF= 0是关闭显示。D
29、FF的状态受指令Display on/Off与RST信号控制。(3)显示数据RAM(DDRAM) 模块内部的数据RAM提供了64×2个位元组的空间,最多能够控制4行16字(64个字)的中文字体显示,在写入显示数据RAM的时候,可分别显示出CGROM和CGRAM的字体;此模块可以显示出三种字体,分别为半角英数字体(16*8)、CGRAM字体和CGROM的中文字体,三种字体的选择,是由在DDRAM中写入的编码来选择的,CGRAM里的自定义字体由0000H0006H的编码(其代码分别为0000、0002、0004、0006共四个)选择,半角英数字的字型将由02H7FH的编码选择,关于A1以
30、上编码将会自动与下一个位元组相结合,组成两个位元组的编码将形成中文字型的编码BIG5(A140D75F)和GB(A1A0-F7FFH)。 (4)字型生成RAM(CGRAM) 字型生成RAM能够提供图象定义或造字的功能, 能够提供4组16×16点的自定义图象空间,使用者能够将内部字体未提供的图象形字体自主定义到CGRAM里,这样就能够与CGROM里的定义相同地通过DDRAM显示于屏幕上。(5)地址的计数器AC 地址的计数器用于存储DDRAM/CGRAM其一地址,其能够通过设定指令的寄存器去改变,之后只需读取或者是写入到DDRAM
31、/CGRAM的数值时,地址的计数器数值便会自动加1,当rs是“0”时但R/W为“1”的时候,地址得计数器中的值便会被读取至DB6DB0里去。(6)光标/闪烁的控制电路 此模块电路提供了硬体光标和闪烁控制的电路,通过地址的计数器的数值去指定DDRAM里的光标或者闪烁的位置5。3.3.4 LCD12864的指令说明基本指令集表7 LCD12864基本指令集指令名称控制信号控制代码执行时间(us)RSR/WD7D6D5D4D3D2D1D0清除显示00000000011600地址归0000000001x72进入指定点00000001I/ds72显示的开关设定0000001DCB72移位控制000001
32、S/CR/lXX72功能设定00001DlX0/REXX72设置CGRAM的地址0001A5A4A3A2A1A072设置DDRAM的地址0010A5A4A3A2A1A072读忙标志与地址0BFA6A5a4A3A2A1A072写显示的数据10显示数据72读显示的数据11显示数据72扩充指令集表8 LCD12864扩充指令集指令名称控制信号控制代码执行时间(us)RSR/WD7D6D5D4D3D2D1D0待命模式000000000172卷动地址y抑或ramd的地址选择000000001SR72反白显示00000001R1R072睡眠模式0000001SlXX72扩充功能的设定00001DlX1/R
33、EG072设定绘图 ram的地址001000A3A2A1A072A6A5A4A3A2A1A03.3.5 LCD12864操作时序图9 8位并口写操作时序图10 8位并口读操作时序图11 外部复位时序图3.3.5 LCD12864电路连接图图12 LCD12864连接图3.4 存储电路3.4.1 AT24C02简介及特性AT24C02是一个2K位串行CMOS E2PROM, 内部含有256个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。AT24C02有一个16字节页写缓冲器。该器件通过IIC总线功能进行操作,有一个专门的写保护功能。 工作电压:1.8V5.5V 输入/输
34、出引脚兼容5V,应用在内部结构: 128x8(1K),256x8(2K),512x8(4K),1024x8(8K),2048x8(16K) 二线串行接口输入引脚,经施密特触发器滤波抑制噪声 双向数据传输协议 兼容400KHz(1.8V,2.5V,2.7V,3.6V) 支持硬件写保护 高可靠性:写次数:1,000,000次数据保存:100年63.4.2 AT24C02内部结构图13 AT24C02内部结构图3.4.3 AT24C02引脚介绍及说明 表9 AT24C02引脚图引脚名称引脚功能A0A2器件地址输入SDA串行数据输入输出SCL串行时钟输入WP写保护VCC电源GND地(1) 串行时钟信号
35、引脚(SCL):在SCL输入时钟信号的上升沿将数据送入EEPROM器件,并且在时钟下降沿期间把数据读出来。(2) 串行数据的输出/输入引脚(SDA):SDA引脚能够实现双向数据串行传输。该引脚是开漏输出,可以和其它多个开漏输出的器件或者开集电极的器件线或连接。(3) 地址脚(A0,A1,A2):A0、A1和A2引脚是24C01与24C02的地址码输入引脚。24C01在一根总线上最多能够寻址八个1K器件,24C02在一根总线上最多能够寻址到八个2K器件,A0、A1和A2内部必须连接。24C04仅使用A2、A1当做器件地址的输入引脚,于一根总线上最多能够寻址到四个4K器件。A0引脚的内部没有连接。
36、24C08仅使用A2作为器件的地址输入引脚,在一根总线上最多可寻址两个8K器件。A0和A1引脚内部未连接。24C16未使用作为硬件连接的器件地址输入引脚,在一个总线上最多可连接一个16K器件。A0、A1和A2引脚内部未连接。(4) 写保护(WP)引脚:24C01/02/04/08/16具有用于硬件数据写保护功能的引脚。当该引脚接GND时,允许正常的读/写操作。当该引脚接VCC时,芯片启动写保护功能。63.4.4 AT24C02工作原理(1)时钟和数据传输:SDA引脚一般被外围器件拉为高电平。SDA引脚的数据应在SCL为低时变化;当数据在SCL为高时变化,将视为下文所述的一个起始或停止命令。(2
37、)起始命令:当SCL为高,SDA由高到低的变化被视为起始命令,必须以起始命令作为任何一次读/写操作命令的开始。(3)停止命令:当SCL为高,SDA由低到高的变化被视为停止命令,在一个读操作后,停止命令会使EEPROM进入等待态低功耗模式(4)应答:所有的地址和数据字节都是以8位为一组串行输入和输出的。每收到一组8位的数据后,EEPROM都会在第9个时钟周期时返回应答信号。每当主控器件接收到一组8位的数据后,应当在第9个时钟周期向EEPROM返回一个应答信号。收到该应答信号后EEPROM会继续输出下一组8位的数据。若此时没有得到主控器件的应答信号,EEPROM会停止读出数据,直到主控器件返回一个
38、停止命令来结束读周期。(5)等待模式:24C01/02/04/08/16特有一个低功耗的等待模式。可以通过以下方法进入该模式: 上电 收到停止位并且结束所有的内部操作后。(6) 器件复位:在协议中断、下电或系统复位后,器件可通过以下步骤复位: 连续输入9个时钟 在每个时钟周期中确保当SCL为高时SDA也为高; 建立一个起始条件7。3.4.5 AT24C02操作时序图14 总线时序图15 写周期时序 图16 启动和停止时序3.4.6 AT24C02电路连接图图17 AT24C02连接图3.5 独立键盘电路3.5.1 单片机键盘和键盘接口概述键盘可以分成编码的键盘与非编码的键盘两类,键盘上的闭合键
39、地识别是通过专用地硬件编码器来实现的,并生成编码值的可以称为编码键盘,例如计算机的键盘,而通过软件编程才识别的键盘称作非编码的键盘,在SCM组成的各种系统中,用的较多的为非编码的键盘,非编码的键盘又分为独立键盘和行列式键盘也称为矩阵式键盘。在本设计中由于占用的I/O口较多,且独立按键较简单,且能够实现所需功能,所以选择独立按键。按键功能的实现应该包含两方面:一是按键的识别,换句话说就是找到被按下的是哪一个键。二是按键功能上的实现。第一项工作通过硬件电路去实现,而第二项却是通过软件来实现的。下面具体介绍键盘相关知识8。 具体来说,键盘的接口应当完成以下操作功能: 扫描,确定那一个键被按下 识别,
40、确定被按的键的具体位置。 生成键值,即确认所按下键所代表的意思。 这些功能通常是通过硬件与软件相协调的方式实现的,换句话说就是用接口电路和软件识别协同工作,具体他们负责哪些方面,这需要根据实际情况去鉴定,但有一个总的原则,那就是硬件越详细,则软件越简单,硬件越简略,则软件越复杂。3.5.2 按键存在的问题及消除办法问题:普通的按键,从本质上来说就是一个机械开关,在被按下或者松开的时候,由于开关的机械特性,会存在一个抖动的过程,这就造成了电压的跳变,对于TTL电路来说,就有可能存在键值,在0和1之间不断的发生跳变,这将会对整个系统的稳定性造成威胁。图18 按键抖动图解决办法: 硬件消抖:将按键用
41、电容接地或者接一个边沿触发器 延时消抖:将检测程序延时几毫秒3.5.3 键盘电路连接方式 按确认键可以对选项进行选择,按切换键可以对不同选项进行切换,按退出键则可以退出菜单,进入主界面。图19 按键连接图3.6 报警和提示电路3.6.1 报警电路概述为了给使用者提供直观反馈,本设计中加入了提示电路,具体如下: 红色LED: 当使用者的智能卡为不能识别时亮起 绿色LED: 当使用的智能卡被识别为有效时亮起 蜂鸣器:当有智能卡放入识别区时,无论是有效或者无效卡,蜂鸣器都会发出一声“滴”的声音。在修改权限密码时,如果初始密码输入不正确时,蜂鸣器急促鸣响数十秒。3.6.2 实现电路 由于单片机输出电流
42、较小,所以在连接蜂鸣器时通过接一个NPN三极管,基极与I/O口连接,发射机与蜂鸣器连接,发射集接地,构成一个共射放大电路,使得蜂鸣器可以争产工作,具体链接如下:9图20 蜂鸣器电路 对于LED报警电路,将发光二极管的正极与电源相连,负极与单片机I/O口相连10。图 21 LED连接电路4 软件设计部分4.1 总体程序设计流程图图22 总体流程图 4.2 卡片检测子程序流程图图23 设置子程序流程图4.3 设置子程序流程图图24 卡片监测子程序流程图4.4 各模块子程序4.4.1 主程序 当进入主程序时,先关闭蜂鸣器,而后对液晶和读卡器模块初始化,然后进入一个循环,不断检测按键是否按下以及读卡器
43、模块是否有卡。void main(void)BEEP = BEEPOFF ; lcd_init(); PcdReset(); PcdAntennaOff();PcdAntennaOn(); M500PcdConfigISOType( 'A' );while(1)key_scan();key_sz();exe_mode();4.4.2 菜单选择程序 进入主界面后,根据菜单键是否按下,判断是否进入菜单程序,进入后,判断切换键是否按下,来进行选项切换。void menu_select(void)if(up_down=UP)Disp_HZ(0x80,dat8,8);Disp_HZ(0x
44、98,dat13,8);if(up_down=DOWN)Disp_HZ(0x80,dat8,8););Disp_HZ(0x98,dat13,8);4.4.3 检测程序 先检测是否有卡片在读卡器附近,而后检测卡内数据,与数据库中的对比,如果相同,则授权为有效,如果不同则为无效。void detect(void)unsigned char i,Temp2;checkcard_ok=0;if(PcdRequest(0x52,Temp)=MI_OK) if(PcdAnticoll(UID)=MI_OK) for(i=0;i<MAXCARDNUM;i+)RdFromROM(EEPROM_UID_P
45、ASSWORD_BUFF,EEPROM_PAGE_ADDR_TABLEi,4);if(UID0=EEPROM_UID_PASSWORD_BUFF0 && UID1=EEPROM_UID_PASSWORD_BUFF1 && UID2=EEPROM_UID_PASSWORD_BUFF2 && UID3=EEPROM_UID_PASSWORD_BUFF3)checkcard_ok=1;break;if(checkcard_ok)checkcard_ok=0;LED_G=LED_GON;successbeep();Disp_HZ(0x80,dat0,8)
46、;Disp_HZ(0x90,dat4,8);Delay_100us(30000);LED_G=LED_GOFF;elseLED_R=LED_RON;failbeep();Disp_HZ(0x80,dat0,8);Disp_HZ(0x98,dat0,8);Delay_100us(30000);LED_R=LED_ROFF;115 系统调试与分析智能门禁系统实现了主界面、菜单界面、添加新卡和注销卡的功能。具体过程是:接上电源后,进入初始界面,LCD12864显示“欢迎”字样,此时除了菜单键可以读取,其它按键被锁住,具体如图25所示:图25 主界面 将两张卡放在识别区,其中一张卡获得授权,而另一张则
47、未被授权,其结果图26所示:图26 已被授权图27 未被授权 按一下菜单键,LCD12864显示添加新卡、注销所有卡选项,具体如图27所示:图28 菜单界面按确认键,输入授权密码,如果密码正确,则可以添加新卡,输入错误,后继续输入,如果失败三次,自动退出菜单;按一下切换键,选择光标切换至注销所有卡,按数字键输入六位密码后,则注销所有卡,若密码输入不正确,则退出菜单;在菜单界面内,长按切换键,进入修改密码功能:先输入原始密码,如果输入正确,择继续输入新密码,如果原始密码输入不正确,则退出菜单。156 结论 本设计所用元器件较多,电路中使用了STC89C52单片机、MFRC522、LCD12864
48、、AT24C02等主要元件,实现了预计功能。在对设计要求做了认真分析后,根据要求选择了相关元器件,设计各模块电路,包括单片机控制电路、显示电路、射频卡识别电路、存储电路、键盘电路,提示报警电路。之后通过软件编程,实现了卡识别、加新卡、注销卡、修改密码等功能。 由于个人水平有限,本次设计中许多方面做得并不够好,在硬件部分,没有人工语音提示、键盘数较少等,软件上的问题则是不能记录各张卡的全部信息,所以不能有效的对进出人员的信息进行统计,不利于联机加以改善,以适应人们生活上的需求。 智能门禁系统应具有很强的实践性,他需要人们在不断地使用中,发现缺点和漏洞,并不断去完善,让它能够与时俱进,跟上时代潮流,在维护广大人民群众的安全上发挥更大的作用。参考文献:1 陆洲町.基于51单片机的多功能电子门禁系统设计.北京航空航天出版社.2001.7 2 邹应全.51系列单片机原理与实验教程.西安电子科技大学出版社.2007.123 仲伟杨.数字IC测试仪的研究与设计.南京理工大学.2011.34 周晓光、王晓华,射频识别(RFID)技术原理与应用实例M北京.北京邮电出版社. 2006
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四季度工作安排领导讲话三篇
- 生产专利许可使用合同(33篇)
- 有关文明养犬倡议书范文(31篇)
- 感恩教育300字心得体会(35篇)
- 21.2.2 二次函数y=ax2+bx+c的图象和性质 同步练习
- 江苏省苏州市姑苏区2024-2025学年八年级上学期期中考试历史卷(含答案)
- 湖南省衡阳市2024-2025学年高一上学期期中物理试题(无答案)
- 广西玉林市2024-2025学年八年级上学期期中教学质量监测物理试卷
- (教研室)山东省临沂市费县2024-2025学年七年级上学期期中考试生物试题
- 2022年高考语文复习专项训练:论述类文本阅读
- 车队车辆挂靠合同模板
- 期中 (试题) -2024-2025学年人教PEP版英语四年级上册
- 动物疫病防治员(高级)理论考试题及答案
- 跨境电商行业研究框架专题报告
- 提升初中生英语写作
- 2024年深圳市优才人力资源有限公司招考聘用综合网格员(派遣至吉华街道)高频500题难、易错点模拟试题附带答案详解
- 湖北省襄阳市2023-2024学年六年级上学期语文期中考试试卷(含答案)
- 2024年国家基本公卫培训考核试题
- 教科版物理八年级上册教案(全册)
- 电阻的实验报告
- JGJ58-2008 电影院建筑设计规范
评论
0/150
提交评论