摘要:文章以门禁操控为例,介绍一款根据RFID使用的通用型操控器的规划原理,并给出了使用Proteus软件进行仿真调试的办法。该操控器由RFID卡、天线、读卡模块、单片机、LCD1602显现器等组成,选用AT89SXX系列单片机作为操控芯片,选用EEPROM保存卡号,不怕掉电。选用125kHz射频读卡模块,读卡模块作业方法为自动方法,当RFID卡接近读卡模块时,卡号接连以串行方法输出,经串口送入单片机或PC机进行处理。可用于公共场所的门禁办理,具有成本低、功用牢靠、通用性好、用处广泛等长处,在此电路基础上进行简略使用功用扩展,便能满意各种场合用户的需求。
关键词:RFID;单片机;通用型;操控器
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 程序流程图
5 调试与仿真
5.1 LCD1602仿真电路
LCD1602仿真电路原理图如图4所示。编写一段LCD测验程序在1602的第1行显现一个字符串“Hello!”用于测验LCD显现是否正常,运转仿真后,液晶显现器显现“Hello!”,阐明测验成功。
5.2 EEPROM读写仿真电路
EEPROM读写仿真电路原理图如图5所示。编写一个EEPROM测验程序,用于测验EEPROM读写功用是否正常,运转仿真后,液晶显现器第1行显现“Hello!”,第2行显现“EEPROM test pass”阐明测验成功。
5.3 串口通讯仿真程序
编写一个串口通讯仿真程序,用于测验串口通讯是否正常。串口通讯参数设置,如图6所示。运转串口通讯仿真程序后,从PC机键盘输入“1 2 3 4 5 67 8 9 a b c d”,在仿真终端窗口显现相应的字符,如图7所示,标明串口通讯成功。
6 定论
本操控器软件、硬件均经过调试并取得成功,到达规划要求,适用单卡单用户的使用场合,比方可用于宾馆客房、住宅小区单元出入口门禁操控,也能够用作考勤、电子车票、产品电子标签,还能够用于超市、游泳馆、健身中心、体育馆等公共场所作为门锁操控,本操控器具有成本低、功用牢靠、通用性好、用处广泛等长处,在此电路基础上进行简略的使用功用扩展,便能满意各种场合用户的需求,比方只需恰当挑选EEPROM的容量,简略修正程序,就能够将单卡单用户扩大为多卡多用户,用户量取决于EEPROM的存储容量。