嵌入式课程设计ARM刷卡考勤IC.doc

上传人:scccc 文档编号:12556397 上传时间:2021-12-04 格式:DOC 页数:28 大小:671.50KB
返回 下载 相关 举报
嵌入式课程设计ARM刷卡考勤IC.doc_第1页
第1页 / 共28页
嵌入式课程设计ARM刷卡考勤IC.doc_第2页
第2页 / 共28页
嵌入式课程设计ARM刷卡考勤IC.doc_第3页
第3页 / 共28页
嵌入式课程设计ARM刷卡考勤IC.doc_第4页
第4页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《嵌入式课程设计ARM刷卡考勤IC.doc》由会员分享,可在线阅读,更多相关《嵌入式课程设计ARM刷卡考勤IC.doc(28页珍藏版)》请在三一文库上搜索。

1、课程设计报告课程:嵌入式系统课程设计学期:班号:学号:姓名:教师:成绩:电子与信息工程学院2016年 6月题目:基于 STM-32刷卡考勤系统设计基本功能:1. 读卡功能:本系统的读卡模块可以识别基于国际标准ISO/IEC 14443的 IC 卡,可以读取 IC 的卡号。2. 考勤功能:本系统通过对 IC 卡的识别来统计出勤信息, 统计出应到人数。实到人数,实现考勤功能。3. 显示功能:对于考勤的相关信息,可以通过液晶显示屏来进行显示。扩展功能:对于数据库中存在的持卡人信息进行显示,并响铃提示通过;对于数据库中不存在的持卡人信息进行报警警告教师评语:评审教师:日期:第一章引言1.1 研究目的及

2、意义随着经济的飞速发展,愈来愈多的管理者认识到管理与效益是息息相关的,实现数据规范化、自动化的管理,是一个管理规范、运作高效的企事业单位的必然要求。现在的市场竞争是知识的竞争,管理手段的竞争。谁有先进的技术设备和管理手段,谁就有成功的先机。企业或单位对于方便、快捷的考勤系统有迫切的需求。而一些当前的刷卡考勤系统主要是基于计算机控制的联网型系统,不仅价格昂贵,体积庞大、笨重,而且需要网络的连接,不利于广泛的用于小范围的考勤管理。为了可以满足日常的方便快捷的考勤,本文设计了基于单片机的刷卡考勤系统。刷卡考勤系统将射频识别技术和现代管理结合起来。在企业中,刷卡考勤系统可以以节省大量的人力物力,简化日

3、常管理的繁琐程序,提高企业的管理效率。在高校中,刷卡考勤系统对加强学生的教学管理,促进教学改革也有着非常重要的意义。本系统的可能创新点是通过进一步完善软件环境使本系统与“一卡通”系统的兼容,实现了“校园一卡通”作为考勤卡的作用,拓展了本校“一卡通”的适用范围。通过读取IC 卡号,根据各个部门的数据库内存储内容调出相应信息。例如学校的图书馆学生借阅管理、学校微机机房的记时考勤记录、学校操场或学生宿舍的门禁管理、学校食堂的收费等。1.2 发展趋势目前,非接触式 IC 卡中的主流为 PHILIPS 公司的 Mifare 技术,并且已经被制定为国际标准: ISO/IEC 14443 TYPE A 标准

4、。欧洲一些较大的 IC 射频卡制造商和 IC 射频卡读写设备制造商以及 IC 射频卡软件设计公司等大都把 Mifare 技术作为技术标准,而发展和推进 IC 卡行业快速的向标准化发展。而对于非接触式 IC 智能射频卡方面的研究则代表了整个大行业的发展方向。 非接触式 IC 卡和接触式 IC 卡相比,它继承了接触式 IC 卡的容量大、安全性高的特点,同时也克服了以接触方式工作的 IC 卡所无法避免的缺点,如触点磨损、污染、静电以及插卡不便的读写过程,使非接触式 IC 卡的使用更加自由,应用更加广泛。当前,国内 IC 卡及相关产品的生产和研究的企业主要有上海复旦微电子股份有限公司,深圳市明华澳汉科

5、技有限公司等。中国 IC 卡产业虽然起步虽晚, 但发展迅猛,通过引进先进的技术和自主研发,在几年间,整体生产能力突破了 2 亿张。全国 IC 卡应用装置的开发和系统集成厂商也达到上千家。由于智能卡的潜在应用范围非常广,国内外学术界和科技工作者对非接触式智能卡的开发,给予了广泛关注和研究。近几年来,射频识别系统的发展极其迅猛。尤其自 1993 年金卡工程启动实施以来, IC 卡的应用领域得到不断的扩展, 一条完整的 IC 卡产业链已经初步建立起来了,并逐步成为国民经济新的持续增长点。1.3 可行性分析经济方面:现在市面上销售的中档考勤机售价一般在500 元左右,若批量采购的话售价能够相对的降低,

6、学校可以根据每个教研室的授课老师的数量来配备 2-5 台考勤机,由于学生考勤系统选用一般计算机操作,对硬件设施没有较高要求,所以每个科室的可以配置一台计算机作为客户端,预计每台客户端的售价为 3000 左右,鉴于本系统对计算机的硬件要求不高,可以考虑采用一般低档的服务器,预计售价为 10000 左右。技术可行性分析主要包括四个方面:目前有关的技术能否支持所开发的新系统; 新系统开发人员的数量和水平, 即人力资源;硬件和软件资源。 技术支持首先根据新系统的目标,考虑目前有关的技术能否支持所开发的新系统。这里讨论的技术必须是已经普遍使用的,而不是待研究的或正在研究的。 硬件资源开发管理信息系统所需

7、的硬件资源包含以下两个方面。系统开发人员在管理信息系统的开发过程中所需要的计算机设备及其有关的外部设备;管理信息系统开发成功投入使用后,使用单位所应具备的计算机设备及其有关的外围设备。对硬件资源进行可行性分析时主要考虑计算机的主机内存、类型、功能、联网能力、安全保护措施以及输入 / 输出设备,外存储器和联网数据通信设备的配置、功能、效率等指标是否符合系统方案设计要求,同时还要考虑计算机的性能/ 价格比。 软件资源软件资源的可行性分析主要考虑以下几点是否满足使用者,即学校的要求。 操作系统的选择。 编译系统的选择。 数据库管理系统的选择。 高级编程语言的选择。 汉字处理系统的选择。 应用软件包的

8、选择。1.4 基本内容本文主要是通过对射频设别技术的研究来设计一款基于单片机的刷卡考勤系统的硬件设备及其软件。 在设计 IC 卡读卡器的基础上,完成考勤系统的设计。本课题主要完成的任务包括:(1) 文献部分:无线识别技术的研究。(2) 硬件部分:包括单片机控制的射频读卡器的设、 12864 液晶显示电路的设计、报警电路的设计等。(3) 软件部分: ARM控制程序。(4) 系统的综合调试与分析: 在软硬件完成以后, 要对系统进行综合的测试与实验,分析系统的可靠性与实用性,调整系统的不足。第二章开发环境的安装和配置2.1 开发环境及其工具的介绍Linux 是一套免费使用和自由传播的类 Unix 操

9、作系统,是一个基于 POSIX和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 UNIX工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。 Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux 操作系统诞生于 1991 年 10 月 5 日(这是第一次正式向外公布时间)。 Linux 存在着许多不同的 Linux 版本,但它们都使用了 Linux 内核。 Linux 可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。这使得可以在 Linux 下

10、通过相应的模拟器运行常见的 DOS、Windows的程序。这为用户从 Windows转到 Linux 奠定了基础。许多用户在考虑使用 Linux 时,就想到以前在 Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑严格来讲, Linux 这个词本身只表示 Linux 内核,但实际上人们已经习惯了用 Linux 来形容整个基于 Linux 内核,并且使用GNU工程各种工具和数据库的操作系统。Linux 的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核

11、而言,都被视为拥有各自特性或类型的文件。至于说 Linux 是基于 Unix 的,很大程度上也是因为这两者的基本思想十分相近另外 Linux 是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了 Linux 的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变, 这让 Linux 吸收了无数程序员的精华, 不断壮大。Linux 同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的 X-Window系统,用户可以使用

12、鼠标对其进行操作。在 X-Window环境中就和在 Windows中相似,可以说是一个 Linux 版的 Windows。Linux 可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001 年 1 月份发布的 Linux 2.4版内核已经能够完全支持Intel64 位芯片架构。同时 Linux 也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。2.2 硬件环境本项目仅需要一台装有 Linux 系统的虚拟机的计算机,它可以使用 windows xp 及其以上版本以及友

13、善之臂开发板和一些基础焊接工具即可。2.3 软件环境1.Windows 7 操作系统2.Keil 43.VMvare Workstation第三章系统的设计本课题设计的刷卡考勤系统主要由 IC 卡、读卡模块、控制模块、显示模块和报警模块组成。下面分别对系统功能要求、系统技术要求及系统实现方案总体阐述。3.1 系统功能需求本系统的研制主要包括以下几项功能:1. 读卡功能:本系统的读卡模块可以识别基于国际标准ISO/IEC 14443 的 IC 卡,可以读取 IC 的卡号。2. 考勤功能:本系统通过对 IC 卡的识别来统计出勤信息, 统计出应到人数。实到人数,实现考勤功能。3. 显示功能:对于考勤

14、的相关信息,可以通过液晶显示屏来进行显示。对于数据库中存在的持卡人信息进行显示,并响铃提示通过;对于数据库中不存在的持卡人信息进行报警警告。3.2 系统的技术要求在了解本系统的工作原理和功能之后,我们就可以确定系统的技术要求。本系统采用了标准的ISO/IEC 14443 “ Type A”国际标准实现 IC 卡信息的读写,并通过天线的屏蔽干扰信号设计,大大提高了系统读卡的可靠性和通用性。系统采用的单片机处理器成本均比较低,适合批量生产和各类工程的需要。对于完整的系统而言,为了提高市场竞争力,要求该系统应符合便于携带、防干扰、易于使用和成本低廉等技术要求。具体参数和指标如下 :(1) 便于携带:

15、电路的设计和布局较为紧凑, 减少占用的空间,减小硬件的体积,便于携带;(2) 防干扰:系统的天线的合理设计,实现电子屏蔽;(3) 易用性:系统采用模块化的设计,在使用过程中安装简单,同时考勤信息直观的显示在液晶屏上,人机交换界面良好,易于使用。3.3 系统的组成及总体方案设计基于单片机的刷卡考勤系统主要由天线、 读卡芯片、单片机、控制电路、报警电路、显示电路组成。设计的关键在于读卡模块和显示模块电路的设计以及单片机与读卡芯片和液晶显示通信的程序设计。系统的组成结构如图 3-1 所示:蜂鸣器,指示灯控制器读卡模块天线图 3-1 系统功能模块图3.4 系统硬件设计读卡芯片电路的设计图( 8)读卡芯

16、片MFRC522 的电路连接工作原理: 如图( 8)所示, 21、22 脚作为晶振的接口, D5、D6 、D7 、SDA作为 MFRC522 与单片机以 SPI 方式通信的串口, 单片机对 MFRC522 读卡芯片进行操作的时候,通过其进行通信并传输数据。 TX1 、 TX2 、 VMID 和 RX 作为与天线连接端口。MFRC522 简介:MFRC522是由 Philips公司推出的一款非接触式读卡芯片, 它被应用于13.56MHz非接触式 IC卡的读卡通信。 MFRC522兼容 ISO14443 A所有的层 , 最高的传输速度达424kbps, 在不需要增加有源电路的情况下,内部的发送器部

17、分就能够直接驱动近距离天线, 在接收部分提供了一个高效的解调和解码电路 , 用于接 ISO14443 A兼容的应答信号。支持的主机接口SPI 接口、 I2C 接口、串行 UART 接口。如图( 9)所示:模拟接口用来处理模拟信号的调制与解调。 非接触式 UART用来处理与主机通信时的协议要求。 FIFO 缓冲区快速而方便地实现了主机与非接触式UART之间的数据传输。不同的主机接口功能可以满足不同的用户要求。图( 9) MFRC522 的内部框图MFRC522 的管脚的介绍表(2):符号管脚类型描述OSCIN21I晶振输入IRQ23O中断请求,用来输出一个中断事件SIGIN7I信号输入SIGOU

18、T8O信号输出TX111O发送器 1,传递调制的13.56MHZ 的载波信号TVDD12PWR发送器电源,给输出级TX1 和 TX2 供电TX213O发送器 2,传递调制的13.56MHZ 的载波信号TVSS10,14PWR发送器地, TX1 ,TX2 输出级地DVSS4PWR数字地D1D72531I/O不同接口数据管脚,可以做 SPI、I2C、 UARTSDA24I串行数据线EA32I外部地址,用来编码 I2CI2C1II2C 使能DVDD3PWR数字电源AUX119O辅助输出,用于测试AUX220OAVSS18PWR模拟地RX17I接收器输入,接收 RF 信号VMID16PWR内部参考电压

19、NRSTPD6I不复位和掉电,低电平有效OSCOUT22O晶振输出:振荡器的反相放大输出TRSTPIN9不连接,三态管脚PVDD2PWR管脚电源PVSS5PWR管脚电源地表( 2) MFRC522 的管脚MFRC522 支持的三种接口定义如表(3)所示:表( 3)三种通信接口方式MFRC522 采用 SPI 通信时序图,如图(10)所示图( 10) MFRC522 SPI 通信时序图兼容 SPI 接口读数据操作:MOSI 和 MISO 的字节顺序见表(4)表( 4)字节顺序表顺序表兼容 SPI 接口写数据操作:MOSI 和 MISO 的字节顺序见表( 5)表( 5)字节顺序表第四章程序设计与实

20、现本系统的程序设计采用模块化的设计方案,主要由初始化模块、读卡模块、考勤统计模块和显示模块组成。主程序的流程图如图 4-1 所示:图 4-1 主程序流程图图 4-2 系统框图程序代码:#includ e "stm32f10x_lib.h"#includ e "platform_config.h"#includ e "include.h"#includ e "stmflash.h"#includ e "Uart.h"#includ e<stdio.h>#includ e "r

21、c522.h"GPIO_InitTypeDef GPIO_InitStructure;ErrorStatus HSEStartUpStatus;vu8 ErrCnt=0;vu8 KeyVal_Now4,KeyCnt=0,TimeSec=0,SysPage=0; vu16 KeyVal_Real4=1,2,3;#define Max_User 10#define error 2vu8searchnum=0;unsigned intunsigned intSearchNumber=0;clk0=0;vu8str3=0,'0','0'vu16 SysDate

22、256;#define FALSE 0#define TURE1/ 状态定义表#define on1#define off0#define MAX_NUMBER63vu8 modeflag=0,clearallflag=0,changeflag=0/VerifyPassword:验证设备握手口令vu8VPWD16=16,0X01,0Xff,0xff,0xff,0xff,0x01,0,7,0x13,0x00,0x00,0x00,0x00,0x00,0x1b;/ 回送 12个/ 设置设备握手口令vu8STWD16=16,0X01,0Xff,0xff,0xff,0xff,0x01,0,7,0x12,

23、0x00,0x00,0x00,0x00,0x00,0x1a;/ 回送 12个/GetImage:探测手指并从传感器上读入图像vu8GIMG14=12,0X01,0Xff,0xff,0xff,0xff,0x01,0,3,1,0x00,0x05; / 回送 12 个/Gen Templ et1:根据原始图像生成指纹特征1vu8GENT114=13,0X01,0Xff,0xff,0xff,0xff,0x01,0,4,2,1,0x00,0x08;/ 回送12个/Gen Templ et2:根据原始图像生成指纹特征2vu8GENT214=13,0X01,0Xff,0xff,0xff,0xff,0x01,

24、0,4,2,2,0x00,0x09;/ 回送12个/Search Finger:以 CharBufferA 或CharBufferB中的特征文件搜索整个或部分指纹库vu8SEAT18=17,0X01,0Xff,0xff,0xff,0xff,0x01,0,8,4,1,0,0,0,0x65,0x00,0x73;/ 回送12 个/Merge Templ et;将 CharBufferA 与 CharBufferB 中的特征文件合并生成模板,结果存于ModelBuffer 。vu8 MERG14=12,0X01,0Xff,0xff,0xff,0xff,0x01,0,3,5 ,0x00,0x09;/回送

25、 12个/Store Templ et:将 ModelBuffer 中的文件储存到 flash 指纹库中vu8 STOR16=15,0X01,0Xff,0xff,0xff,0xff,0x01,0,6,6,2,0x00,0x00,0x00,0x0f; /回送 12个/DEL one templ etvu8 DELE_one16=16, 0X01 ,0Xff,0xff,0xff,0xff,0x01,0x0c,0x00,0x00, 0,1, 0x00,0x15;0,7,/DEL templ et;清空指纹库vu8DELE_all12=12,0X01,0Xff,0xff,0xff,0xff,0x01,

26、0,3,0x0d,0x00,0x11;/ /宏定义 - 结束vu8vu8FifoNumber=0;FIFOMAX_NUMBER+1=0;/*1毫秒延时程序 */void delay1ms(unsigned int t)unsigned long int i,j;for(i=0;i<t;i+)for(j=0;j<120*72;j+);vu8 UartRx100,UartTx100=0x58;vu16 RecCnt;vu16 RecTimeCount;vu8 UartRecInit=0,Uart_RecOk=0,UartFlag_RecTime=0;#define Mode_Get 0

27、#define Mode_See 1vu8 Mode=Mode_See;void TxdByte(vu8 dat)/ 串口发送信息 ,通过查询方式发送一个字符/ 等待发送完毕 ,必须放在前面while(USART_GetFlagStatus(USART2,USART_FLAG_TC) = RESET);/ 发送数据USART_SendData(USART2,dat);vu8 UartSendCnt=0;void UartSend(void)/CRC及自动加结束符vu8 i;USART_Cmd(USART1, ENABLE);/打开串口 for(i=0;i<UartSendCnt;i+)/

28、 等待发送完毕 ,必须放在前面whil e(USART_GetFlagStatus(USART1,USART_FLAG_TC)= RESET);/ 发送数据USART_SendData(USART1,(u8)UartTxi);void PutOK(void)UartTx0='O'UartTx1='K'UartSendCnt=2;UartSend();void PutER(void)UartTx0='E'UartTx1='R'UartSendCnt=2;UartSend();void TIM1_UP_IRQHandler(void)

29、if(TIM = TIM1)if(TIM_GetITStatus(TIM, TIM_IT_Update) != RESET)/ 判断是否为更新事件标志位TIM_ClearITPendingBit(TIM, TIM_IT_Update);/ 清除 更新事件 标志if(UartFlag_RecTime)/ 从接收第一个有效字节开始 , 进行一秒的倒计时 ,如果没收到完整的/ 复位接收器 ,并发送一个字节的报错数据 0x88.if(RecTimeCount>0)RecTimeCount-;elseUartRecInit=0;UartFlag_RecTime=0;/ 禁止接收倒计时Uart_Re

30、cOk=1;/ES=0;USART_Cmd(USART1, DISABLE);第五章系统测试测试时首先检测硬件电路的设计原理是否正确,能否达到预期效果以及实现方法是否简便;其次在焊接电路之后,认真检查电路焊接情况。这里采用分块调试的方法,分为显示模块电路,报警模块电路,读卡模块电路以及控制电路。在每个模块的调试过程中又采用了由局部到整体,由简单到复杂的调试方法。先测试单片机控制模块及其下载电路是否正常工作,然后测试显示模块能否正常工作,接着测试报警模块的电路、读卡模块的电路,最后再把各个模块连成整体。开机后,作品状态如图5-1 所示。图 5-1作品实物系统的电脑操作程序界面如图 5-2 ,在界

31、面中可以对“网页端口”、“考勤时间”等信息进行设置。图 5-2 程序界面将 IC 卡靠近传感器,系统会提示并进行相关操作, 如图 5-3 。图 5-3刷卡操作演示在刷卡的同时,软件系统中也会进行操作并提示, 如显示“添加成功”,如图 5-4 所示。图 5-4添加成功界面添加 IC 卡信息后,再次刷卡的时候,就会显示 IC 卡编号,同时系统软件中显示刷卡信息,如图 5-5 、5-6 所示。图5-5显示 IC卡相关信息图 5-6 应用程序中显示刷卡信息在后台中,可以登录网站查看考勤信息,如图5-7 所示。图 5-7 在网页中查看考勤信息第六章总结本文在参考国内外大量资料的基础上,针对传统考勤方式存

32、在的问题,结合 IC 智能卡的流行趋势, 合理地提出了基于单片机的刷卡考勤系统的设计方法。本设计采用简单的设计,解决了在一些小范围内刷卡考勤的实现的问题,并且经济性,便携性有了很大的改善,极大地提高了产品的实用性和市场竞争力。本文设计的刷卡考勤系统由读卡模块和显示模块两大部分构成。我主要负责 IC 读取的硬件方面,利用 IC 卡的通用性来解决日常生活中的考勤问题,对于传统的考勤方式具有很大优势,可以提高企业或单位的运作效率,极大地方便我们的生活。随着社会的发展,人们工作、学习、生活节奏的加快,高效率的考勤方式必然成为最终的趋势,此外本设计也可以很容易的改造为门禁系统、 IC 卡计费系统,具有很

33、大的适应性。然而,由于本小组的知识不够全面,再加上时间紧迫和实验条件的限制,该刷卡考勤系统还有许多需要完善的地方。比如:可以通过基于 GSM 的无线通信和 PC 连接,使考勤信息可以及时发送到后台终端,实现大范围的考勤等;也可以和近期比较流行的近场通讯技术(简称, NFC)结合起来,使刷卡考勤更为便利。这些都需要在后续工作中得到进一步解决。通过此次课题的研究,让我更加深入的了解了ARM的一些功能,对于ARM在日常生活中的运用有了更深层次的了解。在研究时也发现了自身对于 ARM的不理解之处,并查看相关书籍等资料解决了不懂的问题。结合实际工作中的实践,和这次的课设论文撰写,了解了很多也学到了很多。

34、同时,对以前所学的专业知识, 有了进一步的加深和巩固。参考文献1 梁飞 . 射频卡及其读写设备内核技术的研究与应用开发 . 学位论文:武汉理工大学2 孟锟泰 . 基于 ARM的 915MHz射频识别读卡器研究 . 学位论文:天津大学3 汪国海 . 非接触式卡读卡器设计 硕士论文:电子科技大学4 陈宝平,王月波,马伯元 基于 MFRC522的 Mifare 射频卡读写模块的开发微计算机信息2007 年第 23 卷第 11-2 期5 沈宇超,沈树群,射频识别技术及其发展现状。 电子技术应用,1999(1):4-5.6 无线射频识别技术 (RFID) 理论与应用电子工业出版社。7 射频识别 (RFID) 技术 ( 第 2 版) 电子工业出版社。8 单片机原理及应用,杨恢先等著,国防科技大学出版社。9 单片机原理及接口技术实践教程, 胡建等著,机械工业出版社。10 智能卡技术 ( 第三版 ) IC 卡与 RFID 标签,王爱英等著,清华大学出版社。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1