首页 基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述

基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述

举报
开通vip

基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述 本 科 生 毕 业 论 文(设计) 此处为论文中文 题目,要求居中填写 主标题不超过24题目:基于STM-32指纹密码锁控制系统的设计与实现 个汉字;可加副标题 (副标题前加破折 号),副标题与主标题 间空一行的位置 主标题:黑体,小学生姓名 岑孟杰 二,居中 学 号 110104200201 副标题:楷体 _GB2312,四号,居中 指导教师 张后旗 阅后删除此文本 框。 二级学院 信息学院 专业名称 计算机科学与技术 班 级 11计...

基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述
基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述 本 科 生 毕 业 论 文(设计) 此处为论文中文 题目,要求居中填写 主标题不超过24题目:基于STM-32指纹密码锁控制系统的设计与实现 个汉字;可加副标题 (副标题前加破折 号),副标题与主标题 间空一行的位置 主标题:黑体,小学生姓名 岑孟杰 二,居中 学 号 110104200201 副标题:楷体 _GB2312,四号,居中 指导教师 张后旗 阅后删除此文本 框。 二级学院 信息学院 专业名称 计算机科学与技术 班 级 11计算机(2)班 2015年5月 声明及论文使用的授权 本人郑重声明所呈交的论文是我个人在导师的指导下独立完成的。除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写的研究成果。 论文作者签名: 年 月 日 本人同意浙江财经大学有关保留使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以上网公布全部内容,可以采用影印、缩印或其他复制手段保存论文。 论文作者签名: 年 月 日 浙江财经大学本科生毕业论文(设计) 基于STM-32指纹密码锁控制系统的设计与实现 摘 要:本文首先介绍了指纹密码锁控制系统的开发背景和意义~简单介绍了一些 国内外常见的指纹识别装置和指纹识别密码锁~并指出了当前指纹识别控制系统存在的 问题~再根据完整的指纹识别模块指令确定了本系统的目标和要求~以战舰STM-32为 开发平台进行了系统的总体结构设计~阐述了系统的软、硬件组成~并重点探讨了指纹 识别模块、键盘模块、LCD液晶显示模块和报警模块等几个主要功能模块的设计与实现。 最后~对系统的设计与实现做相应总结。 关键词:指纹识别,战舰 STM32,模式识别 Design and Implementation of STM32-based fingerprint combination lock control System Abstract: This paper introduces the fingerprint lock control system development background and significance simply, introduced some common fingerprint identification device and fingerprint identification combination lock at home and abroad, and points out the problems existing in the current fingerprint identification control system, according to the complete fingerprint identification module instruction to determine the objectives and requirements of this system, the warship STM - 32 as a development platform for the overall structure of the system design, this paper expounds the hardware and software of the system, and probes into the input fingerprint identification module, keyboard module, LCD liquid crystal display module and alarm module, etc. Several main function module design and implementation. Finally, summarizes the design and implementation of the system. Key words: Fingerprint identification; Warship STM32; Pattern recognition I 浙江财经大学本科生毕业论文(设计) 目 录 1绪 论 ................................................................... 1 1.1 开发背景和意义 ...................................................... 1 1.2 国内外研究现状 ...................................................... 1 1.2.1 总体研究现状 .................................................... 1 1.2.2 指纹采集技术的研究现状 .......................................... 2 1.2.3指纹识别技术的研究现状 ........................................... 2 1.3本文主要研究内容和章节安排 .......................................... 3 2系统总体结构设计 ........................................................ 4 2.1 系统设计总体要求 .................................................... 4 2.2硬件总体结构设计 .................................................... 4 2.3软件总体结构设计 .................................................... 5 3系统硬件模块设计与实现 .................................................. 63.1指纹识别模块设计与实现 .............................................. 6 3.2 LCD液晶显示模块设计与实现 ........................................... 7 3.3键盘模块设计与实现 .................................................. 8 3.4报警模块设计与实现 .................................................. 9 4系统软件模块设计与实现 ................................................. 10 4.1键盘模块程序设计与实现 ............................................. 10 4.2报警模块程序设计与实现 ............................................. 11 4.3 LCD液晶显示模块程序设计与实现 ...................................... 12 4.4指纹识别模块程序设计与实现 ......................................... 13 4.4.2指纹识别模式 .................................................... 13 4.4.2指纹识别模式 .................................................... 14 5系统实现结果 ........................................................... 15 5.1系统总体框架 ....................................................... 15 5.2指纹录入模式 ....................................................... 15 5.3指纹识别模式 ....................................................... 17 II 浙江财经大学本科生毕业论文(设计) 5.4结果分析 ........................................................... 19 6总结与展望 ............................................................. 19 参考文献 ................................................................. 21 致谢 ..................................................................... 22 III 浙江财经大学本科生毕业论文(设计) 1绪 论 1.1 开发背景和意义 指纹就是我们人类手指末端指腹上由凹凸的皮肤所形成的纹路,是人类在进化过程 [1]中自然形成的。指纹具有唯一性、遗传性和不变性。它的复杂程度足以提供用于鉴别的足够特征。到目前为止,尚未发现有不同的人拥有相同的指纹,所以每个人的指纹也是独一无二。由于指纹是每个人所特有的标记,指纹逐渐成为警方追捕疑犯的重要线索[1]。随着现代信息化的大潮流,指纹识别已经不仅仅运用于追捕嫌犯,更多的也走向大众化。现代科技的高速发展,光电传感器应运而生,以指纹识别技术作为桥梁与指纹生理特征相结合,便产生了指纹识别为核心的各种指纹识别仪器。 指纹密码锁就是其中比较典型的一种。指纹的唯一性和多样性使得这种生理特征与现代科技相结合运用使我们的信息安全、经济安全、人身安全的保障相比较于传统的锁具更加具有可靠性和多样性。科技的不断革新使得指纹密码锁的研究和设计开发也依然在不断地革新完善中。随着旧问题的解决,新问题也会不断的出现。 因此研究和开发以指纹识别技术为核心的指纹密码锁能够更好的了解当前科技与 研究程度以生物生理特征有效结合的程度,对于当前指纹密码锁的研究所存在的问题和及之后的发展方向有更深入的了解。同时,在开发和设计过程中,我们也能够更好的运用和巩固所学到的计算机知识。 1.2 国内外研究现状 1.2.1 总体研究现状 现在国内外指纹识别技术基本上都是采用基于细节点特征的指纹识别技术,从研究角度来说,国内外的差距并不明显。由于具有广阔的市场前景,也受到了越来越广泛的 [1]重视,国外很多著名的IT厂商、电子厂商都在积极推进AFIS技术的研究工作。 国内对于指纹识别锁的研究正在不断提升,也在不断的向广大百姓普及。目前指纹锁产品正逐步走向中国家庭,中国消费者对指纹锁的认知已经越来越广泛,但是国内对于AFIS主要侧重于研究角度,很长一段时间没有在实际应用中实践,所以 这些技术和 [2]实际的市场需求间还有不少差距。而实际从事指纹应用的公司没有自己的技术,在技术上依然有着很大的提升和改善空间。 1 浙江财经大学本科生毕业论文(设计) 指纹应用到计算机信息安全加密应用是目前国际公认未来最有前途的新兴市场,凡是用密码方式验证的都可以统统采用指纹验证模式。指纹识别密码锁,指纹识别技术的发展得益于现代电子集成制造技术和快速可靠的算法的研究。尽管指纹只是人体皮肤的一小部分,但用于识别的数据量相当大,对这些数据进行比对也不是简单的相等与不相等的问题,而是使用需要进行大量运算的模糊匹配算法。现代电子集成制造技术使得我们可以制造相当小的指纹图象读取设备,同时飞速发展的个人计算机运算速度提供了在微机甚至单片机上可以进行两个指纹的比对运算的可能。另外,匹配算法可靠性也不断 [3]提高,指纹识别技术经已经常实用。 1.2.2 指纹采集技术的研究现状 指纹识别技术实际上包括了“指纹采集技术”和“指纹识别技术”。 指纹采集技术经过了较长时间的发展,其过程也随着传感技术的发展而受到影响以及推动。第一代“指纹采集技术”主要采用的就是“按压留痕”的方式,通过“油墨- [2]指纹图像”的方式进行采集,存在不完整、不安全的一些缺点。那么第二代“指纹采集技术”在传感器的发展带动下,开始采用自动化和数字化的采集方式、指纹的信息以数字信息的形式进行表示和存储。比较有代表性的采集仪器就有光学指纹采集仪、半导体压感指纹采集仪、温感指纹采集仪以及电容式指纹采集仪。这种采集方式比较方便,安全性、完整性和可处理性较高。“指纹采集技术”的原理就是根据嵴和峪的几何特性、 [3]物理特性和生物特性的不同,得到不同的反馈信号值。再根据不同的反馈信号值绘成指纹图像。现在国内外的指纹采集流程主要有分割、二值化、增强滤波、细化。其中分割方法现在主要采用方向法、方差法、以及改进的方差法。其中改进的方差法,在方差分割的基础上进行开闭运算,是较为成熟的分割方法。二值化方法主要有方向图、静态阈值二值化以及基于方向场的二值化。增强滤波则是基于上述的方向图的基础上进行平均滤波。细化现在主要运用快速细化算法和改进的OPTA算法。上述这些过程虽然能够形成较为完善的指纹图像。但是依然存在问题,在图像的分割细化处理中,会减少指纹的特征,从而降低指纹采集的有效性和真实性。目前国内外对于这个问题正在不断的研究和完善新的算法。 1.2.3指纹识别技术的研究现状 “指纹识别技术”其实是属于模式识别的范畴。它通过特定的数学算法分析指纹特征,然后判定两枚指纹特征的相似度。主要通过指纹特征分析和匹配两个过程进行实现。 2 浙江财经大学本科生毕业论文(设计) 其中指纹特征分析是对指纹采集之后的图像的整体特征和细节特征进行提取和鉴[3]别。现在国内外对于图像特征的提取主要是对特征点的提取和处理来实现,主要对细化图端点和交叉点进行处理。 匹配是指指纹图案的整体和细节特征按照模式识别的原理进行比对,是指已经录入 [4]注册的指纹和尚需验证的指纹之间进行比对,是对已经处理好的特征值进行比较。现在国内外对于匹配主要从两个方面进行特征的判断。对于整体特征的匹配主要进行指纹纹形的分类判断以及指纹嵴密度的判断。局部匹配则是对于细节点进行类型、坐标、质量以及方向上的匹配,也有包括一组指纹特征值之间所形成的拓扑关系进行比对和匹配。其中特征点的匹配现在采有嵴线长度的匹配、三角形边长匹配以及点类型匹配。当然这些匹配方法并不是最完善的,存在着一定的匹配盲区,不能说很完整很正确的进行匹配。目前国内外正在不断的研究和完善新的指纹特征匹配算法。 1.3本文主要研究内容和章节安排 本文主要以战舰STM-32作为开发平台通过对指纹录入识别模块、键盘模块、LCD 模拟实现指纹密码锁的液晶显示模块和报警模块等几个主要功能模块的设计和整合来 控制。这一设计通过对完整的指纹模块的指令研究以及指纹的识别处理,熟悉简单的图像处理以及STM32系列ARM单片机的使用。本文研究的内容主要包括六章: 第一章是绪论,主要说明了本设计的开发背景和意义,还有这个项目在国内外的当前研究状况。 第二章是系统总体结构设计,根据系统的总体要求设计系统软硬件的总体结构。 第三章是系统硬件模块设计与实现,主要阐述系统的硬件模块的设计以及具体实现方法。 第四章是系统软件模块的设计与实现,主要阐述了系统功能实现的软件设计以及具体实现方法。 第五章是系统实现结果,主要展示了系统的实现的功能和结果。 第六章是总结与展望,总结本次设计所取得的成果和依旧存在的问题并对下一步改进工作做了展望。 3 浙江财经大学本科生毕业论文(设计) 2系统总体结构设计 2.1 系统设计总体要求 基于STM-32的指纹密码锁控制系统是以 战舰STM32开发板为开发平台,配合FM-180指纹识别模块和开发板自带的2.8寸TFT彩色LCD液晶显示屏幕,利用 keil uvision4开发软件环件开发,通过软硬件模块的整合和控制模拟实现控制指纹密码锁,熟悉数据的读写功能实现。 本次设计通过完整的指纹识别模块实现指纹的录入和识别。根据战舰STM-32开发板的按键实现录入和识别模式的转换,并通过LCD液晶显示屏显示当前的模式状态和录入和识别状态,同时通过蜂鸣器发出不同间隔和次数的蜂鸣声对应相应的状态。 一、设计的具体功能要求如下: 1、 通过按键控制指纹录入模式和指纹识别模式的转换; 2、 录入模式下再次按录入键能够继续录入指纹; 3、 通过按键能够清除所有内部存储的指纹; 4、 蜂鸣器针对成功或失败不同结果下发出不同间隔和次数的蜂鸣; 5、 录入成功生成的指纹号和识别成功对应的指纹号在LCD上显示; 6、 LCD显示不同的模式以及录入和识别成功或失败不同结果进行显示。 二、开发工具 以战舰 STM32-V3.0开发板为主控模块,用FM-180指纹识别模块作为从属模块对其发出相应的指令进行指纹的采集和识别处理,用2.8寸TFT彩屏作为显示模块,以Keil uVision4为开发环境,J-Link仿真工具和串口调试工具作为辅助工具。 2.2硬件总体结构设计 本系统的硬件由以下几个部分组成(如图2.1): 报警模块 FM-180指指纹 主控器 LCD液晶显示 纹识别模 模块 块 键盘模块 图2.1 系统硬件结构图 4 浙江财经大学本科生毕业论文(设计) 由硬件结构图可以看出:指纹通过FM-180指纹识别模块采集处理;并将处理后的指纹特征值等以数据包的形式发给主控模块;主控模块发送指令包对FM-180指纹识别模块进行控制以及对键盘模块、报警模块、LCD液晶显示模块进行控制。在LCD液晶显示屏上显示录入和识别成功的指纹号码。报警模块中以开发板自带的蜂鸣器为主,在不同的状态和结果下进行不同间隔和次数的蜂鸣。键盘模块主要通过三个按键分别实现模式转换、录入、清除等功能。 2.3软件总体结构设计 本系统的软件由以下几个部分组成(如图2.2): 图2.2 系统软件结构图 由系统软件机构图可以看出,主控制器作为主要的控制中心对其他四个模块进行控制,其中指纹识别主要接收主控制器的指令并发送数据给主控制器并且对输入指纹进行采集处理。显示屏显示各个状态特别是录入的指纹号和识别的指纹号。按键主要实现模式切换、指纹录入、指纹清除三个功能。报警程序以蜂鸣器为主,通过驱动程序实现不同状态下不同次数和间隔的蜂鸣。 5 浙江财经大学本科生毕业论文(设计) 3系统硬件模块设计与实现 3.1指纹识别模块设计与实现 指纹识别模块选用FM-180指纹识别设备实现,FM-180亮背景光学头指纹识别设备采用光学指纹传感器,由高性能DSP处理器和FLAH等芯片构成。供电电压3.6-6.0V,供电电流<120mA,匹配方式有比对方式(1:1)和搜索方式(1:N)如图3.2所示: 图3.1 FM-180指纹识别模块实物图 [5]FM-180是完整的指纹识别模块,不需要其他外围部件,模块始终处于从属地位,控制端也就是战舰STM32开发板的CPU通过不同的指令让模块完成各项功能。CPU的指令、模块的应答以及数据的交换都是按照规定 格式 pdf格式笔记格式下载页码格式下载公文格式下载简报格式下载 的数据包来进行数据通信。指令/数据包一共分三类:包标识=01为命令包;包标识=02为数据包,并且允许有后续数据包传入;包标识=08是最后数据包,作为结束包。所有的数据包都要加包头:0xEF01. 指纹识别模块与战舰 STM32的CPU进行串行通讯时,通过外部引脚与STM32开发板相连接。指纹识别模块的引脚定义如表3.1所示: 表3.1 指纹识别模块引脚定义表 引脚号名称 类型 功能描述 码 1 Vin 输入 电源正输入端 2 TD 输出 串行数据输出。TTL逻辑电平。 3 RD 输入 串行数据输入。TTL逻辑电平。 4 GND — 信号地。内部与电源地连接。 6 浙江财经大学本科生毕业论文(设计) STM32开发板板载的USB串口和STM32F103ZET6的串口通过P6连接起来的,其中USART1_RX和USART1_TX是相对于STM32F103ZET6来说的。通过PA9和PA10接口与外部设备连接就能实现和外部设备的串行通信。串口1选择接口原理图如图3.3所示: 图3.2 STM32的USB串口/串口1选择接口图 指纹识别模块的RXD与STM32开发板的PA9口连接,指纹识别模块的TXD与STM32开发板的PA10口连接。这样就能实现指纹识别模块与STM32开发板的CPU进行数据串口通信。 这样STM32的CPU就能通过串口1的PA10口对指纹识别模块发送规定格式的命令包,就能实现对外部的指纹识别设备的控制操作,让外部指纹识别设备完成指纹的采集、存储、识别等功能。FM-180指纹识别模块具有512字节的存储区域,能够存储采集中同一个指纹的两个特征值的合并之和。CPU通过读或者写外部指纹设备寄存器来调取或者存储不同的配置状态以及指纹图像特征值。外部指纹识别设备也能够通过串口1的PA9口对接收到的指令发出应答,并以数据包的形式发送给STM32的CPU,完成指令应答。通过串口1的数据通信,就能实现STM32的CPU与外部指纹识别设备数据交互,实现控制与反馈,也实现了本次设计最基本和核心的功能,也就是指纹的录入和识别。 3.2 LCD液晶显示模块设计与实现 LCD显示模块选用与战舰 STM32 配套的2.8寸TFT液晶显示屏实现,与主板的TFTLCD模块接口相接。支持16位真彩显示,显示分辨率为320×240,接口为16位的80接口。TFTLCD模块接口如图3.4所示: 7 浙江财经大学本科生毕业论文(设计) 图3.3 2.8寸TFTLCD模块接口图 从图3.3可以看出,TFTLCD模块采用16位的并方式与外部连接,其中CS:是TFTLCD 使TFT工作。WR:向TFTLCD写入数据,片选信号,通过LCD_CS发送高电平给TFTLCD能 当输入低电平时可以通过并行数据口写入数据。RD:从TFTLCD读取数据,当输入高电平时可以通过并行数据口读出数据。D[15:0]:16位双向数据线,用于双向传送16位数据。 根据上述LCD液晶显示屏的原理以及电平逻辑,STM32开发板的CPU在接受到外部设备执行操作的应答信号之后,就可以对LCD液晶显示屏并行数据口、读写口以及片选使能口输入对应的电平信号和数据,从而显示指纹的录入、识别、清除等各个模式下等 的操作结果。这样,通过LCD液晶显示屏系统就能及时的将操作结果反映给用户。 3.3键盘模块设计与实现 STM32开发板自带四个按键,键盘模块涉及3个按键,其中按键KEY0接PE4;按键KEY1接PE3;按键KEY2接PE2。按键另一端采用开关形式与GND相连,三个按键与STM32的连接原理如图3.5所示: 8 浙江财经大学本科生毕业论文(设计) 图3.4 按键与STM32连接原理图 通过按键按下的时候向STM32开发板的CPU发出外部中断信号,从而使得CPU发出不同按键对应的操作指令,实现模式的切换、指纹的持续录入以及指纹的清除等功能。当KEY0按下时,切换录入和识别模式并且由LCD显示当前模式;在录入模式下按下KEY1可以进行指纹的录入;按下KEY2则删除所有已经存储的指纹。 3.4报警模块设计与实现 报警模块主要通过对蜂鸣器的控制来实现。STM32开发板自带蜂鸣器,蜂鸣器的驱动信号连接在STM32的PB8上,与STM32的连接原理如图3.6所示: 图3.5 蜂鸣器与STM-32连接原理图 采用NPN三极管(S8050)驱动蜂鸣器,R60作为防止蜂鸣器误发声音。当PB8输出高电平时,蜂鸣器发声;PB8输出低电平的时候,蜂鸣器停止发出声音。 CPU在接收到指纹识别设备在指纹录入、识别以及清除不同状态下执行结果的信号后,对蜂鸣器的串行通信口PB8发出对应的高低电平,并通过内部时钟对不同间隔进行控制。在指纹的在指纹识别模块与STM-32 CPU握手成功时,CPU向PB8口置较长一段时间的高电平,使得蜂鸣器发出一次较长时间的蜂鸣声。同样的道理,在删除指纹时发出一次较长的蜂鸣声;在指纹录入中采集两次指纹时,第一次蜂鸣器发出一次较短蜂鸣声, 9 浙江财经大学本科生毕业论文(设计) 第二次则是连续发出两次较短促的蜂鸣声;当指纹识别失败时,连续发出三次短促的蜂鸣声。 4系统软件模块设计与实现 4.1键盘模块程序设计与实现 键盘模块主要通过STM32上自带的按键进行设计与实现。通过对STM32开发板的CPU写入程序对按键不同状态下返回的信息值进行处理和控制,就能实现键盘模块的不同按键功能。 首先要通过void KEY_Init(void)函数对按键进行初始化,再利用KEY_Scan()函数扫描是否有按键按下,而其定义的mode参数则是来控制是否支持按键连续按下,可以防止一次多触发或者实现长按检测,这是按键的初始化准备过程。 键盘模块主要的按键功能的程序流程图如图4.1所示: 图4.1 按键功能程序流程图 modeflag以0和1作为判别当前模式的特征值,当按键KEY0按下时,进入切换模式状态,并且将modeflag取相反值;当按键KEY1按下时则是进入录入模式;当按键KEY2按下时,清除所有指纹的状态值clearflag置1,发出清除信号,清除所有已经录入存储的指纹。 10 浙江财经大学本科生毕业论文(设计) 4.2报警模块程序设计与实现 报警模块是以战舰STM32开发板自带的蜂鸣器作为设计和实现的对象。蜂鸣器通过PB8口与CPU相连接,对蜂鸣器的控制实际上就是通过CPU向PB8口发送不同时间间隔和次数的高电平或者低电平,从而控制蜂鸣器在不同状态下的蜂鸣次数和间隔时间。 首先,利用void BEEP_Init(void)对蜂鸣器进行初始化,使能GPIOB端时钟,采用推挽输出并初始化PB8口,当PB8口输出为0时关闭蜂鸣器的输出。这是整个蜂鸣器的初始化过程,之后就是对蜂鸣器不同状态下的蜂鸣进行设置。主要的程序流程图如图4.2所示: 图4.2 蜂鸣器程序流程图 从图4.2中可以看出,在不同的模式处理下,蜂鸣器有不同的蜂鸣状态。在开始CPU与指纹识别模块握手成功,置BEEP=1,并设置延时,再置BEEP=0蜂鸣器会响一次;同样,在指纹录入状态下,由于指纹一共采集两次,所以第一次采集成功响一次,第二次采集成功响两次;在指纹识别状态下,识别失败连续短促的响三次,识别成功响一次。指纹清除状态下,清除所有指纹,蜂鸣器长响一次。这样,在对应不同的指纹操作状态已经成功与否,能够通过蜂鸣器实现报警。 11 浙江财经大学本科生毕业论文(设计) 4.3 LCD液晶显示模块程序设计与实现 LCD液晶显示模块主要是用来显示当前状态以及不同操作下显示不同操作结果。这一功能主要通过对战舰STM32开发板配套的2.8寸TFTLCD液晶屏的数据写入并显示来实现。状态显示和结果显示都通过CPU写入数据并在LCD上显示。 对于LCD液晶显示屏的初始化主要通过对LCD操作结构的定义,还通过LCD->LCD_REG=CMD和LCD->LCD_RAM=DATA来对LCD写命令和写数据,反过来就可以进行读寄存器和读数据。LCD的CS、WR、RD、和IO都是由FSMC控制,就不需要手动设置。这些都是对液晶显示屏的初始化。在本次设计中LCD液晶显示屏要实现的功能的程序流程图如图4.3所示: 图4.3 LCD液晶显示屏程序流程图 从4.3图可以看出,在刚启动设备的时候如果外部设备与CPU握手成功,CPU通过LCD_ShowString()函数对LCD液晶显示屏执行显示操作,使得屏幕显示准备就绪。同样的 ,在指纹录入模式下,当CPU接收到录入成功的信号时,也通过LCD_ShowString()函数显示录入成功状态,生成并显示当前录入的指纹号。在指纹识别状态下,识别成功则通过LCD_ShowString()函数显示对应的指纹号,识别失败则显示识别失败,指纹号归零。 12 浙江财经大学本科生毕业论文(设计) 4.4指纹识别模块程序设计与实现 4.4.2指纹识别模式 本次设计采用的是FM-180指纹识别设备,是较为完善的指纹识别模块,主要通过CPU对设备发送规定格式的数据包或者命令包来实现指纹的录入和识别。指令/数据包一共分三类:包标识=01为命令包;包标识=02为数据包,并且允许有后续数据包传入;包标识=08是最后数据包,作为结束包。所有的数据包都要加包头:0xEF01. 其中指纹录入的关键在于两次采集指纹生成的特征值并存于flash指纹库。其程序流程图如图4.4所示: 图4.4指纹录入程序流程图 在发送指令以及生成指令中都会有等待接收应答包,只有接受到应答包才能发送下一步指令。其中产生特征1就是使得标识参数BufferID=1,通过unsigned char GENT1[] 函数发送12个字节给传感器作为指令生成特征1并将特征值1存储于ModleBufferA。在第一次采集成功之后,进行第二次采集的过程中,生成特征2就是BufferID=2,通过unsigned char GENT1[]函数发送12个字节给传感器作为指令生成特征2将特征值存储于ModleBufferB。。两次采集均成功的状态下,进入注册,通过unsigned char MERG[] 函数发送12个字节合并两个特征值的指令并且将两个特征值进行合并之后存入指定存储器ModleBuffer。完成指纹的两次采集,生成两个特征值,合并之后的特征值更具准 13 浙江财经大学本科生毕业论文(设计) 确性。同时录入成功之后会通过自动计数生成指纹号Number并显示。通过这个程序的设计能够实现指纹的两次采集并且录入。 4.4.2指纹识别模式 由于FM-180指纹识别设备是较为完善的指纹识别模块,通过CPU对设备发送数据包或者命令包来实现指纹的录入和识别。有三类数据包和命令包:包标识=01为命令包;包标识=02为数据包,并且允许有后续数据包传入;包标识=08是最后数据包,作为结束包。所有的数据包都要加包头:0xEF01. 其中指纹识别的关键在于现场采集指纹和已有指纹库之间的比对,其中要对已有指纹库进行搜索,然后进行特征值的比对。其程序流程图如图4.5所示: 图4.5指纹识别程序流程图 根据指纹识别程序流程图可以看到,从现场获取的指纹需要通过CPU发送图像获取以及特征获取的指令才能生成最后的特征值,然后对flash存储模板中的已有指纹特征值进行搜索,这是通过PS_Search指令实现。通过SearchBuf = Searchfinger()进行比对,根据SearchBuf==1的返回值来确定现场指纹在录入的指纹库中是否有匹配的指纹。同时将识别成功对应的指纹号Searchnum返回给CPU,或者返回65535的值表示指纹识别失败。这样CPU的能够根据不同的识别状态及时的将识别结果显示在LCD液晶显示屏上。 14 浙江财经大学本科生毕业论文(设计) 5系统实现结果 5.1系统总体框架 本系统由战舰STM32为主要控制中心,同时外接FM-180指纹识别模块以及战舰STM32开发板自带的键盘、LCD液晶显示屏和蜂鸣器。通过对这些组成模块的程序控制实现整个设计。下图5.1是总体实物图: 图5.1系统总体实物图 5.2指纹录入模式 按下按键KEY0从系统默认的识别模式转换到指纹录入模式,按下KEY1键开始录入指纹,录入成功之后就会生成并显示一个指纹号对应你现在的指纹,再次按KEY1键,继续录入指纹,成功之后按照加1的计数顺序继续生成新的指纹号码。具体实现如图5.2、图5.3、图5.4所示: 15 浙江财经大学本科生毕业论文(设计) 图5.2指纹录入模式开始LCD显示图 图5.3指纹录入成功LCD显示图 16 浙江财经大学本科生毕业论文(设计) 图5.4指纹继续录入成功LCD显示图 5.3指纹识别模式 系统初始默认为指纹识别模式,因此进入系统就可以进行指纹识别的操作,当然如果通过按键KEY0切换到了指纹录入模式,同样可以切换回来。LCD液晶显示屏显示当前的模式。如果识别成功,LCD显示识别成功并显示匹配的指纹号;如果识别失败,显示红色的识别失败,并且将指纹号归零即当前无指纹。具体实现结果如图5.5、图5.6、图5.7所示: 17 浙江财经大学本科生毕业论文(设计) 图5.5指纹识别开始LCD显示图 图5.6指纹识别成功LCD显示图 18 浙江财经大学本科生毕业论文(设计) 图5.7指纹识别失败LCD显示图 5.4结果分析 根据上述实验结果可以看出,基本实现了指纹录入和识别两个基本功能,并且在按下按键KEY2的情况下,清除所有指纹,指纹号显示为零,模式自动转换到录入模式。通过LCD液晶显示频显示当前模式和指纹输入和处理状态,键盘模块的按键功能也基本实现,蜂鸣器也能够按照预想的设定进行不同状态下不同次数和间隔的蜂鸣。指纹录入能够在上一个指纹录入成功的状态下继续进行指纹的录入。指纹识别也能够显示与当前现场指纹相匹配的指纹号。也存在一些问题:指纹的录入没有对录入失败状态在LCD液晶显示屏上显示出来;指纹识别失败没有自动转换到指纹识别开始界面。 6总结与展望 在本次设计中探索了国内外的指纹密码锁的研究现状和背景,并对指纹采集和指纹识别两个技术以及现在的一些通用算法有了比较深入的了解。 19 浙江财经大学本科生毕业论文(设计) 本次设计主要先通过对系统的软硬件的总体结构进行了设计与构想,然后对软件模块和硬件模块分别进行了具体的设计与实现,从而达到了初期的目标。这次设计以功能强大的战舰STM32开发板作为开发平台以及keil uvision4开发软件,运用战舰STM32开发板自带的蜂鸣器、按键和LCD液晶显示屏并通过对这些自带设备的程序控制和设计实现了报警模块、键盘模块和LCD液晶显示模块的基本功能,完成初期的设想目标。采用功能较为完善的FM-180指纹识别设备,通过战舰STM32开发板的CPU对指纹识别设备发送指令以及数据并进行程序的判断和实现,从而实现了指纹的录入、识别两个核心功能,以及指纹的清除,模式切换、液晶显示等其他功能。 在设计过程中也遇到一些问题和困难,比如在使用较为完善的FM-180指纹识别模块进行数据和指令的传送时,要特别注意指令包和数据包的格式,特别是一些标识码的获取和判断。设计过程中,经常出现格式的错误或者使用错误导致命令包和数据包的发送接收出现错误,从而无法实现功能。再比如在指纹的识别和录入过程中,要对发来的数据包进行包头字节的提取和判断,并且对数据包的数据字节部分要进行数据的提取和存储,之后也要进行校验和的计算,这样才是对一次数据包接收的完整过程。 在这次设计中尚且存在的问题有:LCD液晶显示屏没有显示读取的指纹图像;清除指纹时是一次性清除,不能有选择性的进行清除;没有对指纹录入失败进行报警和显示;功能较少仅限于录入、识别、清除;用户与系统的交互主要通过LCD液晶显示屏,这点尚显单调。 本次设计基本实现了设计初期的目标,但是依然在今后的开发中从以下几方面进行改进: 1、通过对指纹识别设备Flash存储模板中调取已经读取的指纹图像并通过LCD液晶显示屏显示。这样也会使得交互界面较为充实。 2、通过对指纹识别设备的特征值存储 单元 初级会计实务单元训练题天津单元检测卷六年级下册数学单元教学设计框架单元教学设计的基本步骤主题单元教学设计 和Flash存储模板的地址的选取,然后根据地址,使用按键KEY2进行有选择性的删除。 3、对于指纹录入失败要设计相应的报警形式和LCD显示形式。 4、可以尝试设计增加指纹选取功能,通过按键能够有选择性的调取已经录入的指纹图像,并使用中英文两种蚊子显示,使界面更加充实。 通过这次的设计,我了解了当前国内外对于指纹密码锁控制系统的开发和研究现状,并且从系统的软硬件总体结构设计到各个模块的具体设计与实现。这个过程中不仅仅是对大学四年知识的一种回顾,也是对自己心智的一种历练。遇到过困难和瓶颈,就要看自己的心态,耐心和坚持尤其重要,多向老师和同学请教克服开发中的一个个困难,之后就能体会到那种成就感,也是最为开心的。 20 浙江财经大学本科生毕业论文(设计) 参考文献 [1]柴晓光,岑宝炽.民用指纹识别技术[M].北京:人民邮电出版社,2004. [2]刘文耀.数字图像采集与处理[M].北京:电子工业出版社,2007. [3]杨光祥,梁华,朱军.STM32单片机原理与 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 实践[M].武汉:武汉理工大学出版社, 2013. [4]康华光.电子技术基础模拟部分第四版[M].北京:高等教育出版社,1999. [5]李宁.基于MDK的STM32处理器开发应用[M].北京:北京航空航天大学出版社,2008. [6]阎石.数字电子技术基础第四版[M].北京:高等教育出版社,1999. [7]王瑞福.单片机微机测控系统设计大全[M].北京:北京航空航天大学出版社,1998. [8]张毅刚.单片机原理与应用[M].北京:高等教育出版社,2006. [9]李贵山,杨建平.微型计算机测控技术[M].北京:机械工业出版社,2002. [10]曹承志.微型计算机控制技术[M].北京:机械工业出版社,2004. [11]李贵山,周征.检测与控制技术[M].西安:西安电子科技大学出版社,2006. [12]郭迎宾.可靠性技术在继电器控制中的应用探讨[J].中国科技纵横,2014(16):18-22. [13]D W Hart.Foundation and application of microcontroller[M].beijing:Higher Education Press,2004. ]Richard.Algorithms and Applications (Texts in Computer Science)[J]. Higher Education [14 Press,2010. 21 浙江财经大学本科生毕业论文(设计) 致谢 本次基于STM-32的指纹识别密码锁控制系统在设计与实现的过程中得到了很多老师和同学的帮助,在此向他们由衷的致谢。特别要感谢我的导师张后旗老师的悉心指导和无私帮助。在百忙中能抽空给予我很多帮助。特别是在设计软硬件总体结构和模块以及撰写论文的过程中,张老师给了我很大的帮助,并且不断地督促我们完成每个时期的进度,还有我的室友以及同学也在我遇到设计困难时给了很多建议以及设计上的一些帮助。在此,我表示真诚地感谢。 22 浙江财经大学本科毕业论文(设计)评阅单 学 院 信息学院 班 级 11计算机2班 学 号 110104200201 姓 名 岑孟杰 论文题目 基于STM-32指纹密码锁控制系统的设计与实现 指 导 教 师 签名: 意 年 月 日 见 评 阅 教 师 签名: 意 年 月 日 见 经答辩小组评议~并由学院答辩委员会核定~该学生的本科毕论文 业论文,设计,最终成绩为 。,评议情况记录详见答辩记录本, (设 计) 毕业论文(设计)答辩委员会主任签字: 成绩 年 月 日 注:本页前三栏由学生填写。 书中横卧着整个过去的灵魂——卡莱尔 人的影响短暂而微弱,书的影响则广泛而深远——普希金 人离开了书,如同离开空气一样不能生活——科洛廖夫 书不仅是生活,而且是现在、过去和未来文化生活的源泉 ——库法耶夫 书籍把我们引入最美好的社会,使我们认识各个时代的伟大智者———史美尔斯 书籍便是这种改造灵魂的工具。人类所需要的,是富有启发性的养料。而阅读,则正是这种养料———雨果
本文档为【基于STM-32指纹识别密码锁控制系统的设计与实现毕业论文概述】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_496339
暂无简介~
格式:doc
大小:258KB
软件:Word
页数:32
分类:初中语文
上传时间:2017-09-26
浏览量:185