文章以门禁控制为例,介绍一款基于RFID应用的通用型控制器的设计原理,并给出了利用Proteus软件进行仿真调试的方法。该控制器由RFID卡、天线、读卡模块、单片机、LCD1602显示器等组成,采用AT89SXX系列单片机作为控制芯片,采用EEPROM保存卡号,不怕掉电。采用125kHz射频读卡模块,读卡模块工作方式为主动方式,当RFID卡靠近读卡模块时,卡号连续以串行方式输出,经串口送入单片机或PC机进行处理。可用于公共场所的门禁管理,具有成本低、性能可靠、通用性好、用途广泛等优点,在此电路基础上进行简单应用功能扩展,便能满足各种场合用户的需求。
0 引言
RFID卡应用系统由RFID卡、读卡器、控制器等组成,读卡器将载波信号经天线向外发射,当RFID卡进入读卡器的工作区域后,卡中的电感线圈和电容组成的谐振回路接收读卡器发射的载波信号,卡中芯片的射频接口模块由此信号产生出电源电压、复位信号及系统时钟,使芯片“激活”,芯片读取存储器中的数据,经过调相编码后调制在载波上,经卡内天线回送给读卡器,读卡器对接收到的信号进行解调、解码后送至控制器或计算机,对卡号的合法性进行鉴别,并做出相应的处理和控制。
1 系统设计
控制器由RFID卡、天线、读卡模块、单片机、只读储存器、液晶显示器等组成,系统结构框图如图1所示。控制器采用高性价比的AT89S 51单片机作为控制芯片,显示器件采用LCD1602液晶显示器显示相关 *** 作信息,采用AT24WC02作为只读储存器,存储容量为2kbit,通过I2C总线接口进行 *** 作,具有写保护功能,用于储存RFID卡号,掉电不消失。
读卡模块采用125kHz射频读卡模块(型号为M106BXN),其电源为5V±10%,读卡电流为29mA,读写距离为6~16cm,适用于PC机或8位UART的单片机,波特率9600、19200可选,射频读卡模块可工作于主动方式和被动方式,在主动方式下,当RFID卡靠近模块时,卡号连续从串口输出;在被动方式下,当有RFID卡靠近模块,同时模块的CLK端为下降沿时,串口才输出卡号。本设计采用11.05926MHz晶体,波特率为19200的读卡模块,工作方式为主动方式,读卡模块引脚功能如表1所示。
串口通信采用的帧数据格式为1个起始位,8个数据位,无奇偶校验位,1个停止位。读卡模块输出数据共有5个字节数据,高位在前,低位在后,其中前面4个字节为卡号,最后1个字节为效验码。例如:卡号为01FAB401,则读卡模块输出为0X01 0XFA0XB4 0X01 0X41,其中效验码0X41由前面4个字节卡号进行异或计算得到,即0X01^0XFA^0XB4^0X01=0X41。
2 单片机资源分配
单片机引脚功能分配如表2所示。
3 电路工作原理
控制器仿真电路原理图,如图2所示,工作原理如下:
当按下K按键(用于记录卡号)并开机,进入记录状态,这时将RFID卡靠近读卡器,卡号被读出并送入单片机,单片机将卡号写入EEPROM,关机再开机,进入正常工作状态。
在正常工作状态下,当有RFID卡靠近读卡模块时,RFID卡从读卡模块的天线获得能量并开始工作,卡号以串行方式发送给单片机,单片机接收到卡号后,将其与预先写入EEPROM的卡号进行比较,如果两个卡号相同,视为卡号有效,则输出开锁信号,显示器显示“come in please!”;如果两个卡号不相同,视为卡号无效,显示器显示“error!”。
4 程序流程图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)