《2022年实训报告模板.docx》由会员分享,可在线阅读,更多相关《2022年实训报告模板.docx(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品学习资源南 阳 理 工 学 院计 算 机 与 信 息 工 程 学 院软硬件专业综合课程设计总结报告题目:基于单片机的 RFID 读写器设计姓 名: 学 号:专 业:指导老师:起止日期: 13.11.18 14.01.10欢迎下载精品学习资源南 阳 理 工 学 院计 算 机 与 信 息 工 程 学 院选题的目的:RFID 是当今世界先进的射频技术和身份识别技术相结合的产物,是世界上最近几年进展起来的一项新技术,它胜利地解决了无源和免接触这一难题,使标志身份的卡片在靠近读写器表面时即可完成卡中数据的读写操作;RFID 技术一经问世,便立刻引起广泛的关注;由于其操作便利、抗干扰性强、牢靠性高、安
2、全性好的特点,使得它在一些接触式卡不适用或者无法使用的场所,具有无可比拟的优势,被广泛应用于公交、收费、门禁系统、考勤系统等领域;技术要求:IC1、系统要求利用 VC+软件开发和 Protel电路设计工具,结合万用表、示波器等工具;2、系统的主要功能有:1 显示系统:液晶屏显示,能显示系统时钟和卡片信息等; 2 按键操作:能实现对系统的设置和卡上数据的操作;3 机器读卡速度: 0.5 秒可完成一次打卡过程,读卡距离为5 至 10 厘 M;进度支配:主要参考资料:1谭民等 .RFID 技术系统工程及应用指南M. 北京:机械工业出版社.2007.4 ;2 郎为民 . 射频识别 读卡器将载波信号经天
3、线向外发送;2 卡进入读卡器的工作区域后,卡内天线和电容组成的谐振回路接收读卡器发射的载波信号,射频接口模块将其转换成电源电压、复位信号,使卡片欢迎下载精品学习资源激活;3存取掌握模块将储备器中信息调制到载波上,经卡上天线送给读卡器;4 读卡器对接收到的信号进行解调、解码后送至后台运算机;5后台运算机依据卡号的合法性,针对不同应用做出相应的处理和控制;2.2 各模块方案挑选1 掌握器的挑选采纳 ATMEL公司的 AT89S52作为系统的掌握器; AT89S52单片机算术运算功能强、软件编程敏捷、自由度大,可用软件编程实现各种算法和规律掌握,并且由于其功耗低、体积小、技术成熟和成本低等特点,使其
4、在各个领域应用广泛; AT89S52是我们熟识的掌握器,编程比较熟识,易于把握;2RFID 读卡芯片的挑选随着 RFID 市场的迅猛增长,各大传统IC 芯片制造商都加入到 RFID 读卡芯片的开发当中,可供挑选的芯片很多;其中NXP公司是较早进入 RFID 芯片行业的国际半导体公司,在射频读写芯片上产品较全;MF-RC500芯片就是 NXP公司生产的; MF-RC500是高整合的 13.56MHz 非接触 IC 卡读写芯片,整合了全部主动非接触通信方式和协议, MF-RC500支持 ISO 14443A&B 的全部层的通信方案;内部收发器部分能够驱动近耦合设计的天线而不需要另外的电路;数字部分
5、能处理完整的 ISO14443帧数据仍有错误检测;具有合适的并行接口,可以直接与 8 位的微处理器相连,并且支持 SPI 兼容接口;由于 MF-RC500能够满意设计需求,而且应用范畴比其他的芯片更广,资料齐备,作为本设计的射频接口芯片;3 显示模块的挑选使用液晶显示屏显示各种信息;液晶显示屏具有轻薄短小、低耗电量、平面直角显示以及影像稳固不闪耀等优势,并且符合本系统显示信息量多的需求,利用 LCD 自带的字符库,进行编程就可以实现所需信息的显示,其不必利用掌握芯片创建字符库,既节约了资源,又省去了该部分的大量编程任务;为欢迎下载精品学习资源了使人机界面更加友好,操作更加便利,采纳LCD液晶显
6、示;4 键盘模块的挑选由于该系统要求具有对卡片进行读/ 写操作,系统时钟的设置等,用到的按键较多,在设计时考虑采纳矩阵式按键;矩阵式按键接口适用于按键数量较 多,又不想使用专用键盘芯片的场合;这种方式的按键接口由行线和列线组成,按键位于行、列的交叉点上;这种方的优点是可以节约很多I/O资源,相对于专用键盘可以节约成本,且更为敏捷;缺点是需要用软件处理消抖、重键等;5 系统时钟和储备芯片的挑选刷卡时要记录刷卡的时间,用外接硬件时钟芯片的方法,为系统供应一个精确牢靠的时钟,用 3V 备用电池保证在系统掉电时也能正常走时;在此选用体积小、接口简洁的实时时钟芯片DS1302;它是美国Dallas公司推
7、出的低功耗串行通信接口专用芯片,采纳 3 线串行方式与单片机进行数据通信;采纳 AT24C64作数据储备器; AT24C64是串行 E2PROM储备器,支持 I2C 总线数据传输协议, 8K 储备器容量,用两根线与 CPU构成串行接口;由于本设计采纳的 AT89S52单片机不具备 I2C 总线接口,因此采纳软件法加以解决;2. 总体方案确定依据综合分析,系统设计方案如下: RDID读写器以 AT89S52单片机作为微掌握器,采纳MF-RC500芯片作为射频卡读 / 写模块,采纳 DS1302 作为系统时钟,以 AT24C64作为不掉电储备器,采纳 LCD显示,并以 RS232接口和运算机通信,
8、组成一套功能齐全的非接触IC 卡读写系统;当 IC 卡在天线区域经过时,单片机自动需求对IC 卡进行读写,再把读 / 写卡的时间一起存到储备器中,运算机可以通过串口把相关读 / 写卡信息读到运算机上,再进行统计、报表和打印输出等;系统框图如图 1 所示;欢迎下载精品学习资源图 1RFID读写器系统结构框图3. 硬件电路设计在本章中主要表达开发的读写器系统的硬件设计方案,对单片机掌握部分、射频处理模块、天线以及声音和显示部分电路的设计进行了具体说明;主要原理是通过单片机 AT89S52 掌握读写芯片 MFRC522 中的寄存器,从而实现MFRC522 对 Mifare 卡进行读写拜访操作;系统硬
9、件电路分为掌握电路 , 读写驱动电路和液晶显示电路等;射频识别卡读写设备的基本结构由以下几个部分组成如图 2 所示):LCD 显示模块通信单射 频天接片处 理线口机模 块键盘及其他图 2 系统硬件模块3.1 单片机掌握部分单片机是整个读写设备的核心部分,主要负责数据处理,它不仅要掌握射欢迎下载精品学习资源频读卡处理模块完成对射频识别卡的读写,仍要负责通过串口接口与上位机或其他应用系统进行通信以及键盘、显示模块等其他外部模块的掌握;本文设计的读写器系统的单片机采纳的是 AT89S52;图 3 单片机部分电路原理图3.2 射频处理模块射频处理部分是射频识别读写器的关键部件,通过射频处理部分与非接触
10、式 IC 卡进行数据通信;射频处理部分的核心部件就是射频基站芯片,本文设计的读写器的射频基站芯片采纳了MFRC522芯片;MFRC522是高度集成的非接触式 13.56MHz)读写卡芯片;此发送模块利用调制和解调的原理,并将它们完全集成在各种非接触式通信方法和协议中13.56MHz);MFRC522的内部发送器部分可驱动读写器天线与ISO 14443/ MIFARE.卡和应答机的通信,无需其它的电路;接受其部分供应一个功能强大和高效的借条和译码电路,用来处理兼容ISO 14443/ MIFARE.的卡和应答机的信号;数字电路部分处理完整的ISO14443A 帧和错误检测 奇偶 &CRC); M
11、FRC522支持欢迎下载精品学习资源MIFARE. Classic 如, MIFARE标.准)器件; MFRC522支持 MIFARE更.高速的非欢迎下载精品学习资源接触式通信,双向数据传输速率高达424kbit/s;可实现各种不同主机接口的功能:SPI 接口;欢迎下载精品学习资源串行 UART类I2C 接口;似 RS232,电压电平取决于供应的管脚电压;欢迎下载精品学习资源欢迎下载精品学习资源3.3 天线部分图 4 射频部分电路原理图欢迎下载精品学习资源天线是一种能够将接收到的电磁波转换为电流信号,或者将电流信号转换 为电磁波信号的装置;13.56 MHz 射频天线及其匹配电路共有三块:天线
12、线圈、匹配电路 LC 谐振电路)和 EMC滤波电路;在天线的匹配设计中必需保证产生一个尽可能强的电磁场,以使卡片能够获得足够的能量给自己供电,而且 考虑到调谐电路的带通特性,天线的输出能量必需保证足够的通带范畴来传送 调制后的信号;图 5 天线部分电路原理图欢迎下载精品学习资源3.4 声音提示及显示部分非接触式 IC 卡读写器进行读写操作时发出提示音,发声的器件选用蜂鸣器,该器件使用便利、价格廉价;单片机的I/O口驱动才能有限,不能直接驱动蜂鸣器发声,通过三极管来驱动蜂鸣器;显示部分采纳 LCD12864液晶显示模块;图 6 LCD 与单片机接口电路4. 单片机程序设计读写器应用系统硬件必需在
13、软件的掌握下才能工作,第五章主要表达读写 器系统软件设计的原理,读写器和Mifare卡的通信的过程,系统的初始化、防冲撞、密码验证和读 / 写操作等模块;软件设计主要包括主掌握程序设计,射频处理程序设计以及显示程序设计,编写程序的软件是 Keil uv4 ;程序的每一部分按模块化设计成一个文件,单独调试通过后,再在 Keil uv4 环境下加入到工程文件中,然后生成 HEX文件,烧录到 STC11F32XE单片机芯片中进行调试运行;4.1 Mifare 卡操作程序设计对 Mifare 卡常用的操作指令分为恳求应答、防冲撞、选卡、认证、读 / 写欢迎下载精品学习资源操作、增 / 减值、存取和传输
14、;下面流程图描述Mifare卡的整个操作过程;开头恳求应答防冲撞选卡片否是否选中是否三次相互认证是否合法是读写加减复原传送停止图 7 Mifare卡的操作流程图1. 恳求操作当有 Mifare卡进入读写器天线有效扫描范畴内时,读写器发出Request 命令;卡上的 ATR将启动, Request 命令将与 Mifare卡进行通信,读取 Mifare 卡上的第 0 扇区的第 0 块上的卡片类型号 TagTypechar data status;unsigned int data unLen;unsigned char data ucComMF522BufMAXRLEN;ClearBitMaskS
15、tatus2Reg,0x08;WriteRawRCBitFramingReg,0x07;SetBitMaskTxControlReg,0x03;ucComMF522Buf0 = req_code;status=PcdComMF522PCD_TRANSCEIVE,ucComMF522Buf,1,ucComMF522Buf,&unLe;n if status = MI_OK & unLen = 0x10*pTagType= ucComMF522Buf0;*pTagType+1 = ucComMF522Buf1;elsestatus = MI_ERR; return status;2. 防冲撞操作在
16、查询操作之后,要进行的是防冲撞操作,只取其中一张Mifare卡的序列号;假如有多张 Mifare卡同时处于读写器天线有效作用范畴内,读写器第一 与每一张 Mifare卡进行通信,分别取得其序列号,通过防冲撞功能,读写器将 会依据 Mifare卡的序列号来挑选其中一张Mifare卡,此卡将与读写器进行数据交换,没有选中的卡片连续处于等待状态;char PcdAnticollunsigned char *pSnrchar data status;unsigned char data i,snr_check=0;unsigned int data unLen;unsigned char data u
17、cComMF522BufMAXRLEN;ClearBitMaskStatus2Reg,0x08;WriteRawRCBitFramingReg,0x00;ClearBitMaskCollReg,0x80;ucComMF522Buf0 = PICC_ANTICOLL1;ucComMF522Buf1 = 0x20;status = PcdComMF522PCD_TRANSCEIVE,ucComMF522Buf,2,ucComMF522Buf,&unLen;if status = MI_OKfor i=0; i欢迎下载精品学习资源*pSnr+i = ucComMF522Bufi;snr_check
18、= ucComMF522Bufi;if snr_check .= ucComMF522Bufistatus = MI_ERR;SetBitMaskCollReg,0x80;return status;3. 选卡操作当 Mifare卡胜利完成恳求应答,防冲撞操作后,下一步将进行选卡挑选; 对指定序列号的卡进行挑选操作,选中的卡可以进一步同MFRC522进行通信, 其余的卡复原到初始状态;选卡操作流程图如图8 所示:选卡操作设置延时Y校验数据胜利?NN选卡失败返回参数序列号验证对比胜利?Y选卡胜利返回参数图 8 选卡操作流程图char PcdSelectunsigned char *pSnrcha
19、r data status;unsigned char data i;unsigned int data unLen;unsigned char data ucComMF522BufMAXRLEN;ucComMF522Buf0 = PICC_ANTICOLL1;ucComMF522Buf1 = 0x70;ucComMF522Buf6 = 0;欢迎下载精品学习资源for i=0; iucComMF522Bufi+2 = *pSnr+i;ucComMF522Buf6 = *pSnr+i;CalulateCRCucComMF522Buf,7,&ucComMF522Buf7;ClearBitMaskS
20、tatus2Reg,0x08;status = PcdComMF522PCD_TRANSCEIVE,ucComMF522Buf,9,ucComMF522Buf,&unLen;if status = MI_OK & unLen = 0x18status = MI_OK; elsestatus = MI_ERR; return status;4. 认证操作假如要对卡片的储备器中存放的信息进行拜访,需要进行卡片认证操作;通过将储备在 MFRC522的 RAM中的密码集中得一组密码与 Mifare卡上的密码进行匹配认证,假如这组密码匹配,就可以对Mifare卡进行下一步操作,不匹配就不能对 Mifar
21、e卡进行下一步操作;char PcdAuthStateunsigned char data auth_mode,unsigned char data addr,unsignedchar *pKey,unsigned char *pSnrchar data status;unsigned int data unLen;unsigned char data i,ucComMF522BufMAXRLEN;ucComMF522Buf0 = auth_mode;ucComMF522Buf1 = addr;for i=0; iucComMF522Bufi+2 = *pKey+i; for i=0; iuc
22、ComMF522Bufi+8 = *pSnr+i; status = PcdComMF522PCD_AUTHENT,ucComMF522Buf,12,ucComMF522Buf,&unLen;if status .= MI_OK | .ReadRawRCStatus2Reg & 0x08status = MI_ERR; return status;5. 读操作Mifare卡通过认证操作后,读操作答应单片机通过MFRC522来读取卡片上欢迎下载精品学习资源的数据,一次只能读取16 个字节;从卡片上读取的数据需要由单片机进行验证,以确保数据信息的有效性;char PcdReadunsigned c
23、har data addr,unsigned char *pDatachar data status;unsigned int data unLen;unsigned char data i,ucComMF522BufMAXRLEN;ucComMF522Buf0 = PICC_READ;ucComMF522Buf1 = addr;CalulateCRCucComMF522Buf,2,&ucComMF522Buf2;status = PcdComMF522PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen;if status = MI_OK &
24、 unLen = 0x90for i=0; i*pData+i = ucComMF522Bufi; elsestatus = MI_ERR; return status;6. 写操作在认证指令通过后, Write 写指令答应用户将数据写入到Mifare卡指定的扇区或数据块中;每次写入完整的16B 的数据块;char PcdWriteunsigned char data addr,unsigned char *pDatachar data status;unsigned int data unLen;unsigned char data i,ucComMF522BufMAXRLEN;ucComM
25、F522Buf0 = PICC_WRITE;ucComMF522Buf1 = addr;CalulateCRCucComMF522Buf,2,&ucComMF522Buf2;status = PcdComMF522PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen;ifstatus.=MI_OK |unLen.=4|ucComMF522Buf0&0x0F.= 0x0Astatus = MI_ERR; if status = MI_OKfor i=0; iucComMF522Bufi = *pData+i;欢迎下载精品学习资源CalulateC
26、RCucComMF522Buf,16,&ucComMF522Buf16;status=PcdComMF522PCD_TRANSCEIVE,ucComMF522Buf,18,ucComMF522Buf,&unLe;n if status .= MI_OK | unLen .= 4 | ucComMF522Buf0 & 0x0F .=0x0Astatus = MI_ERR; return status;7. 值操作当 Mifare卡的块的属性设定为值块时,可以对Mifare卡进行值操作,值操作包括增加、削减、取值、传输;voidCalulateCRCunsignedchar*pIndata,uns
27、ignedchardatalen,unsignedchar*pOutDataunsigned char data i,n;ClearBitMaskDivIrqReg,0x04;WriteRawRCCommandReg,PCD_IDLE ;SetBitMaskFIFOLevelReg,0x80;for i=0; iWriteRawRCFIFODataReg, *pIndata+i; WriteRawRCCommandReg, PCD_CALCCRC;i = 0xFF;don = ReadRawRCDivIrqReg;i-;while i.=0 & .n&0x04; pOutData0 = Rea
28、dRawRCCRCResultRegL;pOutData1 = ReadRawRCCRCResultRegM;4.2 软硬件的联合测试运行在软件编写的过程中,查阅了很多资料,通过不断修改、不断调试,所编写的程序基本满意了毕业设计的要求;在这个工程文件中,包含了3 个主要 C 程序,分别是 main.c 、rc522 和 ks0108.c ,分别对应为主掌握函数、射频收发芯片 MF RC522处理程序以及 LCD显示程序;每个 C文件都对应的有相关的头文件,在这些头文件里都定义了各个C文件中所使用到的相关参数;欢迎下载精品学习资源1. 下载程序到单片机应用 Keil 软件生成 HEX 文件,就可
29、以将程序下载到单片机上;将程序下载线连接好,打开下载程序的软件,本设计用串行烧写软件STC_ISP来下载;挑选匹配的器件类型和串口,其他的选项按默认就可以了,然后点击“打开程序文件”打开文件,再双击要下载进单片机的hex 文件,先让单片机断电,再点击“下载”,将会显现如下列图的下载界面,经过一段的时间,程序下载就完成了;下载程序界面如图 9 所示:图 9 程序下载图2 系统启动测试当射频识别系统接通电源启动时,在LCD 上显示“欢迎光临”四个大字,表示初始化胜利,可以进行读写拜访操作;如图10 所示欢迎下载精品学习资源图 10 系统启动测试3 系统充值测试当系统启动后,注册卡片后,可以进行充值
30、操作,每次充值金额为50元,如图 11、12 所示:图 5-11 IC卡充值前图 5-12 IC卡充值后4 系统扣费测试当 IC 卡靠近射频处理模块天线扫描范畴时,射频处理模块对IC 卡进行扣费操作,由原先的值削减 2 元,操作胜利前后如图13、14 所示:图 13 消费前 LCD显示金额图 14 消费后 LCD显示金额5 系统感应距离测试当卡片在读卡模块上方约5cm 处,读卡模块感应到卡片并进行扣费, 如图 15 所示:欢迎下载精品学习资源图 15 感应距离测试5. 总结射频识别技术是自动识别的高级形式,它的最大优势是非接触性识别,可以无需人工干预地完成识别工作,有很宽阔的应用前景;近几年它
31、成了国内外讨论的热点,国外发达国家在这方面的讨论比我们起步要早,但我国在此领域也正积极努力地讨论;在整个系统设计的过程中,通过对文献资料的查阅和相关技术手册的研读,我比较全面的把握了 RFID 系统的基本原理和实现方法,特殊是对于非接触式 IC 卡类型的 RFID 系统;RFID 技术近年来进展特殊快,应用越来越广泛,让我们的世界变得更智能化,使我们的生活更便利快捷;在今后,射频识别技术肯定会带来新的一轮换代潮流,让世界触手可及;为了适应现在日益丰富的需求,作为读卡设备,其性能需要不断改进,不断完善,使读卡设备更智能化、安全性高、隐私保密好的方向进展;本文设计的读写器是现实生活具体应用的一次尝
32、试,主要做了以下工作:对射频识别技术的原理、能量传输、数据传输、电子标签以及读写器的构 造做了较全面的讨论,分析了单片机在RFID 读写器上的优势及可行性;完成了读写器的软件设计,包括对 RC522的基本操作函数的编写、对非接触式IC 卡常用的操作程序的编写;经过对读写器系统的调试与实测试,本文设计的读写器能实现对Mifare 1 S50 卡进行寻卡、防冲撞、认证、选卡、读写数据等各种操作,由于天线大小的限制,感应距离仅为 50mm左右;在此读写器上进行了安全认证机制的设计以及测试,对于设计开发安全有效的射频识别系统供应牢靠的平台;欢迎下载精品学习资源在整个设计过程中,充分发挥了人的主观能动性
33、,自主学习,学到了很多没学到的学问,达到了预期的目的,完成了最初的设想,较好地完成了毕业设计;在此次设计中,知道了做任何事要有一颗平常的心,不要想着走捷径,一步一脚印,同时也练就了我的耐心,做好事情都在于有耐心;我觉得在此次毕业设计中学到了很多很多东西,这是最重要的;没有最好,只有更好;我信任通过这一次的毕业设计之后,我以后会更加努力,用严谨的科学态度去面对一切;克服困难,战胜自我,超越自我;参考文献1 郎为民. 射频识别 RFID)技术原理与应用 M. 北京:机械工业出版社 .20062 康东. 石喜勤. 李勇鹏等 .射频识别 RFID)核心技术与典型应用开发案例 M.人民邮电出版社 .20
34、213 游战清. 李苏剑等 .无线射频识别技术 RFID)理论与应用 M. 电子工业出版社.20044 慈新新 . 王苏滨 . 王硕.无线射频识别 RFID)系统技术与应用 M. 人民邮电出版社.20075 游战清. 刘克胜. 张义强. 吴谷.无线射频识别技术 RFID)规划与实施 M. 电子工业出版社 .20056 张殿东. 无线射频识别 ; void WriteRawRCunsigned char data Address, unsigned char data value;void SetBitMaskunsigned char data reg,unsigned char data m
35、ask;char PcdComMF522unsigned char data Command, unsigned char *pInData,unsigned char data InLenByte, unsigned char *pOutData,unsigned int *pOutLenBit;voidCalulateCRCunsignedchar*pIndata,unsignedchardatalen,unsignedchar*pOutData ;unsigned char ReadRawRCunsigned char data Address;欢迎下载精品学习资源void PcdAnt
36、ennaOnvoid;void delay_nsunsigned int data nsunsigned int data i;fori=0; inop;nop;nop;unsigned char SPIReadBytevoidunsigned char data SPICount;/ Counter used to clock out the data unsigned char data SPIData;SPIData = 0;for SPICount = 0; SPICount SPIData ;nop ;ifSTU_SPI_MISOSPIData|=0x01;SET_SPI_CK; nop;nop ;/ Drop the clock ready for the nextbit/ and loop backreturn SPIData;/ Finally return the read datavoid SPIWriteByteunsigned char data