1.概述
(1)本设计采用STC89C52作为主控芯片,专用读卡器模块用来读射频卡的信息,当有卡进入到读卡器读卡的范围内时就会读取到相应的卡序列号,并根据得到的卡序列号做出相应的操作。若正确则开门,若不正确则报警并显示错误信息。
(2)本设计实现了自动、准确的识别卡序列号,对门禁系统起着重要的作用EEPROM采用AT24C04芯片,掉电后可以存储密码,从而保证了系统的安全性。人机交互通道部分采用了4×4矩阵键盘输入以及LCD12864标准字符型液晶显示。针对于用按键输入密码,根据密码的正确与否来进行相应的操作,管理员可以自行设定和修改密码;输出系统部分包括驱动开锁电路和报警电路;其中,在本系统设计中,驱动开锁电路用发光二极管表示,而报警电路则使用蜂鸣器。
本次设计的硬件电路是由STC89C52单片机为控制核心,射频卡信息由MFRC522模块读出,通过mcu在LCD12864上显示,通过按键完成密码验证和修改密码的功能,并根据输入密码的对错,执行相应继电器的动作和蜂鸣器的状态,整个门禁系统框图如图3-1所示。
9 ?$ _7 Y! X# N J, ?1 F8 L2 D* f$ a2 x' C# E/ J6 w2 i2 X
a.射频识别识别系统原理
典型RFID系统由应答器(Tag)、读写器(Readand Write Device)以及计算机系统等组成。
* @0 u1 e* K1 p" D
读写器由无线收发模块、天线、控制模块及接口电路等组成
应答器也称电子标签,它具有可存储读写信息及对信息进行加密的能力,是射频识别系统主要的核心
计算机系统是以单片机或微处理器为数据处理核心,主要是对读取到电子标签进行相关的信息管理。
' L1 d* _# J/ W* D3 ^& G9 H
+ C1 m) u) h4 i* u9 E" S在阅读器的感应范围之外,电子标签无源无法工作,只有在阅读器感应范围之内,电子标签才是有源的。应答器工作所需的能量,是通过读写器的耦合单元传输给应答器的。应答器如果是无源系统,即应答器内不含电池,则应答器工作的能量是由读写器发出的射频脉冲提供[8]。应答器如果是有源系统,即应答器内含有电池,则应答器工作能量和工作寿命有电池决定。RFID射频系统结构图如图:
实用RFID系统为无源系统,即射频卡能量由读写器发出的射频脉冲信号提供。无源系统的通信优劣取决于读写器发出的脉冲信号能否被射频卡完整接受。当射频卡进入读卡器接受范围后,如果接收到读卡器发出的射频信号,就能凭借产生的感应电流所获得的能量发送出存储在卡片中的信息,通过读卡器的处理,将信息送至信息管理系统进行有关数据处理。
+ |: H6 q3 Q( l, C8 Z8 Y5 a5 J/ M2 z; t ^
b.MFRC522射频模块
+ S2 h' ^& N' {) O* ^
MFRC522是应用于13.56MHz非接触式通信中高集成度读写卡系列芯片中的一员,是NXP公司推出的一款非接触式读写卡芯片。模块实物如图:
MFRC522利用了先进的调制和解调的技术,完全集成了在13.56MHz下所有类型的通信协议,支持多种工作在13.56MHz下的射频卡读写操作。其内部发送器部分可驱动读写器天线与射频卡和应答机的通信,无需其它的电路。模块的控制接口采用了标准SPI通讯接口,由于MFRC522射频模块采用3.3V供电电源,所以需利用LDO稳压电路将5V转换为3.3V,模块电路连接图如图:
(2)LCD12864显示屏电路
LCD12864显示屏电路主要采用了数据并行的控制方式(PSB接地为串行模式,PSB接电源为并行模式),同时使用了可调电位器实现显示屏背光的调节,电路如图:
(3)EEPROM存储电路
( q% y% f& Q9 S$ ^% a为了实现用户密码和RFID卡信息的存储,本设计采用EEPROM存储芯片AT24C02,其内部集成了256个8位字节共2Kbit的储存空间,并采用了IIC总线接口进行操作,具有一个专门的写保护功能。电路如图:
由于其他电路相对简单,在此不做介绍了。
! n3 E; v, l8 J$ x. D# V& d1 S. E
1 Q, c+ `! u' z' C2 j(4)总体硬件电路图
3.软件设计
本设计的软件主要采用状态机的原理对整体功能实现进行编程,主要实现四个操作:
# n \$ Q6 d C# V/ F按键输入功能获取
显示屏操作刷新及切换
RFID标签信息获取及处理
用户密码输入及对比
- t; t, J- m$ _( D. T3 q
+ ~+ m+ X- t4 k s6 I(1)主函数
(2)状态机处理程序
由于此程序代码量过多,这里只贴出重要的部分,其中符号“…”表示被省略的代码
+ z' K* c, H" y. l/ i7 G