1指纹考勤系统实验报告班级:电信092班姓名:保昆200916022218邵苗苗200916022217何郭微200916022207马政仑200916022222指导老师:陶福寿2012年5月6日2目录1指纹识别技术概述..................................................................31.1指纹识别技术的发展系统简介......................................31.2系统简介..........................................................................42指纹识别系统的设计..............................................................52.1指纹识别系统的硬件设计..............................................52.1.1FM—180指纹识别模块......................................52.1.289C52RC单片机...................................................72.1.3UART接口...........................................................92.2指纹识别系统的软件件设计..........................................93设计内容.................................................................................103.1指纹识别流程图............................................................103.2程序代码........................................................................104测试结果.................................................................................145心得体会.................................................................................15保昆:stc89c52邵苗苗:FM-180指纹识别模块何郭微:UART串口马政仑:1062液晶显示31指纹识别技术概述1.1指纹识别技术的发展系统简介人们使用指纹进行个人身份鉴定已经有很长的历史考古证实,公元前7000年到6000年以前,古叙利亚和中国,指纹作为身份鉴别己经开始应用。考古发现,在这个时代,一些粘土陶器上留有陶艺匠人的指纹,中国的一些文件上印有起草者的大拇指指纹,在Jercho的古城市的房屋留有砖匠一对大拇指指纹的印记等。在我国,早在公元650年,唐代作家贾公秀在其作品中就着重提到了指纹是确认个人身份的方法。我国将指纹应用于民间契约及断案有悠久的历史,但是由于缺乏专门性研究,未能将指纹识别技术上升为一门科学。虽然指纹的一些特征己经被人们认识和接受但不能证明,但指纹己经广泛应用社会的各个方面。用指纹采集仪采集指纹,提取出细节点,然后将细节点保存到数据库中,形成指纹模板库。在线部分——用指纹采集仪采集指纹,提取出细节点,然后将这些细节点与保存在数据库中模板细节点进行匹配,判断输入细节点与模板细节点是否来自同一个手指的指纹。一般来说,离线处理允许人工因素介入,可根据需要手动调整系统参数,而在线处理应完全由系统自动完成所有操作。自动指纹识别系统框图如图1所示:指纹采集图像增强细节提取细节点数指纹图像细节点降噪后的图像离线部分在线部分指纹采集图像增强细节提取细节点数指纹图像细节点降噪后的图像模板细节点匹配图1自动指纹识别系统框图4预处理是将输入的(直接采集进来的)低质量、有噪音的指纹源图象处理成已细化了的清晰的二值图像。它的目的是减少低质量的图像对分类识别结果的影响,预处理中一般包括图像增强、滤波、二值化、细化等步骤。在上图中提到细节提取,该细节所指的是指纹纹路。指纹纹路有3种基本类型——环型、弓型和螺旋型。现在,科学家已能够通过模型再现那些较为常见的指纹,也能重复不太复杂的罕见指纹的形成过程。目前尚未发现有不同的人拥有相同的指纹,所以每个人的指纹也是独一无二。由于指纹是每个人独有的标记,近几百年来,罪犯在犯案现场留下的指纹,均成为警方追捕疑犯的重要线索。现今鉴别指纹方法已经电脑化,使鉴别程序更快更准。每一个人的指纹纹路都有各自的特点,所以每一个指纹纹路的细节也是有所不同的。要识别一个指纹,其关键所在就是提取每一个指纹纹路的细节,只有提取到更多的细节点数才能更加准确的识别一个指纹。离线部分进行的是指纹录入操作:当开始指纹采集的时候,指纹识别模块将对所读取指纹进行图像增强,着重对指纹纹路进行扫描,并提取其特有的纹路。在将其进行保存。在线部分进行的是指纹录入操作:当识别源置于指纹识别区域时,指纹识别模块同样进行图像增强的操作,此时指纹识别模块将对指纹纹路进行扫描,读取指纹纹路的特点并将其与指纹库的存储资源进行比对。当所读取指纹纹路与所读取指纹相似度超过90%,则表示读取成功。1.2系统简介指纹识别系统的基本结构和整体流过程,并且从硬件系统和软件系统两个主要方面探讨了设计指纹识别系统的基本方法。硬件系统的设计主要是基于89C52RC单片机、FM—180指纹识别模块、以及相关的程序设计;软件系统的设计主要是指纹识别系统算法的设计,其中包括图像处理和图像识别两个方面。通过实验显示,该系统采集的指纹图像较清晰、失真较小,处理后的图像轮廓分明、特征突出,利于指纹分类与识别。通过对指纹识别系统的研究、设计与开发,综合运用了信号采集及接收技术,图像处理及识别技术,基本实现了利用单片机进行指纹识别系统开发的目的。52指纹识别系统的设计2.1指纹识别系统的硬件设计硬件系统是实现一切系统功能的物质基础,它是系统不可缺少的一个整体,一个工程系统的建立都是在硬件基础上展开的。本次设计任务的硬件设施已经配备,其核心是89C52RC单片机与FM—180指纹识别模块,我们的任务是完成两者的主电路连接,实现指纹图像采集的功能。2.1.1FM—180指纹识别模块FM-180亮背景光学头指纹识别设备采用光学指纹传感器,由高性能DSP处理器和FLASH等芯片构成,具有指纹图像处理,模版提取,模版匹配,质问搜索和模版存储等功能。指纹特征:指纹算法是从指纹图像中提取的特征,代表了指纹的信息。指纹的保存,比对,搜索都是通过操作指纹特征来完成。图二系统参数与接口(A型)6FM-180是完整的指纹识别模块,不需挂接任何外围部件,模块始终处于从属地位,主机需要通过不同的指令让模块完成各种功能。主机的指令,模块的应答以及数据交换都是按照规定格式的数据包来进行的。主机必须按照格式封装要发送的指令或数据,也必须按格式解析收到的数据包。FM—180指纹识别模块使用USB供电,使用拓展的+5V电源接口。该模块的正常工作电流为100-170mA。峰值电流将可达到200mA。在该模块进行指纹录入操作时,其时长约为1.5s。而当其进行指纹识别操作时,由于要进行特征提取和指纹对比等步骤,所以其操作时长约为3-5s。该模块可以存储约900组指纹数据。经过小组成员100次的反复操作,该模块的识别率为100%,该数据将在更多的实验数据下长生变动。图三1602液晶显示此模块包括液晶初始化、命令的输入、显示数据的输入。其中命令是用于控制液晶状态是否显示光标,光标是否闪烁,是否清除原来数据以及显示的具体位置。数据显示主要是将要显示的信息按需要准时显示出来。按键电路:其按键共有三个。K1:复位。K2:指纹录入。K3:指纹读出。按下k1系统处于复位状态,将清空之前的所有操作!按下k2键后,FM-180指纹识别模块开始处于工作状态,工作灯闪亮。此时可以进行指纹录入工作,将所需录入的指纹置于识别区1-2秒,显示testfinger1.2.3….表示录入成功!按下k3键后模块处于识别工作模式,将之前多录入的指纹体置于识别区3-5秒,显示finger1.2.3…表示读取成功模式指示灯:共有两个灯,一红一绿。与模块握手通过,绿灯亮起。进入7识别模式;红色灯亮,进入录入指纹模式。电源与指示灯:该模块使用USB供电,使用拓展的+5V电源接口。当与计算机接通后,按下开关,电源指示灯亮起。2.1.289C52RC单片机STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外STC89X52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,12T。STC89C52具体介绍:①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。④可编程输入/输出引脚(32根)8STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.71.I/O口输入/输出口经过特殊处理,很多干扰是从I/O进去的,每个I/O均有对VCC/对GND二级管箝位保护。2.电源单片机内部的电源供电系统经过特殊处理,很多干扰是从电源进去的3.时钟单片机内部的时钟电路经过特殊处理,很多干扰是从时钟部分进去的4.复位电路单片机内部的复位电路经过特殊处理,很多干扰是从复位电路部分进去的.工作流程:当读取主函数时定时器0开中断设17ms的初值。只对液晶进行写操作,不进行读操作。液晶初始化,串口初始化。UART方式1:8位UART,REN=1:允许接,SMOD=0波特率不加倍。T1方式,用于UART波特率,UART波特率设置:9600。打开定时器0,中断0,低电平中断。中断1,低电平中断。开中断0,开中断1。开始握手6次,如果没有一次成功,表示模块通信不正常。只要成功就跳出此循9环。与模块握手通过,绿灯亮起。进入识别模式。录入一个指纹,如果仍为低电平,表示按键有效。此时等待松手与模块握手通过。采集两次,生成1个指纹模板成功,保存也成功,进入录入指纹模式。循环一结束。模式转换,其中用m