基于51单片机的指纹密码锁设计_第1页
基于51单片机的指纹密码锁设计_第2页
基于51单片机的指纹密码锁设计_第3页
基于51单片机的指纹密码锁设计_第4页
基于51单片机的指纹密码锁设计_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于51单片机指纹电子密码锁设计摘要随着人民生活水平的提高,如何实现家庭防盗这一问题也变得特别突出,传统的机械锁由于其构造简朴,安全性低,无法满足人们的需求。随着电子产品向智能化和微型化的不停发展,单片机已成为电子产品研制和开发中首选的控制器,因此含有防盗报警功效的电子密码锁控制系统逐步替代传统的机械式密码控制系统,克服了机械式密码锁控制的密码量少,安全性能差的缺点。在传统的身份认证中,我们往往使用密码加密法,但是这种办法只是"防君子不防小人"。在高明的黑客眼里,由几个字符构成的密码脆弱得不堪一击。现在,科技的发展让我们有了新的选择——生物识别技术。将生物识别技术应用于笔记本、门锁等方面,能够对文献、财产起保护作用,并且能够进行身份识别。生物识别技术的发展重要起始于指纹研究,它亦是现在应用最为广泛的生物识别技术。本设计开发了一款基于单片机的指纹识别电子密码锁系统。该系统以STC89C52单片机作为模块核心,通过串口通信控制ZFM-60指纹模块实现录用指纹并存储指纹数据,并通过HS12864-15C液晶显示比对流程及比对成果,辅以直流继电器与发光二极管模拟开锁的动作。本系统含有体积小、性价比高、传输速度快、适合家庭及单位使用。核心词:单片机,密码锁,指纹识别

51singlefingerprint-basedelectroniccodelockdesignABSTRACTWiththeimprovementofpeople'slivingstandards,howtoachievefamilysecurityissuehasbecomeparticularlyprominent,thetraditionalmechanicallocksbecauseofitssimplestructure,lowsecurity,cannotmeetpeople'sneeds.AselectronicproductstointelligentminiaturizedandthecontinuousdevelopmentofSCMhasbecometheelectronicproductresearchanddevelopmentpreferredcontroller,theelectroniclockcontrolsystemwithanti-theftalarmfunctiongraduallyreplacethetraditionalmechanicalcontrolsystemswithcode,overcomepasswordless,poorsafetyperformanceshortcomingsofmechanicallockcontrol.Intraditionalidentity,wetendtousepasswordencryptionmethod,butthismethodonly"anti-anti-villainisnotagentleman."Intheeyesofcleverhackers,passwordconsistsofseveralcharactersfragiletoovulnerable.Now,thedevelopmentofscienceandtechnologysothatwehaveanewoption-biometrics.Thebiometrictechnologyusedinnotebook,doorlocks,etc.,theycanfileforprotectionofproperty,andcanbeidentifiable.biometrictechnologyinfingerprintprimaryoriginresearch,itisalsothemostwidelyusedbiometrictechnology.ThesystemdesignoffingerprintrecognitionelectronpasswordlockbasedonSingle-chipmicroprocessorisdevelopedinthethesis.ThesystemSTC89C52MCUasthecoremodule,throughtheserialcommunicationcontrolZFM-60fingerprintmodulefortakingfingerprintsandstorefingerprintdataandliquidcrystaldisplaybyHS12864-15Cratiothanontheprocessesandresults,supportedbysimulationofDCrelaysandLEDsunlockaction.Thesystemissmall,cost-effective,andfastandsuitableforfamiliesandunits.KeyWords:Single-chipmicroprocessor,password,Fingerprintrecognition 目录TOC\o"1-3"\f\h\z\u第一章绪论 1课题研究意义 1国内外指纹密码锁发展历史及现状 3本文重要内容 4第二章整体设计方案 5方案比较与论证 5系统总体设计 7系统功效描述 7系统总体框架 7本章小节 8第三章系统硬件设计 9单片机及最小系统 9STC89C52单片机介绍 9外部晶振设计 12复位电路设计 13指纹模块设计 15指纹识别技术介绍 15指纹模块介绍 16指纹模块指令 18指纹模块接口电路设计 21按键电路设计 21液晶显示模块设计 23FYD12864工作流程 24FYD12864指令阐明 24FYD12864液晶显示接口电路设计 29本章小节 31第四章系统软件设计 32系统工作过程分析 32主程序流程图 33键盘程序流程设计 35LCD显示模块程序流程设计 35指纹识别程序设计 36指纹模块通讯合同阐明 36指纹模版的采集存储 38指纹比对程序设计 39编程 40本章小结 41第五章实物制作与调试 42电路的焊接 42程序的烧写 44小灯、继电器的调试 45液晶的调试 45指纹模块、按键的调试 46本章小结 47总结 48参考文献 49附录一 50附录二 51英文原文 56中文翻译 65第一章绪论我们今天的工作生活中,诸多场合需要身份验证。而基于传统的标志的身份认证技术由于受到证件伪造以及密码破解等手段的威胁,逐步体现得有些局限性。如何保护自己的重要文献,如何确保自己的隐私不被泄露?在传统的身份验证下,我们倾向于使用密码加密办法,但这种办法“只是防得住君子,防不住小人”。在高明黑客的眼中,密码由几个字符脆弱得不堪一击。现在,科学技术的发展,使我们有了新的选择-生物识别技术。在笔记本,门锁等加上生物识别的技术,它们能够对文献财产进行保护,并且是高安全性,高效率的。生物识别技术是基于对人的外貌,声音和对其它生物特性身份验证的科学解决方案,现有的生物识别技术,涉及指纹识别技术普通,掌纹识别,视网膜识别,虹膜识别,脸部识别技术,语音识别技术和手写识别技术[1]。生物识别技术的重要优点是:1,减少,杜绝假冒身份,确认真实身份;2,减少管理成本,免去了人工身份认证过程;3,人性化,减少或消除使用卡,钥匙或密码等问题。指纹是硕士物特性识别技术的来源,它也是应用最广泛的生物识别技术。指纹识别技术的发展依靠于当代电子集成制造技术和快速可靠的算法的研究。即使指纹是人体皮肤的一小部分,但其中所包含的数据信息却大到我们难以想象。对这些包含的数据信息对比不是一种简朴的问题,而是使用含糊匹配算法,加以大量的操作。当代电子集成制造技术使我们能够制造相对小的指纹图像读取装置,而在计算速度快速发展的今天,使在单片机上进行两个指纹的对比运算成为可能。另外,匹配算法的可靠性也在不停提高,使得指纹识别技术越来越成熟[2]。课题研究意义随着社会的发展和技术的进步,传统的安全防盗系统面临极大的挑战。长久以来,安防系统验证身份的办法是验证一种人与否持有有效的信物,如照片、密码、钥匙、磁卡和IC卡等。因此从本质上来看,这种办法验证的是该人持有的某种“物”,而不是验证该人本身。只要“物”的有效性得到确认,则持有该“物”的人的身份也就随之得到确认。这种通过“物”来确认人的身份的方法存在的漏洞是显而易见的:“物”的丢失或出错都会造成正当的人无法被认证,并且多个信物容易被伪造、破译。在网络化时代的今天,我们每个人都拥有大量的认证密码,例如开机密码、邮箱密码、银行密码、论坛登陆密码等等;密码作为身份识别的标志已被广泛采用。密码容易被遗忘,也有被人窃取的可能,无论是在智能化还是安全性能方面都已经不能满足需求,现在的多个钥匙,如门锁钥匙,汽车钥匙,保险柜钥匙等也犹如密码同样存在显而易见的漏洞。这些传统的安全系统所采用的方式,随着社会的发展,其安全性越来越脆弱不堪一击。但是我们不能回避这个尴尬的问题,我们的生活中随时都需要进行个人身份确实认和权限的认定,特别是在信息社会,人们对于安全性的规定越来越高,同时也但愿认证的方式简朴快速。为理解决这一存在已久的问题,人们把目光转向了近年来兴起的生物识别技术,但愿能借助人体的生理特性或行为动作来进行身份识别。这样就能够不必携带大串钥匙,也不用费心去记多个密码。生物特性和钥匙、密码相比含有唯一性,不可复制性,例如指纹,专家推论以全球60亿人口计算,300年内都不会有两个相似的指纹出现。以电子商务、电子银行的安全认证为例,现在在电子商务中经常出现别人假冒当事人的身份,如果通过生物特性进行认证,就可有效避免这类事件的发生。另外,网络、数据库和核心文献等的安全控制,机密计算机的登陆认证,银行ATM、POS终端等的安全认证,蜂窝电话,PDA的使用认证等等,都能够依靠生物特性来认证。可见,生物特性识别不仅有可观的经济效益,尚有不可估计的国家信息安全效益。1997年比尔•盖茨曾这样预言:“生物识别技术即运用人的生理特性,如指纹、虹膜等来识别个人的身份,将成为将来几年IT产业的重要革新。,指纹识别技术在生物识别技术中相对来看是发展的最成熟的识别技术,指纹锁则是指纹识别技术的代表作品,指纹锁在当今安防系统中应运而生成为继机械锁、密码锁、感应锁之后另一代门锁的代表,单体指纹替代钥匙或者密码成为开锁工具,大大减少了安防系统的潜在安全隐患,重要是由于指纹的独特生理附属性,在一段比较长的历史时期内避免了遗失、被盗、被复制的隐患,因此现在看来指纹锁几乎完美的解决了传统门锁存在的问题,但是一把合格的指纹锁,须采用国际领先水平的智能芯片和高原则的安装材料,这就决定了其刚性成本很高,同时由于拥有极高的科技附加值,指纹锁市场价格普遍比较昂贵,近年来指纹识别产品在各个行业的大规模开始应用,以及人们对于智能化和安全性能的追求为指纹锁的市场拓展发明了有利条件,因此能够预见,指纹锁将迎来一种变化安防系统的历史机遇。当代社会越来越需要高效,可靠的身份识别系统。可分离人身份的传统方式,如口令,密码,身份。能够进行假冒,伪造,盗窃,或者破译,不能完全满足当代社会经济活动和社会安全的需要。作为最传统和最先进的生物鉴定办法,指纹含有很强的相对稳定性。从六个月胎儿完全形成指纹到死后尸体腐烂,指纹构造,整体分布的统计特性并没有明显的变化,显然指纹含有其唯一性。至今仍然无法找到两个人有相似的指纹,甚至是同卵双胞胎都是不同的指纹。从易用性,安全性,成熟度和成本以及其它方面综合比较,指纹识别技术将成为将来人的生理特性识别的主流技术。自动指纹识别技术创立了一种个人身份识别的新时代,指纹识别的应用使我们生活更加安全,方便【5】。以单片机为控制器的技术已经发展的非常成熟,由于它的控制性能和高可靠性的优点,电子产品与单片机控制是分不开的,如电饭煲,洗衣机,汽车等都需要微解决器控制。学习单片机的基础知识后,我们需要在实践中把所学知识组织起来,在现实生活中应用它,因此我联系指纹识别技术和单片机的原理与应用选择了基于单片机的指纹识别系统这个课题,我但愿我的设计能够完毕简朴的身份认证,给身份认证提供方便。国内外指纹密码锁发展历史及现状生物识别技术在传统安防系统面临尴尬的时候,给人们带来了但愿,并且在此后一种很长的历史时期都将是缓和了安防压力的有力保障,生物识别技术重要涉及指纹识别、人脸识别、掌形识别、指静脉识别、红膜识别、视网膜识别、声音识别等,由于多个生物识别技术的差别,只有基于指纹识别技术的产品有但愿在近几年大规模的投入民用的市场,因此指纹识别产品将是世界各国在生物识别技术领域发展和投入的重点。首先,指纹识别产品的快速发展得益于低价位取像设备的引入及其飞速发展,以及可靠的比对算法的研究发展,另首先,指纹识别技术和其它的诸多技术同样,也是从专用走向公用,逐步成为人们关注的前沿高科技之一,而现在俨然已经成为了多个高科技产品的标记。苹果公司计划推出带有指纹登陆模块的手机,微软公司推出了可单独操作的指纹识别器;IBM开始出售附有指纹识别器的手提电脑;韩国LG电子公司也推出了一种通过指纹启动的手机。但是必须指出的是指纹科技产业作为新兴的高科技智能产业,其技术上存在难以逾越的高度,迄今为止,全球指纹科技产品也刚刚处在起步阶段,国内市场上还没有产生真正意义上的指纹科技产品强势品牌,现在在中国市场上已有某些指纹锁厂家进入市场开发阶段,如杭州锦江科技、新加坡玺玛克、深圳爱迪尔和长春鸿达等,但这些公司的全国性业务还没有完全做开,普通的指纹锁厂家都是通过直销方式为政府机关、金融系统提供产品。现在世界上指纹锁重要以德国与韩国为代表,无论是在技术还是工艺方面都占据着优势,而国内的岭南锁系重要是做组合安装,自主技术和工艺水平偏低。国外的指纹锁品牌借助北京奥运会登陆中国,强势的占据了指纹锁的高端市场,而国内技术和工艺偏低的指纹锁产品只是艰难的占据着低端市场,因此和国外品牌的利润相比相距甚远,传统的门锁需要新一代的锁来更替,在这样巨大的市场需求下,国内许多公司纷纷研制开发指纹安防产品,然而通过最初几年的市场突围,指纹锁却始终没有大规模的普及应用。众多厂家倒在了市场引导阶段,成为指纹锁市场开拓大军的先烈。而现在指纹锁市场已经基本被打开,指纹锁将迎来一种快速发展的时期。本文重要内容基于指纹识别的电子锁系统设计重要由单片机、指纹模块、电子锁、液晶显示屏、ADC键盘、时钟几个部分构成,围绕指纹锁为核心功效设计的一种系统,在第二章中对设计方案的选择作重点介绍。第三章介绍系统硬件电路设计,第四章介绍系统软件设计,第五章介绍实物制作与调试。

第二章整体设计方案基于指纹识别的电子锁系统是针对以指纹图像采集、识别为核心而开发出的系统。系统会控制指纹模块搜索与否有手指放上,一旦感应到有手指,就立刻采集指纹图像,并将采集到的图像转化成特性并存储下来。通过比对该特性和模版特性来控制与否开锁。该系统运用人体指纹各异性和不变性,为顾客提供加密手段,使用时只需顾客将手指放在指纹传感器的采集窗口上,即可完毕采集任务,操作十分方便快捷。系统的液晶显示屏能够显示出指纹模块采集、转化、合并、存储、比对各个流程的成果,系统另外尚有指纹模版的存入功效,顾客能够随意存入或者删除指纹模块中的模版,只要指纹模块中有该顾客的指纹模版,该顾客就能够通过指纹开锁。方案比较与论证方案一:采用数字电路控制使用数字锁电路的好处是设计简朴。以74L112双JK触发器构造的数字逻辑电路作为控制核心的密码锁,一共有16个顾客输入键,其中只有12有效的密码按键。,另一种是干扰按钮,如果按下干扰按钮键盘输入电路会自动清零,以前输入的密码无效,需要重新输入:电路报警触点接通三次,电路将锁定键盘10秒,以避免别人非法操作。电路有两大部分构成:备用电源(UPS)和密码锁电路,其中设立UPS电源是为了避免由于停电造成的密码锁电路失效,使顾客免遭麻烦。密码锁电路包含:键盘输入、密码检测、执行电路、开锁电路、报警电路、键盘输入次数锁定电路。其原理方框图如图2-1所示图2-1数字密码锁方案方案二:以单片机为核心的控制方案首先,设备可灵活编程:一是编程过程中能够根据自己的设计规定编写程序为自己的设计,能够通过下载的方式将根据设计编写的程序写入设备,如果你想更换程序,就能够把以前输入的程序擦拭后,自己将程序重写下载写入到设备,这样能够同时使顾客节省成本和提高安全性。另首先是在单片上丰富灵活的I/O端口,这些端口能够添加多个组件,以增加其功效用来实现的其它机械锁不可能完毕的任务。由于能够加温度显示,时间显示,甚至通过I/O端口添加远程控制功效,这些都能够通过添加多个组件来完毕。但是如果在其它机械锁中,完毕这些功效,需要加入额外的专用组件。最后控制的精确性,对全部的锁来说精确性是最重要的,由于它是确保安全性的前提,如果精度局限性够高的话,就很难得到适宜的安全保障,单片机的精确性是比较不错的。单片机为核心的控制方案不仅能够实现基本锁定功效,能够添加某些额外的功效。通过比较以上两种方案,单片机方案有较大的活动空间,不仅能实现所规定的功效并且能在很大程度上扩展功效,并且还能够方便的对系统进行升级因此我们采用以单片机为核心的控制方案。系统总体设计系统功效描述本系统是根据指纹采集,识别模块开发出的指纹识别电子密码锁系统。该系统使用一种搜索手指指纹模块,一旦搜索到手指,立刻采集手指指纹图像,并且将所收集的图像以数据形式发送。它运用人类指纹各向异性和不变性,为顾客提供加密。只需把你的手指平放在指纹采集仪的采集窗口上完毕指纹采集,操作十分方便。其重要功效是通过液晶显示屏显示出了各个过程和指纹对比成果。采集指纹图像之前,指纹模块必须检测与否在传感器表面上出现手指,因此应当有这种指纹录入的功效。简朴的描述本次设计的功效即使用指纹模块检测、录入指纹,将比对的数据显示在液晶屏幕上。本系统拥有一次最多录入三个指纹的能力该系统的重要功效有下列几个方面:1.录入指纹:系统预先要有录入指纹的功效,即将个人的指纹通过指纹采集器采集顾客指纹的特性信息。2.合成指纹模板并存储:通过光电转换后,将指纹特性值和对应的ID号存储到存储器中。上位机只要有上传指纹的命令,模块能够立刻将数据传送到指定位置。3.搜索指纹库比对指纹:当有指纹录入时,模块会响应上位机指令搜索指纹库比对指纹,同时液晶显示比对成果,继电器动作、发光二极管亮。系统总体框架系统的总体框架是指根据设计任务规定,对系统所需元件、设备参数进行必要的计算,通过认真研究、分析、比较选定设备型号,再将设备、元件通过可靠的接口电路联系起来构成一种完整的系统。在系统的整体方案拟定之前,先要明确设计规定,然后对系统硬件、软件进行设计,其中涉及绘制原理框图、电路图,对原理进行必要阐明,综合考虑系统的性能和稳定性规定,以确保所设计的系统达成预期的规定。通过查阅大量的文献资料、综合分析考虑。主控芯片选用STC89C51单片机。系统总体框图如图2-2所示图2-2系统总体框架图本章小节本章开头分别分析了采用数字电路控制和采用单片机控制的优缺点。根据总体设计原则,最后拟定本系统采用单片机控制的方案。在采用单片机控制方案拟定后,本章又给出了该系统的总体设计。并简朴的对系统功效进行了描述,最后给出了系统的总体框架图。本章是本设计的前提,为接下来的工作打下了基础。

第三章系统硬件设计系统的硬件电路设计重要是根据系统整体框图来具体的设计各个部分的电路,重要涉及STC89C52单片机外围电路设计、指纹模块ZFM-60电路、ADC键盘电路、液晶FYD12864电路几部分。单片机及最小系统STC89C52单片机介绍单片机,亦称单片微电脑或单片微型计算机。它是把中央解决器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口(I/0)等重要计算机功效部件都集成在一块集成电路芯片上的微型计算机。现在能够说单片机是百花齐放的时期,世界上各大芯片制造公司都推出了自己的单片机,从8位、16位到32位,数不胜数,应有尽有,它们各具特色,互成互补,为单片机的应用提供广阔的天地【6】。纵观单片机的发展过程,能够预示单片机的发展趋势。MCS-51系列的8031推出时的功耗达630mW,而现在的单片机普遍都在100mW左右,随着对单片机功耗规定越来越低,现在的各个单片机制造商基本都采用了CMOS(互补金属氧化物半导体工艺)。80C51就采用了HMOS(即高密度金属氧化物半导体工艺)和CHMOS(互补高密度金属氧化物半导体工艺)。现在常规的单片机普遍都是将中央解决器(CPU)、随机存取数据存储(RAM)、只读程序存储器(ROM)、并行和串行通信接口,中断系统、定时电路、时钟电路集成在一块单一的芯片上,增强型的单片机集成了如A/D转换器、PMW(脉宽调制电路)、WDT(看门狗)、有些单片机将LCD(液晶)驱动电路都集成在单一的芯片上,这样单片机包含的单元电路就更多,功效就越强大。【7】STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期能够任意选择。重要特性以下:增强型8051单片机,6时钟/机器周期和12时钟/机器周期能够任意选择,指令代码完全兼容传统8051。工作电压:~(5V单片机)/~(3V单片机)工作频率范畴:0~40MHz,相称于普通8051的0~80MHz,实际工作频率可达48MHz顾客应用程序空间为8K字节片上集成512字节RAM通用I/O口(32个),复位后为:P1/P2/P3/P4是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RXD/,TXD/)直接下载顾客程序,数秒即可完毕一片含有EEPROM功效含有看门狗功效共3个16位定时器/计数器。即定时器T0、T1、T2外部中断4路,下降沿中断或低电平触发电路,PowerDown模式可由外部中断低电平触发中断方式唤醒通用异步串行口(UART),还可用定时器软件实现多个UART工作温度范畴:-40~+85℃(工业级)/0~75℃(商业级)PDIP封装STC89C52RC单片机的工作模式掉电模式:典型功耗<μA,可由外部中断唤醒,中断返回后,继续执行原程序空闲模式:典型功耗2mA正常工作模式:典型功耗4mA~7mA掉电模式可由外部中断唤醒,合用于水表、气表等电池供电系统及便携设备下图3-1为STC89C52RC引脚功效阐明。图3-1STC89C52引脚图VCC(40引脚):电源电压VSS(20引脚):接地P0口:为8位准双向I/O接口,它的每一位都能够分别定义为输入线或输出线(作为输入时,口锁存器必须置1),可启动4个TTL负载。P1口:为8位准双向I/O接口,它的每一位都能够分别定义为输入线或输出线(作为输入时,口锁存器必须置1),可启动4个TTL负载。P2口:为8位准双向I/O接口,当它作为I/O接口使用时,可直接连接外部I/O设备;在接有片外存储器或扩展I/O且寻址范畴超出256字节时,P2口可用做高8位的地址总线。P3口:为8位准双向I/O接口,还能够将每一位用于第二功效,第二功效的定义见表3-1。表3-1STC89C52P3口的第二功效端口功效第二功效RXD(串行输入口)TXD(串行输入口)INT/0(外中断0)INT/1(外中断1)T0(定时/计数器0)T0(定时/计数器1)外部数据存储器写选通外部数据存储器读选通XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。本设计的主程序重要由液晶显示、通讯子按键程序构成。主程序的工作流程描述以下:首先初始化多个硬件功效模块进行初始化。涉及开机液晶显示、键盘扫描、指纹模块建立通信。外部晶振设计单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,它结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。在普通工作条件下,普通的晶振频率绝对精度可达百万分之五十,高级的精度更高。有些晶振还能够由外加电压在一定范畴内调节频率,称为压控振荡器(VCO)。晶振用一种能把电能和机械能互相转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡[8]。单片机晶振的作用是为系统提供基本的时钟信号。普通一种系统共用一种晶振,便于各部分保持同时。有些通讯系统的基频和射频使用不同的晶振,而通过电子调节频率的办法保持同时。晶振普通与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,能够用与同一种晶振相连的不同锁相环来提供。STC89C52使用的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,因另外部只要连接一种晶振和两个电容即可,电容容量普通在15pF至50pF之间。STC89C52的内部有一种用于构成振荡器的高增益反相放大器,通过XTAL1,XTAL2外部接上一片作为反馈元件的晶体,与C1和C2构成了并联谐振电路,使其构成自激振荡器,电容的值含有微调的作用,我们取30pF,具体的接法如图3-2外部晶振电路。图3-2外部晶振电路STC89C52的工作频率范畴在0~24MHz。我们选用的是的晶振,振荡周期约为1μs机器周期约为μs,因此这个晶振能够满足这个系统的规定。并且晶振不能离单片机太远,否则使用外部晶振进行软件调试时就会发现找不到信号。复位电路设计单片机的置位和复位,都是为了把电路初始化到一种拟定的状态,普通来说,单片机复位电路作用是把一种例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把某些寄存器以及存储设备装入厂商预设的一种值[9]。单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位,当复位电平持续两个机器周期以上时复位有效。复位电平的持续时间必须不小于单片机的两个机器周期。具体数值能够由RC电路计算出时间常数。复位电路由按键复位和上电复位两部分构成。(1)上电复位:STC89系列单片机为高电平复位,普通在复位引脚RST上连接一种电容到VCC,再连接一种电阻到GND,由此形成一种RC充放电回路确保单片机在上电时RST脚上有足够时间的高电平进行复位,随即回归到低电平进入正常工作状态,这个电阻和电容的典型值为10KΩ和10μF。(2)按键复位:按键复位就是在复位电容上并联一种开关,当开关按下时电容被放电、RST也被拉到高电平,并且由于电容的充电,会保持一段时间的高电平来使单片机复位。本系统采用的复位电路如图3-3所示。单片机在上电瞬间,RC电路充电,RST引脚端出现正脉冲,只要RST端保持两个机器周期以上的高电平,就能使单片机有效复位。其中电容选10uF、电阻选10K。图3-3复位电路指纹模块设计指纹识别技术介绍指纹识别技术的原理和其它生物识别技术的原理类似。它是使用指纹特性对个体身份进行分辨和识别。指纹识别技术是全部生物识别技术中最成熟的,也是应用最广泛的。这重要是由于使用指纹识别对顾客来说非常简朴,并且指纹识别精确率很高。严格地说,指纹识别的原理涉及指纹采集原理、指纹特性提取原理和指纹特性匹配原理三大部分[3]。指纹采集原理是基于指纹或生理特性,通过多个指纹传感技术来显示出他的特性,并将指纹图案用数字化表达。由于指纹脊和谷的不同的几何特性,重要体现为脊是突起,谷是凹陷的,因此当暴露于光,反射光的强度是不同的。当接触于平面上,形成在平面压力是不同的。在另首先,由于指纹的脊和谷的不同的物理特性,重要体现为:脊和谷的温度不同,其导电性也是不同的,他们反馈的波长就不相似。根据这些几何特性,生理特性的不同,把人的指纹采集到计算机系统中形成一种指纹图象。指纹特性分析原理是通过对指纹图案的整体特性和细节特性进行提取,鉴别。抱负的指纹图像是一幅黑白相间的二值图像。但是由于指纹普通是用按压的方式得到的,因此,油墨、纸张、手指的状况以及皮肤的变形等因素都会造成指纹图像不抱负。另外,通过扫描仪或者摄像机进行数字化的时候,由于光照的影响,也会引入多个噪声。这些因素都使灰度图像不能直接用来匹配。因此,有必要选择适宜的特性来描述指纹征来描述指纹[4]。普通采用的构造特性有2种层次:1)全局特性。所描述的是指纹的全局纹路构造,如图3-4所示,运用计算机解决时具体划分为:弓型、环型、螺旋型。其它的指纹图案都基于这3种基本图案。图3-4指纹基本纹路图案2)局部特性。断点和分叉是最惯用的指纹局部构造特性,也称为细节特性。采用这种特性的一种例子是细节—坐标模型,也就是使用指纹的细节点及其坐标和其它某些特性来描述指纹。对于指纹身份鉴定,特别是对现场的含糊指纹进行认定的时候所使用的信息是细节特性点,如图3-5中的小桥、三角点、分叉点、端点和环。图3-5指纹图像人们根据纹路的局部构造特性共定义了150多个细节特性,如果同时使用全部的这些特性,将很难自动并且快速地从指纹图像中提取并且辨别他们。普通,自动指纹鉴定系统只使用其中2种重要的特性,即分叉点和断点。其它细节特性都能够用他们的组合来表达。例如小桥是由2个端点构成的,而环是由2个分叉点构成的。指纹特性值匹配原理是对指纹图案的整体特性和细节特性按模式识别的原理进行比对匹配。匹配是在已经登记指纹与现在需要验证的指纹之间进行的。匹配操作不是对两个指纹图像做比较,而是将已经数字化的指纹特性值进行匹配。指纹模块介绍指纹模块里面重要是DSP芯片,型号为AS606,加上外面的CMOS芯片,CMOS芯片重要是对指纹进行“摄影”,生成指纹特性,以下图所示就是一种指纹模板,录入两次这样的指纹特性就能生成一种指纹模板。具体的工作过程是:扫描指纹(录入图像)、生成特性、合成模板(建立一种指纹库文献,成功录入一种指纹)。图3-6指纹模版指纹模板就是“照一次相”,将指纹模块里面的CMOS芯片采集一次指纹信息,然后进行含糊解决生成0和1两种统计信息,存入指纹模块的FLASH芯片里面。当切换到识别模式的时候,指纹模块就会先让CMOS芯片采集一次指纹,然后和FLASH芯片的数据进行对比。看是不是存在,如果存在就能返回是几号指纹。这样我们就能通过单片机或者电脑进行指纹识别与登记了。具体指纹模块介绍以下:此指纹模块型号是:ZFM60,此模块上里面包含了:1、光学头2、通信连接线3、DSP芯片4、稳压芯片5、FLASH芯片6、CMSO传感器等部件构成。重要技术指标:供电电压:DC~背光颜色:绿色亮灯方式:长亮/闪烁供电电流:工作电流:<65mA峰值电流:<95mA指纹图像录入时间:<秒窗口面积:×匹配方式:比对方式(1:1)搜索方式(1:N)特性文献:256字节模板文献:512字节存储容量:1000枚安全等级:3级(从低到高:1、2、3、4、5)认假率(FAR):<%(安全等级为3时)拒真率(FRR):<%(安全等级为3时)搜索时间:<秒(1:500时,均值)上位机接口:UART(TTL逻辑电平)通讯波特率(UART):(9600×N)bps其中N=1~12(默认值N=6,即57600bps)指纹模块指令进行指纹模块的操作是通过单片机的串口发送与接受命令完毕的。我们先通过串口给指纹模块发送命令,然后等待指纹模块传回数据。再通过单片机进行数据的解决,从而判断命令有无执行。重要为下列几条命令。1)开机的时候进行模块握手,从而判断模块是不是连接正常。命令以下:验证口令:指令包格式:2bytes4bytes1byte2bytes1byte4bytes2bytes包头模块地址包标记包长度指令码口令校验和0xEF01Xxxx01H07H13HPasswordSUM应答包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度确认码校验和0xEF01Xxxx07H03HxxHSUM注:确认码=00H表达口令验证对的;确认码=01H表达收包有错;确认码=13H表达口令不对的;2)生成指纹模板需要进行以下四个个命令:录入图像、生成特性、合成指纹模板、存储指纹模板。录入指纹图像指令:指令包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度指令码校验和0xEF01Xxxx01H03H01HSUM应答包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度确认码校验和0xEF01Xxxx07H03HxxHSUM注:确认码=00H表达录入成功;确认码=01H表达收包有错;确认码=02H表达传感器上无手指;确认码=03H表达录入不成功;图像生成特性Img2Tz指令:指令包格式:2bytes4bytes1byte2bytes1byte1byte2bytes包头模块地址包标记包长度指令码缓冲区号校验和0xEF01Xxxx01H04H02HBufferIDSUM应答包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度确认码校验和0xEF01Xxxx07H03HxxHSUM注:确认码=00H表达生成特性成功;确认码=01H表达收包有错;确认码=06H表达指纹图像太乱而生不成特性;确认码=07H表达指纹图像正常,但特性点太少而生不成特性;确认码=15H表达图像缓冲区内没有有效原始图而生不成图像;特性合成模板RegMode1指令:功效阐明:将CharBuffer1与CharBuffer2中的特性文献合成特性模板。指令包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度指令码校验和0xEF01Xxxx01H03H05HSUM应答包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度确认码校验和0xEF01Xxxx07H03HxxHSUM注:确认码=00H表达合并成功;确认码=01H表达收包有错;确认码=0aH表达合并失败(两枚指纹不属于同一手指);存储模板Store指令:指令包格式:2bytes4bytes1byte2bytes1byte1byte2bytes2bytes包头模块地址包标记包长度指令码缓冲区号位置号校验和0xEF01XXXX01H06H06HBufferIDPageIDSUM应答包格式:2bytes4bytes1byte2bytes1byte2bytes包头模块地址包标记包长度确认码校验和0xEF01Xxxx07H03HxxHSUM注:确认码=00H表达储存成功;确认码=01H表达收包有错;通过以上四个环节与命令,我们就录入了一种指纹,重复以上环节,我们能够再录入其它指纹。3)指纹识别是先转换到识别模式,然后不停的探测是不是有指纹出现在光学采集头上。如果有则扫描指纹,与库里面的指纹进行比对,如果是就读出是几号指纹。模块会自动探测是不是有指纹,如果有则发送下面的命令:搜索指纹Search指令:指令包格式:2bytes4bytes1byte2bytes1byte1byte2bytes2bytes2bytes包头模块地址包标记包长度指令码缓冲区号参数参数校验和0xEF01Xxxx01H08H04HIDStarPagePageNumSUM应答包格式:2bytes4bytes1byte2bytes1byte2bytes2bytes2bytes包头模块地址包标记包长度确认码页码得分校验和0xEF01Xxxx07H07HxxHSUM注:确认码=00H表达搜索到;确认码=09H表达没有搜索;如果搜索到就返回对应的指纹号,如果没有就会返回0。指纹模块接口电路设计ZFM60系列独立式指纹识别模块引脚功效:模块中引脚1与电源相连,引脚2接单片机的RXD端,引脚3接单片机的TXD端,引脚4悬空,引脚5接地。表3-2以下:表3-2指纹识别模块引脚功效引脚号名称类型功效描述1Vinin电源正输入端2TDout串行数据输出。TTL逻辑电平3RDin串行数据输入。TTL逻辑电平4GND-信号地。内部与电源地连接指纹模块电路如图3-7所示图3-7指纹模块接口图按键电路设计按键的闭合与否反映在电压上就是呈现出高电平或低电平,如果高电平表达断开,那么低电平则表达闭合,通过电平的高低状态的检测可确认键按下与否。为了确保CPU对一次按键动作只确认一次,并且避免干扰信号的影响,必需加入消除电平抖动的方法,下图3-8为按键抖动示意。消除抖动普通有硬、软硬两种办法,硬件消除抖动可采用双稳态电路或滤波消抖电路;软件消抖是在第一次检测到有键按下时,执行一段延时程序再确认该键与否仍闭合,如果还是闭合状态则确认该键按下,从而消除抖动和干扰影响。按键接口设计有两种办法,独立式按键和矩阵式键盘。独立式按键各键相独立,每个按键各接入一根输入线,只要检测输入线的电平就能够识别按键状态。这种办法电路配备灵活,软件构造简朴,但每个按键需占用一根输入口。由于该设计方案IO资源浪费大。故此办法只合用于按键少或其它控制功效很简朴的场合。由于本设计中的按键较多,考虑系统可靠性和键盘设计的简朴因此采用矩阵按键。本系统的按键电路如图3-9所示,按键按下是呈低电平,我们采用软件消抖来减少对的单片机影响。有键按下有键按下前沿抖动按键拟定后沿抖动图3-8按键闭合及断开前后的电压矩阵式键盘由行线和列线构成,按键位于行、列的交叉点上。当键被按下时,其交点的行线和列线接通,对应的行线或列线上的电平发生变化,单片机通过检测行或列线上的电平变化能够拟定哪个按键被按下。矩阵键盘的检测办法有多个,常见的有:逐点扫描法、逐行扫描法、全局扫描法。在本实例中我们采用逐行扫描法来实现按键检测,其中作为列线,作为行线。识别过程以下:1、判断键盘中与否有键按下。设立全部行线为输出口,并输出低电平;设立列线为输入口,读取列线上的电平状态,只要有一列的电平为低,就表达有按键按下,并且被按下的键位于电平为低的列线与4跟行线相交叉的4个按键中,若全部列线都为高电平,表达没有按键按下;2、判断被按下按键所在的位置。在确认有键按下后(进行按键消抖解决后),接下来就是拟定具体哪个案件被按下,办法是:依次将每根行线设立为输出口,并输出低电平(同时剩余行线输出高电平),然后逐列检查每根列线的电平状态,若某列为低电平,则该列线与设立为输出低电平的行线交叉处的按键就是被按下的按键。3、按键位置拟定后,接下来就要给矩阵键盘中的每个按键进行编号,也就是进行按键编码,程序设计中惯用计算法和查表法两种方式对按键进行编码,本实例采用计算法编码。图3-9按键电路液晶显示模块设计液晶是一种高分子材料,由于其特殊的物理、化学、光学特性,20世纪中叶开始广泛应用在轻薄型显示屏上。液晶显示屏的重要原理是以电流刺激液晶分子产生点、线、面并配合背部灯管构成画面。为叙述简便,普通把多个液晶显示屏都直接叫做液晶。液晶体积小、功耗低、现实操作简朴,但是它有一种致命的弱点,其使用温度范畴很窄,通用型液晶正常工作温度范畴为0°C~+55°C,存储温度范畴为-20°C~+60°C,因此在设计对应产品时,务必要考虑周全,选用适宜的液晶。FYD12864工作流程1)基本操作时序:读状态:输入:RS=L,RW=H,E=H输出:D0~D7=状态字写指令:输入:RS=L,RW=L,D0~D7=指令码,E=高脉冲输出:D0~D7=数据读数据:输入:RS=H,RW=H,E=H输出:无写数据:输入:RS=H,RW=L,D0~D7=数据,E=高脉冲输出:无2)状态字阐明表3-3状态字阐明STA7D7STA6D6STA5D5STA4D4STA3D3STA2D2STA1D1STA0D0STA0~6现在数据地址指针的数值STA7读写操作使能1:严禁0:允许对控制器每次进行读写操作之前都必须进行读写检测,确保STA7为0。事实上,由于单片机的操作速度慢于液晶控制器反映速度,因此能够不进行读/写检测,或只进行简短延时即可。FYD12864指令阐明表3-4指令集(RE=0:基本指令集)指令指令码阐明RSRWDB7DB6DB5DB4DB3DB2DB1DB0去除显示0000000001将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”地址归位000000001X设定DDRAM的地址计数器(AC)到“00H”,并且将游标移到开头原点位置;这个指令并不变化DDRAM的内容进入点设定00000001I/DS指定在资料的读取与写入时,设定游标移动方向及指定显示的移位I/D=1:游标向右移,DDRAM地址计数器(AC)加1I/D=0:游标向左移,DDRAM地址计数器(AC)减1S:显示画面整体位移显示状态开/关0000001DCBD=1:整体显示ONC=1:游标ONB=1:游标位置ON游标或显示移位控制000001S/CR/LXX设定游标的移动与显示的移位控制位元;这个指令并不变化DDRAM的内容S/C=0,R/L=0:游标向左移动S/C=0,R/L=1:游标向右移动功效设定00001DLX0REXXDL=1(必须设为1)RE=1:扩充指令集动作RE=0:基本指令集动作设定CGRAM地址0001AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)设定CGRAM地址0001AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)设定DDRAM地址001AC6AC5AC4AC3AC2AC1AC0设定DDRAM地址到地址计数器(AC)读取忙碌标志(BF)和地址01BFAC6AC5AC4AC3AC2AC1AC0读取忙碌标志(BF)能够确认内部动作与否完毕,同时能够读出地址计数器(AC)的值写资料到RAM10D7D6D5D4D3D2D1D0写入资料到内部的RAM(DDRAM/CGRAM/IRAM/GDRAM)读出RAM的值11D7D6D5D4D3D2D1D0从内部RAM读取资料(DDRAM/CGRAM/IRAM/GDRAM)表3-5指令表(RE=1:扩充指令集)指令指令码阐明RSRWDB7DB6DB5DB4DB3DB2DB1DB0待命模式0000000001将DDRAM填满“20H”,并且设定DDRAM的地址计数器(AC)到“00H”卷动地址或IRAM地址选择000000001SRSR=1:允许输入垂直卷动地址SR=0:允许输入IRAM地址反白选择00000001R1R0选择4行中的任一行作反白显示,并可决定反白与否睡眠模式0000001SLXXSL=1:脱离睡眠模式SL=0:进入睡眠模式扩充功效设定000011XREG0RE=1:扩充指令集动作RE=0:基本指令集动作G=1:绘图显示ONG=0:绘图显示OFF设定IRAM地址或卷动地址0001AC5AC4AC3AC2AC1AC0SR=1:AC5—AC0为垂直卷动地址SR=0:AC3—AC0为ICONIRAM地址设定绘图RAM地址001AC6AC5AC4AC3AC2AC1AC0设定CGRAM地址到地址计数器(AC)当模块在接受指令前,微解决顺必须先确认模块内部处在非忙碌状态,即读取BF标志时BF需为0,方可接受新的指令;如果在送出一种指令前并不检查BF标志,那么在前一种指令和这个指令中间必须延迟一段较长的时间,即是等待前一种指令确实执行完毕,指令执行的时间请参考指令表中的个别指令阐明。“RE”为基本指令集与扩充指令集的选择控制位元,当变更“RE”位元后,往后的指令集将维持在最后的状态,除非再次变更“RE”位元,否则使用相似指令集时,不需每次重设“RE”位元。具体指令介绍:1)去除显示RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功效:去除显示屏幕,把DDRAM位址计数器调节为“00H”2)位址归位RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHX功效:把DDRAM位址计数器调节为“00H”,游标回原点,该功效不影响显示DDRAM3)位址归位RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHI/DS功效:把DDRAM位址计数器调节为“00H”,游标回原点,该功效不影响显示DDRAM功效:执行该命令后,所设立的行将显示在屏幕的第一行。显示起始行是由Z地址计数器控制的,该命令自动将A0-A5位地址送入Z地址计数器,起始地址能够是0-63范畴内任意一行。Z地址计数器含有循环计数功效,用于显示行扫描同时,当扫描完一行后自动加一。4)显示状态开/关RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHDCB功效:D=1;整体显示ONC=1;游标ONB=1;游标位置ON5)游标或显示移位控制RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLHS/CR/LXX功效:设定游标的移动与显示的移位控制位:这个指令并不变化DDRAM的内容6)功效设定RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLHDLX0REXX功效:DL=1(必须设为1)RE=1;扩充指令集动作RE=0:基本指令集动作7)设定CGRAM位址RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功效:设定CGRAM位址到位址计数器(AC)8)设定DDRAM位址RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功效:设定DDRAM位址到位址计数器(AC)9)读取忙碌状态(BF)和位址RSRWDB7DB6DB5DB4DB3DB2DB1DB0LHBFAC6AC5AC4AC3AC2AC1AC0功效:读取忙碌状态(BF)能够确认内部动作与否完毕,同时能够读出位址计数器(AC)的值10)写资料到RAMRSRWDB7DB6DB5DB4DB3DB2DB1DB0HLD7D6D5D4D3D2D1D0功效:写入资料到内部的RAM(DDRAM/CGRAM/TRAM/GDRAM)11)读出RAM的值RSRWDB7DB6DB5DB4DB3DB2DB1DB0HHD7D6D5D4D3D2D1D0功效:从内部RAM读取资料(DDRAM/CGRAM/TRAM/GDRAM)12)待命模式(12H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLLH功效:进入待命模式,执行其它命令都可终止待命模式13)卷动位址或IRAM位址选择(13H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLLHSR功效:SR=1;允许输入卷动位址SR=0;允许输入IRAM位址14)反白选择(14H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLLHR1R0功效:选择4行中的任一行作反白显示,并可决定反白的与否15)睡眠模式(015H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLLLHSLXX功效:SL=1;脱离睡眠模式SL=0;进入睡眠模式16)扩充功效设定(016H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLLHHX1REGL功效:RE=1;扩充指令集动作RE=0;基本指令集动作G=1;绘图显示ONG=0;绘图显示OFF17)设定IRAM位址或卷动位址(017H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLLHAC5AC4AC3AC2AC1AC0功效:SR=1;AC5~AC0为垂直卷动位址SR=0;AC3~AC0写ICONRAM位址18)设定绘图RAM位址(018H)RSRWDB7DB6DB5DB4DB3DB2DB1DB0LLHAC6AC5AC4AC3AC2AC1AC0功效:设定GDRAM位址到位址计数器(AC)FYD12864液晶显示接口电路设计FYD12864共有20个引脚,各引脚阐明如表3-6所示。表3-6接口信号阐明编号符号引脚阐明编号符号引脚阐明1VSS电源地11D4DataI/O2VDD电源正极12D5DataI/O3VO液晶显示对比度调节端13D6DataI/O4RS数据/命令选择端(H/L)14D7DataI/O5R/W读/写选择端(H/L)15PSB并/串选择H并行L串行6E使能信号16NC空脚7D0DataI/O17RST复位,低电平有效8D1DataI/O18NC空脚9D2DataI/O19A背光电源正极10D3DataI/O20K背光电源负极FYD12864中文图形点阵液晶显示模块,可显示中文及图形,内置8192个中文中文(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。下图为FYD12864与单片机的接口连接图。图3-1012864引脚与单片机连接图显示模块重要完毕数据的显示功效。顾客所编的显示程序,开始必须进行初始化,否则模块无法正常显示,首先当模块接受指令前,单片机必须确认模块内部处在非忙碌状态,然后根据接受到指令显示有关的内容在屏幕上。1、通过RS拟定是写数据还是写命令。写命令涉及使液晶的光标显示/不显示、光标闪烁/不闪烁、需/不需要移屏、在液晶的什么位置显示,等等。写数据是指要显示什么内容。2、读/写控制端设立为写模式,即低电平。3、将数据或命令送达数据线上。4、给E一种高脉冲将数据送入液晶控制器,完毕写操作。本章小节本章首先介绍了重要控制元件STC89C52单片机,并且介绍了各引脚功效及构成最小系统各部分的原理。然后,理解了12864液晶的使用办法及其编程要点,接着叙述了如何对按键编程,由于按键必须添加防抖动设立,以减少误差。最后介绍指纹模块,列出本设计需要的程序模块。

第四章系统软件设计系统软件设计重要以硬件电路设计为基础,以实现系统功效为导向,重要涉及指纹识别程序设计、ADC键盘程序设计、液晶FYD12864程序设计几部分。系统工作过程分析在本文的硬件电路中,单片机嵌入到系统中作为控制器。应用程序开发分为两个部分,即指纹识别模块的应用开发,和12864液晶,按键程序的开发。程序开发将建立主程序调用一系列子程序通过C语言函数作为重要途径,也就是运用C语言函数分别对指纹识别模块和液晶显示电路编制子程序。在此设计中,使用编程单片机的keil软件作为开发环境的,由于编译器支持模块化设计,能够将源程序分成几个模块各自进行编写,最后通过编译器生成一种最后的文献。开发环境能够调试软件模拟程序,能够轻松进行程序的编写和调试,调试成功的代码文献通过开发板就可下列载到单片机中。单片机上电后,主程序应完毕对应的初始化。根据电路的功效性规定,重要程序必须初始化液晶,并且检测按键。如果有对应的键被按下,执行对应的操作,对指纹模块的读写是单片机通过串行接口进行的。因此要对串口进行初始化由于使用串口和模块通讯,因此必须先商定好单片机和模块的串口工作速度和数据包格式。SCON是一种特殊功效寄存器,用以设定串行口的工作方式、接受/发送控制以及设立状态标志:表4-1SCON寄存器地址位位76543210字节地址:98HSM0SM1SM2SM3SM4SM5SM6SM7SCONSM0和SM1为工作方式选择位,可选择四种工作方式:表4-2串行口工作方式SM0SM1方式阐明波特率000移位寄存器fosc/1201110位异步收发器(8位数据)可变10211位异步收发器(9位数据)fosc/64或fosc/3211311位异步收发器(9位数据)可变PCON中只有一位SMOD与串行口工作有关:表4-3PCON寄存器位76543210字节地址:97HSMODPCONSMOD()波特率倍增位。在串行口方式1、方式2、方式3时,波特率与SMOD有关,当SMOD=1时,波特率提高一倍。复位时,SMOD=0。发送数据共11-14个字节,前6个字节是模块的包头和模块地址为固定值,后5-8个字节是传输的模块的命令。同时根据外部晶振和系统默认的传输速率算出控制串口的各寄存器的初始值。指纹模块的通讯波特率(UART)的规定为9600bps,因此如果单片机要与指纹模块进行通信是,必须波特率一致,此时需要在编程时设立单片机的波特率为9600bps。串行口工作之前,应对其进行初始化,重要是设立产生波特率的定时器1、串行口控制和中断控制。具体环节以下:1、拟定T1的工作方式(编程TMOD寄存器);2、计算T1的初值,装载TH1、TL1;3、启动T1(编程TCON中的TR1位);4、拟定串行口控制(编程SCON寄存器);5、串行口在中断方式工作时,要进行中断设立(编程IE、IP寄存器)。下面是串口初始化程序:SCON=0x50;前准备首先要熟悉所焊印制电路板的装配图,并按图纸配料,检查元器件型号、规格及数量与否符合图纸规定,并做好装配前元器件引线成型等准备工作。2.焊接次序元器件装焊次序依次为:电阻、电容器、二极管、三极管、集成电路、大功率管,其它元器件为先小后大。3.对元器件焊接规定(1)电容器焊接将电容器按图装人规定位置,并注意有极性电容器其“+”与“-”极不能接错,电容器上的标记方向要易看可见。先装玻璃釉电容器、有机介质电容器、瓷介质电容器,最后装电解电容器。(2)二极管的焊接二极管焊接要注意下列几点:第一,注意阳极阴极的极性,不能装错;第二,型号标记要易看可见;第三,焊接立式二极管时,对最短引线焊接时间不能超出2S。(3)三极管焊接注意e、b、c三引线位置插接对的;焊接时间尽量短,焊接时用镊子夹住引线脚,以利散热。焊接大功率三极管时,若需加装散热片,应将接触面平整、打磨光滑后再紧固,若规定加垫绝缘薄膜时,切勿忘记加薄膜。管脚与电路板上需连接时,要用塑料导线。(4)集成电路焊接首先按图纸规定,检查型号、引脚位置与否符合规定。焊接时先焊边沿的二只引脚,以使其定位,然后再从左到右自上而下逐个焊接。对于电容器、二极管、三极管露在印制电路板面上多出引脚均需齐根剪去[15]。(5)FYD12864注意事项:1)要避免在解决机械振动和对模块施加外力,都可能使屏不显示或损坏。2)不能用手或坚硬工具或物体接触、按压、磨擦显示屏,否则屏上的偏光片被物体划坏。3)如果屏破裂液晶材料外漏,液晶能够通过空气被吸入,并且要避免液晶与皮肤接触,如果接触应立刻用酒精冲洗,然后再用水彻底冲洗。4)不能使用可溶有机体来清洗显示屏。由于这些可溶的溶剂对偏光片不利,清洗显示屏时,可用棉花蘸少量石油苯轻轻擦拭或用透明胶带粘起脏物。5)要避免高压静电产生的放电,将损坏模块中的CMOS电路。6)不能把模块放在温度高的地方,特别不能长时间放在湿度大的地方,最佳把模块放在温度为0℃-35℃,湿度低于70%的环境中。7)模块不能贮存在太阳直射的地方。8)当电源接通时,不能组装或拆卸模块。9)在电源电压的偏差、输入电压的偏差及环境温度等最坏条件下,也不能超出最大的额定值,否则将损坏LCD模块。按照以上次序及规定焊接好后的实物如图5-1所示图5-1焊接后的实物图程序的烧写STC-ISP是一款单片机下载编程烧录软件,是针对STC系列单片机而设计的,可下载STC89系列、12C2052系列和12C5410等系列的STC单片机,使用简便,现已被广泛使用。图5-2STC-ISP工作界面调试通过的代码文献通过STC_ISP_V480下载到单片机。STC_ISP_V480使用环节为:1、打开STC-ISP,以下图界面,在MCUType栏目下选中单片机STC89C52RC。2、选中COM端口,波特率选择9600。3、点击“打开文献”并在对话框内找到要下载的HEX文献。4、点击download/下载,根据提示给单片机上电,完毕程序烧写。单片机在上电后,主程序应当完毕对应的初始化工作。根据电路的功效规定,主程序必须对液晶初始化、同时对按键进行检测,如果有对应的按键按下,执行对应的操作,单片机通过串行接口对指纹模块进行读写。小灯、继电器的调试首先按下电源,看电源批示灯与否点亮,证明电源电路正常。然后测试单片机与否正常工作,在Keil上编写了一段红绿小灯以一秒间隔闪烁的程序,导入单片机,上电后发现小灯按照我所规定的方式工作,证明单片机及小灯工作正常。再加一条与继电器连接引脚电平高低变化的程序检测继电器与否正常工作。图5-3小灯,继电器调试图液晶的调试导入12864液晶的测试程序,上电后,通过调节液晶屏背面的电位器调节12864的对比度,在调试液晶时要注意:屏上显示小方格,产生因素:程序中对液晶初始化不正常,应是部分初始化指令没有正常接受,按照原则初始化环节调节程序,或者调节指令之间的延时(加大某些试试)--补充:也有可能是对比度太大,需要调节对比度电阻。在经调试后液晶的成果为:图5-4液晶显示指纹模块、按键的调试然后导入本设计的程序,测试指纹模块及按键与否工作,操作环节为:1)按下电源,电源批示灯点亮。2)按“*”键后屏幕显示“请按指纹”,指纹模块亮,将手指放到指纹头处就能够识别指纹了。3)若放入的指纹,指纹识别成功继电器动作,LED灯亮,门开锁,人员能够进入,按任意键返回初始界面,等待下一种人扫描指纹。若放入的指纹,指纹没有识别成功,继电器没有动作,LED灯不亮,将不能开锁,人员不能进入,按任意键返回初始界面,继续扫描指纹。4)按下A按键,输入6位密码,按下B按键,可删除输入的数字,按下D按键确认,密码输入对的可进入管理员模式。5)在管理员模式下,按数字键“1”进入录入指纹模式,指纹头亮起,这时就能够把手指放到指纹头上进行指纹的录入,录入指纹时需要录入2次指纹来完毕这个指纹的录入存储,指纹录入成功后按任意键返回到管理员界面,如需再录入指纹重复上面操作即可。6)按数字键“2”进入删除指纹模式,屏幕提示以下图所示信息,输入要删除指定的指纹号按“D”键确认,若指纹号输入错误可按“B”键删除,再重新输入要删除的指纹号即可。7)在非正常状况下(指纹模块不好用或紧急状况)可按数字键“3”进行开锁。8)按数字键“4”可进行管理员密码的修改。如果以上环节不符合规定则重新检查程序,直到实物能够正常工作。如满足上述规定时,实物就算调试完毕,达成设计规定。本章小结本章首先介绍了如何进行实物焊接,及焊接时的注意事项,焊接完毕后需要导入程序进行调试,本文随即介绍了烧写软件STC-ISP的使用方法,把程序导入单片机后进行调试。最后介绍如何调试液晶、指纹模块及其它硬件。

总结在没有做毕业设计前觉得毕业设计只是对所学知识的单纯总结,但是通过这次做毕业设计发现自己的看法有点太片面。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺。自己要学的东西还还比较欠缺。自己太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次毕业设计,我才明白学习是一种长久积累的过程,在以后工作、学习中都应当不停的学习,努力提高自己知识和综合素质。在设计过程中,通过查阅大量的有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少的艰辛,但收获同样巨大。在整个设计中我懂的了许多东西也培养了我独立工作的能力,树立了自己对工作的信心,相信会对今后的学习工作生活有非常重要的影响,而且大大提高了动手能力,是我充分体会到了在创作过程中探索的艰辛和喜悦。虽然这个设计做的也不太好但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终生受益。对我而言,知识上的收获重要,精神上的丰收更加可喜。让我知道了学无止境的道理。我们每一个人永远不能满足与现有的成就,人生就像在爬山,一座山峰的背面尚有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。

参考文献[1],etal.FingerprintRecognitioninLowQualityImages.Pattern,:1441-1460.[2]TIANJie,CHENXinjian,etal.Recentprogressin

fingerprint

recognition.ProgressinNaturalScience.,:231-240.[3]赵玉兰,姜春风,方修丰.指纹识别技术在煤矿门禁系统中的应用与实现[J].煤炭技术.:132-134.[4]赵晓玲.单片机在指纹保险柜中的应用[J].微计算机信息.:134-136.[5]刘小华,王燕生.指纹识别技术的发展[J].光学技术.1998:78-80.[6]郭天祥.新概念51单片机C语言教程[M].北京:电子工业出版社,:60-400.[7]张毅刚.单片机原理与应用[M].北京:高等教育出版社,:56-234.[8]赵建领.51单片机开发与应用技术详解[M].北京:电子工业出版社,:75-124.[9]陈光新.自动指纹识别技术及其应用[J].江苏船舶.:32-35.[10]KazuharuYamato,etal.ProblemsofFingerprintLookupDevicesandHowtoResolveThem.GazoDenshi,:382-391.[11]郑春来,韩团军,李鑫.编译软件Keil在单片机教学中的应用[J].高教论坛.:96-97.[12]Prata.S.CPrimerPlus[M].北京:人民邮电出版社,:74-99.[13]吴凌燕.基于Proteus的单片机仿真设计[J].仪表技术.:31-37.[14]唐钱辉,丁明亮.ProteusISIS和Keil在单片机教学中的应用[J].重庆电力高等专科学校学报.:46-49.[15]林三宝.高效焊接[M].北京:机械工业出版社,:45-78.

附录一

附录二#include<>#include<>#include""/**************************************************************Atthemostbasiclevel,acomputersimplyexecutesbinary-codedresults.Forageneral-purposeprogrammablecomputer,fournecessaryelementsarethememory,centralprocessingunit(CPU,orsimplyprocessor),anexternalprocessorbus,andaninput/outputsystemasindicatedin.Thememorystoresinstructionsanddata.TheCPUreadsandinterpretstheinstructions,readsthedatarequiredbyeachinstruction,executestheactionrequiredbytheinstruction,andstorestheresultsbackinmemory.OneoftheactionsthatisrequiredoftheCPUistoreaddatafromorwritedatatoanexternaldev

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论