基于RC522的非接触式IC卡读卡器设计(含程序) 下载本文

内容发布更新时间 : 2024/5/9 20:02:43星期一 下面是文章的全部内容请认真阅读。

中北大学2016届毕业设计说明书

4 通信原理

4.1 SPI通信 4.1.1 概述

SPI通信是一种高速串行通信,连线也很简单。图中,SCK、MOSI、MISO、NSS分别对应芯片的D5、D6、D7、SDA管脚

图4.1 连接到带有SPI接口的微控制器

在RC522模块与单片机SPI通信中作从机,单片机作主机。工作时钟SCK由单片机产生。单片机通过MOSI向RC522写入数据,单片机通过MISO从RC522中读出数据

每次进行数据交换时,按照高位在前低位在后的顺序。MOSI和MISO上的数据只会在SCK脉冲的下降沿改变,在SCK脉冲的上升沿保持不变。 4.1.2 读数据

单片机通过MISO从RC522中读出数据的过程中,需要先通过MOSI向RC522写入读模式和数据地址,才能在MISO上得到FIFO缓冲区的数据。

表4.1 MOSI和MISO的字节顺序

4.1.3 写数据

单片机通过MOSI向RC522中写入数据的过程中,需要先通过MOSI向RC522写入写模式和数据地址,才能在MOSI上向FIFO缓冲区写入数据。

第 26 页 共 61 页

中北大学2016届毕业设计说明书

表4.2 MOSI和MISO的字节顺序

4.1.4 地址字节

之前说明的读写模式和地址按如下表的字节格式。第一个字节的最高位设置读写模式。读写的寄存器地址应向左移一位,最低位置0,最高位按读写格式置位。

表4.3 地址字节格式

4.1.5 SPI兼容接口的时序

表4.4 SPI的时序规范

图4.2 SPI时序图

第 27 页 共 61 页

中北大学2016届毕业设计说明书

如SPI时序图所示,MOSI和MISO上出现数据之前,必须使NSS信号从高电平置成低电平,传输完毕后设置成高电平。 4.2 串口通信 4.2.1 串行接口结构

TXDSBUFTH1TL11控制门发送控制器÷16TI去串口中断≥1AT1溢出率÷20SMOD接收控制器移位寄存器RIRXDSBUF

图4.3 串行接口结构

如图所示,有两个结构上独立名称相同的收发SBUF缓冲器,它们的地址都是99H 。收发SBUF缓冲器是双缓冲结构,分别由收发控制器控制。在程序中,SBUF=A表示将接收SBUF缓冲器收到数据A发送给串口;A=SBUF表示从串口中得到的数据存入A,因此,使用SBUF缓冲器并不会导致重叠。 4.2.2 串行通信的数据结构

一个字符帧空闲起始位数据位校验位停止位空闲下一字符起始位LSBMSB图4.4 数据结构

串行异步通信的特点:收发双方的时钟可以相异,减少了硬件设备,多了点自主性,但每个字节的数据要加上2~3位的起止位,各个数据之间还有空闲时间,所以串行异步通信传输效率低。

第 28 页 共 61 页

中北大学2016届毕业设计说明书

5 读卡器的硬件电路设计

5.1 读卡器硬件组成

天线模块 RC522芯片 51单片机 PL2303串口电路 电源电路 蜂鸣器驱动电路 串行通信 电源供应 计算机 图5.1 读卡器结构框图

从本课题的要求上看,非接触近距离识别技术主要研究基于射频原理的非接触IC卡识别技术,该课题涉及到无线通信和射频识别技术,因此需要一片具有调制和解调功能的射频芯片,从安全性能上需要能对通信时的数据进行加密,所以MF RC522可以作为射频识别芯。射频芯片与IC卡之间的通信,需要RC522连接一个具有能形成RF场的天线模块。51单片机起到连接IC卡和计算机的桥梁作用,用以处理数据和写入用户信息,是整个系统的核心。单片机通过PL2303模块将卡号和用户信息发送到计算机,得到的数据通过串口调试助手软件来显示。同时,整个系统的电源由计算机的USB口提供,也是通过PL2303模块传给单片机。 5.2 微控制器

STC11F60XE是采用8051核的ISP(In System Programming)在系统可编程芯片,是一款高速/ 低功耗的增强型8051 单片机,芯片内含有60KB的用户应用程序空间,可反复擦写10万次, 经常工作在5V的电压和12MHz的时钟频率下,芯片内部含有MAX810 专用复位电路。与传统的8051相比,多了一个独立波特率发生器,除去了定时器2,工作速率相当于普通51单片机的十多倍,指令的执行速度也全面提升,最快的指令能快24倍,该芯片与常用STC89C51的引脚结构相同,并且通用所有的普通8051单片的C语言指令代码,只要学会使用普通的8051单片机也就会使用该款芯片。

如图所示的是STC11F60XE的最小系统,所用的是DIP-40封装的芯片,该芯片

第 29 页 共 61 页

中北大学2016届毕业设计说明书

外接了复位电路和11.0592MHz的晶振,PO接口接上1KΩ的排阻,单片机EA管脚外接一个LED灯,当系统通电后,LED亮。

图5.2 STC11F60XE最小系统

5.3 蜂鸣器

图5.3 蜂鸣器电路

蜂鸣器一端接上8550PNP三极管用以放大电流,基极上连接单片机的P20接口,另一端直接接地。当智能卡操作正确时,蜂鸣器长响一声。当智能卡操作错误时,蜂鸣器发出警报,短响三声。 5.4 PL2303串口模块

该器件内置USB功能控制器、USB 收发器、振荡器和带有全部调制解调器控制

第 30 页 共 61 页