基于STM32的指纹识别密码锁的系统设计.docx
《基于STM32的指纹识别密码锁的系统设计.docx》由会员分享,可在线阅读,更多相关《基于STM32的指纹识别密码锁的系统设计.docx(33页珍藏版)》请在课桌文档上搜索。
1、摘要处于现在这个信息发达的时代,指纹识别技术得到了飞速的发展,此得益于其高度的安全性、成本低、还有方便实用。指纹可以说是人们不可能会跟别人存在重复的部分,也就是说可以通过这一个特点,将一个人的指纹预先保存起来,然后与其他的指纹进行比较,可以验证出这个人是否为原本预先保存的那个人。本文是一个基于STM32单片机的指纹识别电子密码锁系统设计。控制AS608指纹模块以达到实现录取指纹并存储指纹数据的目的,键盘模块选择用矩阵式键盘且通过软件消抖减少其对单片机对应产生的影响,利用12864液晶呈现录入和对比的结果,应用直流继电器及发光二极管模拟开锁的操作,继电器及小灯起到提示指令是否完成的作用。关键词:
2、STM32单片机指纹识别技术12864液晶AnstractInthisinformationdevelopedera,fingerprintrecognitiontechnologyhasbeenrapiddevelopment,whichbenefitsfromitshighsecurity,lowcost,andconvenientandpractical.Fingerprintcanbesaidtobethepartthatpeoplecantrepeatwithothers,thatistosay,throughthisfeature,onesfingerprintcanbesaved
3、inadvance,andthencomparedwithotherfingerprints,itcanbeverifiedwhetherthispersonisthepersonwhowassavedinadvance.ThispaperisadesignoffingerprintrecognitionelectronicpasswordlocksystembasedonSTM32.TheAS608fingerprintmoduleiscontrolledtoachievethepurposeoftakingfingerprintandstoringfingerprintdata.Matri
4、xkeyboardisselectedasthekeyboardmoduleanditsinfluenceonthecorrespondingMCUisreducedbysoftwarebuffeting,The12864LCDisusedtopresenttheresultsofinputandcomparison.TheDCrelayandLEDareusedtosimulatetheoperationofunlocking.Therelayandsmalllampplaytheroleofpromptingwhethertheinstructioniscompleted.Keywords
5、:STM32singlechipfingerprintrecognitiontechnology12864liquidcrystal第一章概括11.1 指纹识别技术的发展11.2 指纹识别的基本规律11.3 系统设计的用处21.4 系统设计的操作流程2第二章硬件介绍和设计42.1 单片机及最小系统42.2 指纹模块52.3 矩阵键盘模块62.4 液晶显75模块72.4.1 控制器接口说明82.4.2 指令说明82.4.3 12864引脚与单片机连接11第三章系统软件的设计133.1 软件运作流程133.2 主程序流程图133.3 部分模块程序设计143.3.1 矩阵键盘模块程序设计143.3.
6、2 液晶显示模块程序设计143.4 Keil编程15第四章硬件的调试164.1 焊接电路164.1.1 电容器的焊接164.1.2 二极管的焊接164.1.3 三极管的焊接164.1.4 集成电路164.2 调试小灯、继电器164.3 液晶的调试174.3.1 液晶的注意事项174.3.2 调试12864液晶17结论18参考文献19致谢20附录21附录1原理图21第一章概括1.1 指纹识别技术的发展指纹其实在人类还没有出生的时候就已经形成,是取决于胚胎发育所处的环境。每一个人都是独一无二的,双胞胎也必然存在着独特的差异。想要确认一个人的真实身份,可以通过摄取他的血液,进行验DNA达到这个目的。
7、但这并不是最安全的方法,因为同卵双胞胎存在DNA相同的情况;相反,虽然同卵双胞胎出生前在同一个胎盘里,但因为他们所受到子宫给予的压力不同以及其他原因,他们的指纹是不可能一样的。相比较验DNA,录取人的指纹更为方便,因为他的指纹是能够直接对应到他的身份信息。指纹识别因其方便快捷、安全等特点被广泛应用,”在工作方面,通过指纹考勤,排除了以前传统打卡存在他人代打卡的隐患;在生活方面,消费时可以通过指纹支付,海关过关的时候需要用指纹验证身份信息,这样不仅提高了办事的效率,也提高了验证的准确性和保障了消费者的安全,另外,传统的门锁是通过钥匙打开的,如果把指纹识别运用在门禁系统上,就可以避免钥匙被非法复制
8、的现象;在公安方面,搜集罪犯在犯罪现场遗留下的指纹,经过技术处理后可以确定嫌疑人的身份从而进行下一步的工作。在生物识别技术这方面,关于指纹识别,语音识别,面容识别的应用较为广泛,尤其是指纹识别的应用较为热门。运用指纹的唯一性和稳定性从我国古代的画字签押就已经开始,2经过对指纹学的不断研究,指纹识别技术在身份鉴别方面被应用的越来越广泛。1.2 指纹识别的基本规律每个人的手指皮肤因为其凹凸程度的差异,导致其形成的纹路不同,也就是人的指纹不可能出现重复的情况。即使每个人一直都在成长,但其指纹并不会发生变化,改变的只是它明显的程度。箕型纹、斗型纹、弓型纹是指纹的三种纹路。图1-1指纹基本纹路图案指纹的
9、总体特征和局部特征也可称为指纹的特征点,多个特征点便构成了指纹。对于直观明了的特征,属于总体特征的有核心点和纹数,还有模式区和三角点等。而指纹节点的特点属于局部特征,有指纹的纹路因为分叉形成的分叉点、还有因为折转形成的折转点或者因为中断形成中断点,这些特征点主要参考系数有方向,也就是与核心点,特征点对应的方向,还有曲率,即纹路方向改变对应的速度,以及位置,即节点的位置坐标,一般表示方式为x/y坐标。1.3 系统设计的用处随着时代的发展,社会的进步,科技带来的技术便捷不断充实着人们生活的方方面面。在身份识别方面,以前常用的身份证,密码等都鉴别方法都已经过时,因为它可以与本人分离,也意味着可以被伪
10、造,可以被盗取,可以被破解。相反,指纹识别就可以与本人共生共存,而且指纹具有稳定性和唯一性,首先指纹不会随着人的变化而发生变化;国其次指纹对于每一个人来说都是独特的,因为世界上不可能存在两个一模一样的指纹;还有指纹只需要一小部分的皮肤就可以鉴别出这个人的真实身份,所以使用起来十分方便。因为指纹识别技术相比其他生物识别技术更安全、更便利、成本更低,指纹识别技术将成为生物识别技术中的重要课题之一。在生活中,因为单片机优异的可靠性和控制性能,单片机被许多电子产品应用,例如电饭煲,还有汽车等都是被单片机控制的。本系统通过实践设计把指纹识别技术和单片机的原理及应用结合起来,设计了一个基于STM32单片机
11、的指纹识别密码锁。1.4 系统设计的操作流程1.4.1 设置模式设置模式主要包括指纹的增加或删除,手动开锁和更改密码。想要进入设置模式,首先是输入六位密码,密码正确就会进入设置模式,密码错误就无法进入设置模式。进入设置模式后可以选择录入指纹,然后指纹模块的指示灯会亮起,这时把手指放置AS608指纹模块上,同一根手指重复录入指纹这个动作两次,随后表示指纹采集成功的信息会被显示在12864液晶显示屏上。进入删除指纹的模式后,根据12864液晶显示屏上的步骤,输入想要删除的对应指纹号,按确认后就成功删除了指定的指纹,这时删除指纹号成功的信息会被显示在12864液晶显示屏上。当指纹模块出现故障的时候,
12、可以启动手动开锁。想要修改密码,首先要输入两次原本的密码,只有两次输入的密码一致且正确的情况下可以进行修改密码。1.4.2 开锁模式打开电源,根据液晶显示步骤,输入密码或者放置手指在AS608指纹模块上,这时开始指纹识别,如果继电器动作,亮起了LED指示灯,即指纹识别成功,也就是开锁成功,同时“开锁成功”及指纹的编号都会被显示在12864液晶显示屏上。如果继电器不动作,LED指示灯并没有亮,即指纹识别失败,也就是开锁失败,同时“没有搜索到指纹请重新按下手指”会被显示在12864液晶显示屏上,如果超过三次开锁失败,蜂鸣器会响起且报警锁死。第二章硬件介绍和设计本系统设计主要包括五个部分:有STM3
13、2单片机部分,指纹识别模块,矩阵键盘模块、LCDI2864液晶显示屏和继电器。指纹模块2.1单片机及高2小系统PC14:05C32_INVBATPCISOSC32OUTPAOWKUPANOT2CIGNDPAI/AN1/T?_HIPCI3TEMPER_RTCPA2AN2TX2f2-C3PB9TIM4CH4PA3/AN3/RX2/T2_C4PBBT1M4CH3PA4SPI-NSSPBZ1ICISDATiM4CH2PASSP1SCKPB6ICTSCLTIM4CHIPAVSPII_MIST3_CIPB5PA7SPIMOSDT3C2PB4JNTRSTPBOAN8BC3PB/JTDOPBIAN9T3C4P
14、A15JTDIPBI0JIC2SClyrX3PAI4JTCKSWCLKPBiLc2_SDARX3PAI3/JTMS/SWDlOPBI2SPI2NSSfTIMIBKINPAI2CANTXUSBDPIW荻阳871Ml(C叫米P秋磔肄温陇H340PC539FAD38ATFA23PB9AT6览CBS34CPB?PasH6PA632下BS131PHJ30软Bl12帮IPA1528PBIl14PM2PBSPAI1721PHS15PB15SPI2MOSIIM1,CH3NPAO/TXITIMICH2PA&TIMLCHIGND1920wcc故小系统模决图2-2STM32最小系统模块一个计算机系统被集成起来的芯片
15、被称为集成式电路芯片,也就是单片机。换而言之,单片机扮演着一个微型的计算机的角色。本系统设计选择用单片机的原因不仅是芯片的体积小和质量轻,还有其价格优惠以及使用起来很方便。本系统设计的单片机最小系统是单片机STM32F103C8T6,这是一种基于ARMCortex-M内核STM32系列的32位微控制器,其工作温度不得低于-40并且不得高于85,其程序存储器容量不得超过64KB,需要电压不少于2V以及不超于3.6V之间。构成本系统设计的单片机最小系统有主控芯片、电源模块,还有调试电路、复位电路和晶振电路。电源模块扮演着起供电的角色,提供3.3V电压给单片机STM32F103C8T6以及提供5.O
16、V电压给其他模块。调试电路组成部分为JTAG下载口和串口1,在系统开发时,JTAG下载被应用,因为需要通过其下载至CPU。然后输出调试的信息时,需要Pe机串口助手通过USARTl来实现。晶振电路中,需要8MHz晶振,还有72MHZ工作效率,这时工作效率想要达到72MHZ就要经过CPU内部倍频。5单片机起始的工作状态被明确,实现单片机运行的这个过程被称为复位电路。事实上,单片机系统有时候会被外界各种因素干扰,就会出现程序混乱的情况,复位按钮就显得格外重要,因为按下复位按钮,单片机最开始的工作状态被内部的程序自动开启。普遍被应用的有通过上电实现自动复位,还有通过外部按键实现手动复位,实现复位的条件
17、是时钟电路工作后,连续两个机器周期的高电平被输出在单片机的RESET端。本系统设计用的是通过外部按键实现手动复位,通过上拉电阻达到提高输出高电平的值的效果。本系统设计用的是STM32F系列的单片机,原因有以下几点,首先其他单片机没有STM32F单片机的资源多,执行速度也不够STM32F单片机快;其次STM32F系列单片机下载程序相对更方便,因为STM32F单片机是通过串口来烧写;还有就是STM32F单片机内部集成了看门狗电路且其抗干扰能力很强。2.2指纹模块型号为AS608的DSP芯片是指纹模块的主要组成部分之一,另一主要组成部分是CMOS芯片。CMOS芯片的主要功能是给指纹“照相”,从而产生
18、对应的指纹特征,需要读取两次指纹特征才可以构成一个指纹模块。图2-3为指纹模板。采集过程分为:首先通过读取图像来扫描指纹,然后产生对应的指纹特征,之后建立一个指纹库的文件,最后合成指纹模板。图2-3指纹模板为了实现通过单片机进行指纹识别与记录,让指纹模板的CMOS芯片读取一次指纹的信息,接下来经过模糊处理后,分别产生两种记录信息,即0和1,然后通过指纹模块的FLASH芯片,把生成的记录信息储存起来。进入识别模式时,CMOS芯片通过读取指纹,对比与FLASH芯片里已有的记录信息,看是否有对应的信息,如果有则显示出对应指纹的编号,没有则会显示没有此指纹,请重新按下手指。图2-4和图2-5为指纹模块
19、的主要部分组成。2.须抵连援建1 DSP布行图2-4指纹识别模块部件组成(D图2-5指纹识别模块部件组成(2)2.3矩阵键盘模块图2-6按键电路为了完成按键接口设计,有的设计会采用独立式按键这个方法,还有一种方法是矩阵式键盘。因为独立式按键是一个个独立的按键,所以每一个按键都对应的输入线都是唯一的。如果本设计使用独立式按键,对IO的资源会产生很大的浪费,考虑到本系统设计需要用到较多的按键,为了让系统更可靠,键盘设计更简单,本系统选择用矩阵式键盘且通过软件消抖减少其对单片机对应产生的影响。本系统设计的矩阵键盘模块的电路如图2-6,当按键处于按下的状态时,呈现低电平。确定按键是否闭合取决于其在电压
20、上电平的高低,高电平就是断开,低电平就是闭合。当有按键被按下的时候,无法避免的是会产生不同程度的抖动,本系统设计增加了消除电平抖动这一功能,目的主要是保证CPU只确定一次按键这个动作,也可以避免受到干扰,图2-7表示按键断开或闭合前后的电压。消除抖动分硬件消除抖动和软件消除抖动,有的设计是通过双稳态电路或者滤是通过波消抖电路来消除抖动,也就是硬件消除抖动;有的设计在首次确定有按键被按下时,利用延时程序消除抖动后再明确这个按键是不是依然处于闭合状态,是就可以确认这个按键处甲沿抖动秒键确定后沿炉于闭合状态,因此达到消除抖动和避免受到干扰的影响就是软件消除抖动。W111图2-7按键抖动行线和列线构成
21、了矩阵式键盘,单片机想要读取出哪个按键处于被按下的状态,可以从接收性线,或从列线上电平发生的变化来确定。因为按键处于行、列的交叉点,所以当按键处于被按下的状态时,对应的交叉点连通其行线和列线上的电平就会产生相应的变化。本系统设计在实现按键检测方面,用的是逐行扫描法,其中列线是PBl、PB10、PBll、PB12,行线是PBl3、PBI4、PBl5、PA8。具体过程为:1、确定有没有按键处于被按下状态。首先规定所有行线为输出口,而列线为输入口,然后确保所有行线输出的是低电平,这时判断是否有按键处于被按下状态,可以通过检测列线的电平状态实现,检测哪一列电平状态为低,那么对应的按键就是处于被按下状态
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STM32 指纹识别 密码锁 系统 设计
![提示](https://www.desk33.com/images/bang_tan.gif)
链接地址:https://www.desk33.com/p-890887.html