基于单片机的智能密码锁设计与开发(2)(1)【任务书+开题报告+程序+论文】.rar
兰州石化职业技术大学成人教育与培训学院毕业设计I学位论文原创性声明学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包括任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。作者签名:2024 年 月 日学位论文版权使用授权书学位论文版权使用授权书本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权将本学位论文的全部或部分内容编入有关数据进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。作者签名:2024 年 月 日导师签名:2024 年 月 日兰州石化职业技术大学成人教育与培训学院毕业设计II摘摘 要要随着生活的变化,人们的安全意识也越来越强烈,如何保护自己的贵重物品也是显得更加的重要,基于此人们开始发明了机械式密码锁来保护大家的财产,但是这一类密码锁很容易出现损害,故障后无法打开,给人们带来了一定的烦恼,因此需要设计出一款智能,方便的密码锁。本文从实际出发,设计了一款基于单片机的智能密码锁。该系统由 STC89C52微控制器组成,还包括 4*4 矩阵键盘,蜂鸣器,继电器。4*4 键盘主要用于输入和修改密码。除此之外本系统还带有解锁指纹,鸣笛报警和复位电路。它是由一个构成微控制器最小系统的 STC89C52 微控制器组成,具有 6 位用户密码的设置和修改功能,且输入错误密码会进行错误警报。这套系统造价低廉,功能也比较实用,具有一定的实际应用价值。关键词:关键词:指纹锁;键盘扫描;液晶显示;报警电路 兰州石化职业技术大学成人教育与培训学院毕业设计IIIABSTRACTWith the change of life,peoples sense of safety is getting stronger and stronger,how to protect their valuables is also more important,based on this people began to invent mechanical combination locks to protect everyones property,but this type of combination lock is easy to damage,failure cannot be opened,to people bring certain troubles,so you need to design a smart,convenient combination lock.This paper designs a smart password lock based on a single-chip microcomputer.The system consists of STC89C52 microcontroller,which also includes 4*4 matrix keyboard,buzzer,and relay.The 4*4 keyboard is mainly used to enter and change passwords.In addition,the system also comes with an unlock fingerprint,horn alarm and reset circuit.It consists of an STC89C52 microcontroller that constitutes the smallest microcontroller system,with a 6-digit user password setting and modification function,and an error alarm will be sent when an incorrect password is entered.This system is low cost,the function is also more practical,and has certain practical application value.Key Words:Fingerprint lock;Keyboard scanning;LCD;Alarm circuit目目 录录摘 要.IABSTRACT.II1 绪论.11.1 研究目的及意义11.2 国内外研究概况21.3 主要内容22 系统总体设计方案.42.1 总体方案设计42.2 系统模块选择 42.2.1 单片机控制模块的选择42.2.2 按键的选择42.2.3 显示模块的选择53 系统硬件设计.63.1 单片机最小系统设计 63.1.1 外部晶振电路63.1.2 复位电路的设计73.2 液晶显示模块 73.3 按键控制部分电路 83.3.1 独立按键93.3.2 矩阵按键93.4 指纹模块103.4.1 指纹模块简介103.5 继电器模块 103.6 报警电路114 系统软件的设计.124.1 主程序流程图 124.2 键盘检测扫描程序134.3 LCD1602 显示流程图 134.4 指纹模块通信流程图 155 系统调试.165.1 功能模块的测试165.2 程序的烧写 175.3 蜂鸣器、继电器调试 185.4 按键的调试 186 总结与展望.19致 谢.20参考文献21附录.23兰州石化职业技术大学成人教育与培训学院毕业设计11 绪论绪论1.1 研究目的及意义研究目的及意义随着人们安全意识的增加,越来越多的人采购密码锁作为家庭必备的工具,密码锁的重要性也日益突出。但是原有的机械式密码锁较繁琐,且一旦忘记密码或丢失钥匙,将会非常的麻烦。因此越来越多的研究人员开始对智能化的密码锁产品进行研究,通过研究智能化的密码锁可以较好的满足人们的需求,且可以便利人们的生活。智能化密码锁最便利的技术就是生物识别技术,可以通过对人们的相关生物信息进行识别,从而自动的对密码锁进行控制。生物识别技术相对于传统方法而言,具有更保密的便携性和复制难度等优点,恰好满足了人们对安全性、准确性、速度、效率等方面的高要求。随着科技的社会的发展,人们对生命的安全感也有了更高的密码锁的安全性有待进一步提高,以满足人们的传统的电子密码锁是以容易遗忘和失窃的密码为最大缺点的单位数字密码设计的传统的密码锁具在安全技术上是达不到要求的。但近年来,随着生物技术的发展,指纹识别、掌纹识别等识别系统使用的活体技术越来越多。指纹识别系统由于其实现能力强、成本相对较低、安全性高等特点,与其他活体识别技术相比,被越来越多的人所采用。传统的密码锁具在指纹识别技术的结合下,安全性得到了提升,符合现在人们的使用需求。在安防技术领域,具有防盗报警功能的电子密码器控制系统正在逐步取代传统的机械密码器控制系统,克服了密码尺寸小、安全性能差等机械密码器控制方面的不足,使电子密码器控制系统无论从技术上还是从性能上都有了显著采用微处理器的智能密码控制系统是随着大规模集成电路技术的产生的,尤其是单片机的出现。除了传统的电子密码器控制系统的功能外,他们还引入了让密码控制系统更更可靠并广泛应用的智能管理和专家分析系统。另外,本毕业设计对单片机的硬件设计技术和软件编程知识的熟练掌握都有要求。以前所学的知识都是零散的,连各模块在系统中怎么配合都没想好。所以,毕业设计的过程也是一个知识的集成过程,是一个系统的过程,也是一个精细的过程,兰州石化职业技术大学成人教育与培训学院毕业设计2非常有助于知识体系的完善,对实际发展过程的认识。1.2 国内外研究概况国内外研究概况最早的电子密码锁早在 20 世纪 80 年代就在日本随着日本经济的复苏和电子工业的迅速发展,一些采用简单门电路设计的密码锁具已经出现。此类线路安全性差,容易发生断路现象。20 世纪 90 年代,微电子与通信技术在美国、意大利、德国、日本、加拿大、韩国、中国台湾、中国香港等地的进步,使密码锁具备了进一步促进密码锁实际应用的技术基础。20 世纪 90 年代初,我国对密码锁具开始了初步的探索。至今仍使用许多不同的电路,技术也相当先进,尽管在这一领域取得了重大的发展。电子密码锁技术已经发展到比较高的程度,现在已经很成熟了。早期开发的电子密码锁由于电子设备的限制,其种类受到限制,密闭性较差。电子密码锁随着集成电路大规模技术的发展,无论在国际上还是国内,电子密码锁的发展速度都非常快。20 世纪 70 年代,以美国耶鲁锁厂、欧洲西沙集团、联邦德国公司等为代表的国际锁具行业相继研制出十余种电子锁具,其中就包括电子卡锁。20 世纪 80 年代初,美国 LSI 公司研制出使用四位密码的 LS7220 专用安全锁集成电路。20 世纪 90 年代初,国外引进了密码为 12 位的 TWH9013 专用安全锁集成电路。在我国,有关电子锁的文章发表于 1978年广播杂志第 5 期第 3-25 页。此后,该杂志发表了多篇关于电子锁的文章,同时也刊载了电子、ElectronicTimes和硬件技术等杂志。天津大学在我国 1985 年开始实施专利法的时候,就申请了我国第一个电子锁实用新型专利。由于数字、文字、图形图像、人体生物特征和时间等元素都可以成为关键的电子信息,这些信息的组合可以使电子防盗锁获得高度的机密性。比如,为窃贼准备的“一尺”电子防盗锁,在一个戒备森严的金库里就需要资料。信息组合还能将电子防盗锁无限延伸。1.3 主要内容主要内容兰州石化职业技术大学成人教育与培训学院毕业设计3该项目的主要任务是设计一种多功能密码锁,详细介绍了软硬件设计,包括单片机核心芯片的选择、外围电路的连接以及芯片之间的电路连接。详细介绍了编程方法,绘制了各个程序的流程图,并编译了能够实现系统所有功能的程序源代码。根据项目要求,设计出的密码锁以满足市场需求。具体章节如下:第一部分为绪论,阐述了课题的来源、研究意义、系统研究和应用综述,并介绍了本文的主要研究内容。本文最主要的部分就是二三两个部分的设计,其中包括密码锁的硬件设计,包括密码锁中的指纹,按键等设计;以及密码锁的软件部分的设计,用于配合密码锁的硬件实现智能控制。第四部分是硬件系统的调试,包括硬件调试和软件调试。第五部分是结论。兰州石化职业技术大学成人教育与培训学院毕业设计42 系统总体设计方案系统总体设计方案2.1 总体方案设计总体方案设计密码锁主要由矩阵 Matrix 键盘、单片机、外部硬件等组成。矩阵键盘是一种按键键盘,用于输入数字密码,实现各种功能。实际使用时,只需将微控制器的负载换成电子密码锁的电磁铁闭合线圈即可。当然,控密码锁制闭合线圈也可以采用继电器的常开触点,控制器芯片发送每个解锁操作的驱动电流值和电磁致动器,处理它们的状态信息。2.2 系统模块选择系统模块选择2.2.1 单片机控制模块的选择单片机控制模块的选择方案一:采用 FPGA 进行控制,FPGA 具有较好的逻辑处理功能,且可以较好的实现相关逻辑控制,其外设资源丰富,但是 FPGA 相对价格贵,且不适合初学者学习。方案二:具有强大数学运算功能的单片机为控制核心。在程序中互相调用,在实际应用中方便灵活的稳定的性能。单片机具有上手快,C 语言编程容易上手等一些列的有点,且其可以满足本次的密码锁控制系统。基于以上分析,采用单片机控制实现系统功能更也更灵活,故建议方案 2。2.2.2 按键的选择按键的选择方案一:选择独立按键进行控制,由于独立按键编程简单,每个 IO 口放置一个独立按键,简单明了,但是如果需要按键较多时,这种按键方式比较浪费资源。方案二:采用矩阵键盘作为按键模块,所需要的 IO 资源相对较少,系统结构变得简单,可以减少系统的体积,易于实施,由于本次设计所需的按键较多,综上所述,采用方案二。兰州石化职业技术大学成人教育与培训学院毕业设计52.2.3 显示模块的选择显示模块的选择方案一:采用 LCD1602 进行显示所有需要显示的变量,1602 具有中等数量的显示资源,可以显示 16*2 个字符,且编程比较容易,比较适合初次进行系统设计的相关学者。方案二:采用 LCD12864 进行显示所需要显示的变量,12864 具有较多的显示资源,但是其编程相对复杂,且价格也相关贵,因此根据上述要求,不建议选择这一显示器。综上所述,显示模块选择方案一。具体的硬件系统设计框图如图 2-1 所示,其中包括指纹输入,单片机最小系统,开锁电路,报警电路,键盘接口电路等等。图 2-1 硬件系统设计框图STC89C52指纹输入晶振电路复位电路键盘接口电路开锁电路报警电路兰州石化职业技术大学成人教育与培训学院毕业设计63 系统硬件设计系统硬件设计3.1 单片机最小系统设计单片机最小系统设计本文使用的 STC89C52 微控制器主要包括控制器、晶体振荡器电路和微控制器的复位电路。微控制器的控制器引脚如图 3-1 所示。借助先进的工业制造技术,将微控制器集成到具有处理、存储、输入和输出信号功能的微芯片中,形成了一个紧凑、完整的计算机硬件系统,可以在其控制下快速有效地完成程序员指定的任务和独立程序。因此,微控制器可以被视为具有计算机所有功能的小型计算机。微控制器的类型多种多样,其功能差异很大,尤其是在软件和硬件功能方面,具有不同的技术特征。为了合理使用某种类型的微控制器,用户必须知道外部尺寸、性能和特性是否符合应用系统所需的功能特性。在控制系统的早期开发中,大多数都使用电子或数字电路,这使得整个控制系统的结构非常复杂。然而,现在使用微控制器直接降低了电路的复杂性。STC89C52具有稳定强大的性能,低能耗,并且已经编写了可以自动存储的程序。同时,它还有一个内部数据技术库,其中包含大约 8000 个数据。这种类型的数据库解决了许多控制应用程序解决方案。成本效益非常高,而且不容易出现故障。它主要用于工业嵌入式系统。STC89C52 的主要特点如下:(1)与传统的 8051 微控制器相比,它的功能大大增强,不仅使代码兼容,而且增加了机器周期。(2)工作电压:5.5V3.3V。(3)工作频率范围:0-48MHz。(4)最大程序内存空间为 8K 字节。(5)STC89C52 集成了 512 字节的 RAM。(6)通用 I/O 连接(32):P1/P2/P3 内置上拉或下拉电阻器;应将上拉电阻器添加到 P0 端口。(7)ISP(在线编程)/IAP(可编程应用程序):程序可以通过串行连接快速轻松地下载,无需特殊下载。(8)具有 EEPROM 功能。兰州石化职业技术大学成人教育与培训学院毕业设计7(9)具有看门狗功能。(10)总共有三个 16 位定时器/计数器。即定时器 T0、T1、T2。(11)4 个通道的外部中断,(12)工作温度范围:-40+85。(13)PDIP 封装。STC89C52RC 微控制器的工作模式:断电模式:典型功能消耗0.1A空闲模式:典型的功耗为 2mA。正常工作模式:典型功耗为 4Ma7mA。它有一个断电模式。引脚图如图 3.1 所示。图 3-1 单片机管脚图3.1.1 外部晶振电路外部晶振电路系统的时钟源由 11.0592M 晶体振荡器提供。外置晶振 XTAL 及 C1、C2设计。晶体振荡器与两个电容器的一头相连,另一头与地面相连。C1、C2 与晶体振荡器构成并联谐振回路。最后,将 XTAL1 和 XTAL2 引脚连接到微控制器上,提供一个统一的时序来执行所有微控制器的指令。C1 和 C2 在使时钟更加稳定的同时,选择了 30PF 进行微调。如图 3-2 所示,晶体振荡器电路的具体连接方式。兰州石化职业技术大学成人教育与培训学院毕业设计8图 3-2 晶振电路原理图3.1.2 复位电路的设计复位电路的设计复位电路的主要任务是通过按下电路上的安装按钮来配置系统,并将内部数据从系统恢复到初始值。此外,当激活控制器时,新设置可以根据系统要求自动启动设置。如果电路在活动状态下受到几次信号中断的干扰,程序将运行并发出不正确的命令,从而导致混乱。此时,您可以按下重置按钮重新启动控制器。重新启动系统后,将删除所有以前的数据,以确保系统内存。当“重置”按钮被激活时,重置引脚将成为高级操作,在此期间,微型控制器完成了重新操作。此设计中电路重置由 R2,C4 连接到 RST 引脚组成。这种方法不仅非常方便,而且成本低廉。具体实现如图 3.3 所示。图 3-3 复位模块原理图3.2 液晶显示模块液晶显示模块LCD 是一种电子发光显示装置,由有机薄膜组成多层结构产生电发光,制造容易,驱动电压低,这些基本特征使 LCD 在平面显示器方面非常突出,可以满足消费者对显示技术的需求。12XTAL30pFC130pFC2GND10uFC-RST10KR1VCCGNDResX1X2兰州石化职业技术大学成人教育与培训学院毕业设计9本次设计选用的显示模块为 1602 字符的液晶显示模块,1602 字符液晶显示模块为点阵液晶显示模块。不仅结构简单,而且显示内容丰富,编码后图像质量高。1602字符 LCD 模块的突出优点是其数字接口、紧凑的尺寸、重量轻和低能耗。显示容量为 162,芯片工作电压为 4.5-5.5V,工作电流为 2.0mA(5.0V)。电路图如图 3-4所示。图3-4 1602液晶显示电路原理图3.3 按键控制部分电路按键控制部分电路本次设计的智能密码锁是在传统的密码锁的基础上进一步升华,因此密码的输出功能也是本次设计的必须设计功能之一。本次设计主要采用微动开关作为密码的输出功能按键以及处理指纹输入时的一些必须功能。因此本次设计中既需要安排几个按键用于处理按键,又需要安排一系列按键给密码来使用。微动开关在使用过程中主要通过检测电平可以确定按键是处于关闭状态,还是处于开启状态。当按下微动开关时此时按键接通,单片机输入口检测到为低电平,此时单片机接收到信号后进行后续的处理,当按键处于高电平时,此时按键没有被按下,无需进一步处理。其中微动开关实物图如图 3-5 所示。图3-5 微动开关实物图兰州石化职业技术大学成人教育与培训学院毕业设计10在微动开关被按下的过程中,此时需要注意到抖动的一个现象,这是一种需要注意的问题,如果按键状态被按下,此时按键是有效果的,但是由于人的手或者按键的抖动性,按键按下不会立刻接通,按键释放也不会立刻断开,会有抖动或恢复期。因此为了防止误判,需要判断到按下信号后,延时一定的时间再次判断,这种方式叫做软件延时消除抖动。这一设计是为了消除干扰因素而采用的软件延迟抖动。如图 3-6 所示的电平在按键时的抖动状态。图3-6 按键闭合及断开前后的电压按键设计分为独立型和矩阵型两种。独立型是用来手动复位电路和和指纹录入删除等,而矩阵形则是用来让用户输入密码的,两者之间相互都需要应用在本次控制中。3.3.1 独立按键独立按键各各占一个引脚对引脚电平的检测,可以确定按键的状态(state)。这种设计方式要求每个键都要占用一个微控制器的引脚,而在这种复位电路中使用的就是这种设计方式。需要说明的是,虽然微动开关有 4 个脚,但在实际原理图设计过程中,只需要将其中任何一个脚上下连接,就能让开关工作正常。因此,从矩阵键盘电路可以看出,原理图库中的开关原理图只有两个引脚。3.3.2 矩阵按键矩阵按键由于在本次设计,数字和字母按键的数量都非常多,起码需要 13 个按键兰州石化职业技术大学成人教育与培训学院毕业设计11才能完成。也就是说,在微控制器上需要 13 个引脚才能使用独立键,这就造成了大量 I/O 资源的浪费。其它模块也需要适配 I/O,这可能造成 I/O 不够用。所以针对这一问题,采用了 4*4 矩阵键盘的设计方式。矩阵按键的与单片机的连接方式如图 3-7 所示。图3-7 矩阵式键盘电路图3.4 指纹模块指纹模块3.4.1 指纹模块简介指纹模块简介该设计采用 YX66318-AS608 指纹模块,通过串口与处理器沟通。如表 3-1所示的接口引脚功能。表 3-1 指纹模块引脚定义序号名称说明1Vi模块电源正输入端。2Ti串行数据输出。TTL 逻辑电平3Rx串行数据输入。TTL 逻辑电平4GND信号地。内部与电源地连接5WAK感应信号输出,默认高电平有效兰州石化职业技术大学成人教育与培训学院毕业设计126Vt触摸感应电源输入端,.3v 供电7U+USB D+8U-USB D-指纹模块的硬件接口电路如图 3-8 所示。图 3-8 指纹模块接口图3.5 继电器模块继电器模块此设计以继电器闭合方式模拟电子锁的切换效果,并以 HUB 端子作为外接延伸介面,将现实中的电子锁装置连结起来,让设计更具真实感。但出于设计费用的考虑,实际演示中还是采用了继电器仿真。如图 3-9 所示的具体硬件设计。兰州石化职业技术大学成人教育与培训学院毕业设计13图 3-9 继电器模拟开关电路3.6 报警电路报警电路这一设计采用了作为报警电路的是蜂鸣器电路。当口令输入错误的数量超过设定值时,就会发出报警信息来启用鸣笛装置。蜂鸣器的驱动方式采用的是传统的 PNP 三极管驱动。驱动原理与三极管驱动继电器的原理一致,此处不再赘述。如图 3-10 所示的具体硬件电路设计。图 3-10 报警电路图兰州石化职业技术大学成人教育与培训学院毕业设计144 系统软件的设计系统软件的设计每个设计的系统要想达到完整的状态都需要进行软件的设计,软件设计就像是系统的控制器而硬件设计机械部件,只有进行程序的设计系统才能发出控制硬件进行工作的执行指令,才能使得硬件系统达到本次设计需要实现的目标。在智能密码锁设计中,控制器作为主控制器,主要用于 LCD1602 主要单元发送命令和写入数据,同时接受从这些单元收集的数据。因此,软件应用程序的设计主要针对软件和主要模块的开发。开发方法是完善电路中的硬件设计功能,抽象到程序逻辑,并将其填充到功能中,因此,这种设计通常需要通过采用流程图的方式来组织程序的整个执行过程和逻辑关系。本次设计的软件系统的编程语言主要是 C 语言,具有以下优点:结构简洁紧凑;灵活方便;程序自由编写;高级语言与低级语言结合。丰富运算符,完成高难度运算。程序效率更高。表达方式灵活实用。本设计所采用的软件开发环境是 Keil5,编程语言是标准 C51 代码。此设计中有许多功能模块,因此,在开发过程中需要依赖多文件方法,包括创建多个源文件和标题文件,并将这些源文件添加到单个项目文件中。键入代码后,它将链接、分组并生成一个带有二进制后缀的可执行文件,文件自动生成 hex文件并下载到控制器以执行。4.1 主程序流程图主程序流程图单片机设计的代码是通过系统学习的 C 语言实现的。本文将不详细描述C 语言的设计过程。系统操作需要编写完整的程序。只有将程序下载到系统中,系统才能读取并执行每个执行命令,因此每个设计的电路都可以完成其工作。因此,选择一个稳定可靠的程序来编写软件可以最大限度地提高每个电路的功能,因此软件设计非常关键。我们经过对我们设计的系统功能进行分析和实验后,制定的主程序流程图,如图 4-1 所示;兰州石化职业技术大学成人教育与培训学院毕业设计15程序执行过程如下:该程序将初始化液晶显示器、键盘扫描、指纹模块等模块的硬件功能。然后,它检测是否按下了某个键。如果是,它将执行关键程序。如果没有,它将确定手指是否被按压在指纹传感器的采集窗口上。如果有指纹,它会执行指纹解锁程序。如果输入的密码不正确,密码锁将报告一个错误。根据实际情况调用相应的函数。各模块初始化开始是否有按键按下?是否有指纹按下?执行按键程序执行指纹开锁程序输入密码错误?报错YYYNNN结束N图 4-1 主程序流程图4.2 键盘检测扫描程序键盘检测扫描程序键盘模组的主要任务是与使用者实时互动,并以使用者灵活的输入为基础,对程式的执行过程进行控制。单片机的工作是确认是否按了扫描键、确认按等兰州石化职业技术大学成人教育与培训学院毕业设计16按键的作用和执行功能。接通电源和微控制器系统,接着启动扫描工作。如有按键按下,此时确定按下的是什么按键,进行扫描,扫描后算出数值,保存即可。具体的按键检测过程见图 4-2。4.3 LCD1602 显示流程图显示流程图显示模块实时完成与用户的实时相互作用。各个阶段的结果动态显示在屏幕上。用户以显示的信息为基础,决定下次执行任务,显示模块的顺序。如图4-3 所示。等待按键被按下检测到按键被按下延时消除抖动对按键进行编码编码转义为按键值是否有按键按下?NY图 4-2 键盘检测流程图兰州石化职业技术大学成人教育与培训学院毕业设计17图 4-3 显示模块流程图4.4 指纹模块通信流程图指纹模块通信流程图指纹模块与个人计算机之间的通信通过串行接口进行,该接口包括用于串行通信的数据发送和接收,具体流程如图 4-4 所示。图 4-4 串口通信流程图兰州石化职业技术大学成人教育与培训学院毕业设计185 系统调试系统调试本章以完成硬体与软体设计为主,要保证原理图没有问题,因为系统的原理图设计出来以后没有模拟调试的功能,因此需要对示意图中各模块进行反复核对,最后将 PCB 文件送到厂家制作块板,然后开始对各硬件功能模块的电路是否能正常运行进行焊接组件的测试。软件部分的代码主要是运行调试按钮,观察运行效果是否达到设计要求,如果检测后能够正常运行,这说明软件调试没有问题。5.1 功能模块的测试功能模块的测试1、检查元器件质量按照电路图买元件后,先检查买元件的好坏,再按照检测方法对各元件进行检测。另外,对示意图是否相符也需要仔细检查。检查完毕后才能进行零件及焊件的装填,以防不正确的焊件造成不方便校准的情况发生。在购买系统硬件元件的时候,需要根据电路原理图去购买,购买回来后,需要对每个元件进行测试,确定是否能够使用,每个元件都有相关的检测方法,这个过程不能忽略,必须仔细一个一个元件完成检测。检测完成后,才可以按照原理图进行元件焊接,避免焊接错误,后续出现修改困难的情况。2、放置和焊接各种构件各部位按原理图摆放在摆放的过程中,要先将低矮的部分摆放焊接好,再将高矮的部分摆放焊接好。尤其是对易损坏的部位,要进行后焊处理。采用焊接一体式芯片时,连续焊接时间不应超过 10 秒,安装芯片时应注意把握好方向,预防出现引脚焊接错误等问题。如下图所示为整体的控制原理图,通过对这个原理图进行绘制 PCB,然后进一步焊接原理图或 PCB 上的额器件,在焊接好各种器件后,然后进行各个模块的测试,在焊接过程中,一定要按照器件的引脚以及焊接流程进行焊接,避免出现虚焊、漏焊等一些列的情况,在仔细校对焊接后的板子后,进行单片机最小系统的测试,通过上电,观察单片机兰州石化职业技术大学成人教育与培训学院毕业设计19的晶振能否正常的输出晶振波形,来评估这一单片机能否正常运行,本次设计中的单片机是能够正常运行的,在测试万单片机最小系统后,需要对蜂鸣器模块,继电器模块,按键模块等进一步测试,接下来进行详细介绍。图 5-1 原理图5.2 程序的调试程序的调试KEIL 是一款微处理器编程软件,可与 80C51 内核兼容,并通过标准集成开发工具得到技术支持。它是一个综合开发过程,具有强大的功能,主要包含管理、编译、链接、对象代码生成、硬件模拟和软件仿真。特别是 c 语言编译工具的出现,从而获得更准确、更有效的代码。同时在选项上提供额外的灵活性。本次系统设计的软件使用的是 KEIL 这款功能强大的编程软件,经过不断的改版,KEIL 系统的功能和界面都进行了大幅度的优化和改善。KEIL 这款软件在系统调试这方面是非常有用的,能够大幅度的减少我们的设计时间,使我们能够设计出更多兰州石化职业技术大学成人教育与培训学院毕业设计20的产品。在焊接好单片机硬件后,先进性程序的调试,采用单步调试,在线仿真等KEIL 自带的功能进行相应的调试,而后根据问题进行不断优化程序。在优化好程序后进行下载软件。KEIL 软件界面如图:图 5.2 KEIL软件界面测试程序已经写好了,进行程序下载,图 5.3 为单片机程序下载图。图 5.3 单片机程序下载图兰州石化职业技术大学成人教育与培训学院毕业设计21程序文件的生成主要生成*hex 文件。该 hex 文件为十六进制文件,点击下载后在开发板上按电源开通。开机瞬间即可完成单片机 hex 文件的下载。这个时间可能就是几秒钟,而越小的文件所需要耗费的时间就越短。5.3 蜂鸣器、继电器调试蜂鸣器、继电器调试在运行设备测试代码编写完成后,下载到单片机的控制器中上。接通电源后,在看到下载成果后进行验证功能。为了验证这是一个程序问题,你首先需要将程序的引脚定义,然后下载到单片机中。当单片机控制的蜂鸣器引脚能发出响声,那么说明蜂鸣器并无问题。实验中对蜂鸣器测试无法正常驱动,此时对继电器调试硬件原理图进行检查,不存在任何问题,推测可能是基础电极电阻值的选择上出现了问题。移除电阻器(因为这个设计中的电阻器都安装在焊盘上,所以移除起来比较方便),更换电阻器,并重新焊接到合适的电阻值,然后把程序下载下来就可以了,然后进行再一次检测,该蜂鸣装置运转正常。接下来,开始对类似于三极管驱动继电器与三极管驱动蜂鸣器原理图一致,可以采取类似的手段进行调试。最后经过测试三极管能够正常驱动继电器。5.5 按键的调试按键的调试密钥调试主要包括两部分:密钥扫描程序和密码编码程序。阮籍设计章节介绍了软件设计部分,并解释了关键代码。这种设计主要使用按键来查看 IO端口的级别是否发生了变化。经过测试,每个按钮都可以正常工作。5.3 实物调试实物调试首先启动,可以输入密码进行开锁,其中密码为 8 个 0.。具体的操作流程图如下所示。兰州石化职业技术大学成人教育与培训学院毕业设计22图 5.4 设备上电图此时需要输出密码,具体的实验图如下图所示。图 5.5 输入密码图密码正确后,进行开锁,具体的电路如下图所示兰州石化职业技术大学成人教育与培训学院毕业设计23图 5.6 密码正确开锁当密码录入错误时,显示 error,具体如下图所示。兰州石化职业技术大学成人教育与培训学院毕业设计24图 5.7 密码错误无法开锁同时本文所设计的智能密码锁可以对指纹进行录入并进行识别开锁,通过独立按键录入指纹,具体的电路如下图所示。兰州石化职业技术大学成人教育与培训学院毕业设计25图 5.7 录入指纹同时可以通过按键进行指纹的识别,具体如下图所示兰州石化职业技术大学成人教育与培训学院毕业设计26图 5.8 识别指纹兰州石化职业技术大学成人教育与培训学院毕业设计276 总结与展望总结与展望经过两个月的研究和实践,该设计成功实现了提案报告中的所有功能,使系统稳定正常运行。通过选择相应的微控制器系统,学习如何使用PROTEL99SE,并开始在相应的组件库中搜索相应的组件。逐一绘制传感器信号采集电路、主控制器微控制器和电源模块模型。当遇到在原理图封装库中找不到的相应原理图设计时,请设计自己的原理图电路。设计好原理电路后,模拟电路设计并进行程序开发和编写。开发完成后,使用 KEIL51 开发微控制器程序,下载仿真软件,进行调试,完成设计。然而,还有许多领域需要改进。例如,在设计之初,计划在面板中引入除电源线之外的所有其他电路,用于整个 PCB。当设计的模块不需要杜邦电缆时,它会将一根电缆直接插入 PCB 面板,使其成为一个整体。然而,在实际开发过程中出现了两个主要问题。(1)LCD 1602 的接口出现意外反转。如果显示模块正常插入开发板,那么大的 LCD 屏幕覆盖了大部分面板,包括矩阵按钮,这会影响后续操作。使用杜邦电缆连接无法解决这个问题,使面板显得有些杂乱。(2)电源接口采用直流型插座,但焊接后发现电源插座无法正常供电。尽管万用表是用来测试的,但它没有检测到任何缺陷只有 USB 适配器电缆才能用于后续的电源供应。幸运的是,当时额外延长了一排引脚,否则电源会出现异常,整个电路板都会被丢弃。因此,通过这次设计,能深刻地理解在实际单片机系统开发过程中,对于可能出现的问题,每一个设计都应该考虑,并且应该有替代设计。如果能按顺序进行设计,除了解决上述问题外,应重点考虑这种设计的开发板的性能和易用性,使其更加完美。兰州石化职业技术大学成人教育与培训学院毕业设计2328致致 谢谢这个设计从选题到设计都是在导师的帮助下顺利完成的,导师很有帮助。没有教练的不断指导,我无法在这个时候完成智能密码锁的控制。感谢老师对我学习的帮助和指导。如果没有他们的教导和指导,我就不会在这个时候长大或成功完成基于单片机的智能密码锁的设计。多亏了室友的帮助,在过去的几年里,我在生活和学习中得到了很大的帮助和支持。感谢我的母校为我创造了如此良好的学习氛围,使我能够在这里无忧无虑地学习和生活。再次感谢我的家人无私的关怀和指导。没有你,我就无法在这个时候成功完成我的研究和基于单片机的智能密码锁的设计。兰州石化职业技术大学成人教育与培训学院毕业设计29参考文献参考文献1 纪贤璋,蔡成龙.基于单片机的指纹密码锁J.软件,2022,43(08):156-159.2丁 文 婷.租 户 的 门 锁 谁 做 主 N.经 济 观 察 报,2022-08-01(016).DOI:10.28421/ki.njjgc.2022.001221.3 胡伟霞,杨记鑫,陈会丽.基于 STM32F103C8T6 单片机的智能密码锁的设计 J.电 子 设 计 工 程,2022,30(13):180-183+188.DOI:10.14022/j.issn 1674-6236.2022.13.038.4 李长灏,杨帆,马如龙,刘航,李伟,周慧.基于 51 单片机的电子智能密码锁J.电脑知识与技术,2022,18(12):81-83.DOI:10.14004/ki.ckt.2022.0648.5 中共湖南省长沙县委改革办.湖南长沙县:智慧医养“三步法”解锁“居家养老”密码N.中国经济导报,2022-04-09(004).DOI:10.28095/ki.ncjjd.2022.000526.6 席 国 栋,林 路 洋.基 于“互 联 网+”的 智 能 门 锁 设 计 J.无 线 互 联 科技,2022,19(06):80-81.7 燕 秀 秀.智 能 密 码 锁 的 软 件 设 计 与 开 发 J.山 西 电 子 技 术,2022(01):69-71+75.8 杨建松,孙朝伟,井新宇.一种 FPGA 密码锁的设计与实现J.电子世界,2022(01):170-171.DOI:10.19353/ki.dzsj.2022.01.079.9.智能手机可以“识别”你房门钥匙的声音J.时代英语(高二),2021(S1):10-11.10 田亚立,梁波.基于单片机的语音识别智能家居密码锁控制系统设计J.电子技术与软件工程,2021(22):78-80.11 王乐乐,李斌,曹骥龙,夏茳南,周欣欣.基于 STC89C51 的零接触智能密码锁的设计与实现J.无线互联科技,2021,18(19):42-43.12 师代.基于九宫格密码的智能手机隐式身份认证算法研究D.北京交通大学,2021.DOI:10.26944/ki.gbfju.2021.001758.13 孙 鹏 宇,魏 立 明.基 于 MCU 的 智 能 密 码 锁 控 制 系 统 J.北 方 建筑,2021,6(02):53-56.14 张狄.基于 STM32 单片机的智能锁设计J.光源与照明,2021(02):85-86.兰州石化职业技术大学成人教育与培训学院毕业设计3015 伍思源,马远佳,罗佩.免通讯与低功耗的共享单车密码锁J.电子世界,2021(02):105-107.DOI:10.19353/ki.dzsj.2021.02.047.16 刘洋洋,郑翊.基于 Andriod 平台的记事本设计J.电脑编程技巧与维护,2020(12):66-68.DOI:10.16184/prg.2020.12.025.17 谭 虹.一 种 智 能 指 纹 密 码 锁 系 统 的 设 计 与 实 现 J.软 件 工程,2020,23(11):34-36+20.DO
收藏
- 资源描述:
-
兰州石化职业技术大学成人教育与培训学院毕业设计I学位论文原创性声明学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包括任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。作者签名:2024 年 月 日学位论文版权使用授权书学位论文版权使用授权书本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权将本学位论文的全部或部分内容编入有关数据进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。作者签名:2024 年 月 日导师签名:2024 年 月 日兰州石化职业技术大学成人教育与培训学院毕业设计II摘摘 要要随着生活的变化,人们的安全意识也越来越强烈,如何保护自己的贵重物品也是显得更加的重要,基于此人们开始发明了机械式密码锁来保护大家的财产,但是这一类密码锁很容易出现损害,故障后无法打开,给人们带来了一定的烦恼,因此需要设计出一款智能,方便的密码锁。本文从实际出发,设计了一款基于单片机的智能密码锁。该系统由 STC89C52微控制器组成,还包括 4*4 矩阵键盘,蜂鸣器,继电器。4*4 键盘主要用于输入和修改密码。除此之外本系统还带有解锁指纹,鸣笛报警和复位电路。它是由一个构成微控制器最小系统的 STC89C52 微控制器组成,具有 6 位用户密码的设置和修改功能,且输入错误密码会进行错误警报。这套系统造价低廉,功能也比较实用,具有一定的实际应用价值。关键词:关键词:指纹锁;键盘扫描;液晶显示;报警电路 兰州石化职业技术大学成人教育与培训学院毕业设计IIIABSTRACTWith the change of life,peoples sense of safety is getting stronger and stronger,how to protect their valuables is also more important,based on this people began to invent mechanical combination locks to protect everyones property,but this type of combination lock is easy to damage,failure cannot be opened,to people bring certain troubles,so you need to design a smart,convenient combination lock.This paper designs a smart password lock based on a single-chip microcomputer.The system consists of STC89C52 microcontroller,which also includes 4*4 matrix keyboard,buzzer,and relay.The 4*4 keyboard is mainly used to enter and change passwords.In addition,the system also comes with an unlock fingerprint,horn alarm and reset circuit.It consists of an STC89C52 microcontroller that constitutes the smallest microcontroller system,with a 6-digit user password setting and modification function,and an error alarm will be sent when an incorrect password is entered.This system is low cost,the function is also more practical,and has certain practical application value.Key Words:Fingerprint lock;Keyboard scanning;LCD;Alarm circuit目目 录录摘 要.IABSTRACT.II1 绪论.11.1 研究目的及意义11.2 国内外研究概况21.3 主要内容22 系统总体设计方案.42.1 总体方案设计42.2 系统模块选择 42.2.1 单片机控制模块的选择42.2.2 按键的选择42.2.3 显示模块的选择53 系统硬件设计.63.1 单片机最小系统设计 63.1.1 外部晶振电路63.1.2 复位电路的设计73.2 液晶显示模块 73.3 按键控制部分电路 83.3.1 独立按键93.3.2 矩阵按键93.4 指纹模块103.4.1 指纹模块简介103.5 继电器模块 103.6 报警电路114 系统软件的设计.124.1 主程序流程图 124.2 键盘检测扫描程序134.3 LCD1602 显示流程图 134.4 指纹模块通信流程图 155 系统调试.165.1 功能模块的测试165.2 程序的烧写 175.3 蜂鸣器、继电器调试 185.4 按键的调试 186 总结与展望.19致 谢.20参考文献21附录.23兰州石化职业技术大学成人教育与培训学院毕业设计11 绪论绪论1.1 研究目的及意义研究目的及意义随着人们安全意识的增加,越来越多的人采购密码锁作为家庭必备的工具,密码锁的重要性也日益突出。但是原有的机械式密码锁较繁琐,且一旦忘记密码或丢失钥匙,将会非常的麻烦。因此越来越多的研究人员开始对智能化的密码锁产品进行研究,通过研究智能化的密码锁可以较好的满足人们的需求,且可以便利人们的生活。智能化密码锁最便利的技术就是生物识别技术,可以通过对人们的相关生物信息进行识别,从而自动的对密码锁进行控制。生物识别技术相对于传统方法而言,具有更保密的便携性和复制难度等优点,恰好满足了人们对安全性、准确性、速度、效率等方面的高要求。随着科技的社会的发展,人们对生命的安全感也有了更高的密码锁的安全性有待进一步提高,以满足人们的传统的电子密码锁是以容易遗忘和失窃的密码为最大缺点的单位数字密码设计的传统的密码锁具在安全技术上是达不到要求的。但近年来,随着生物技术的发展,指纹识别、掌纹识别等识别系统使用的活体技术越来越多。指纹识别系统由于其实现能力强、成本相对较低、安全性高等特点,与其他活体识别技术相比,被越来越多的人所采用。传统的密码锁具在指纹识别技术的结合下,安全性得到了提升,符合现在人们的使用需求。在安防技术领域,具有防盗报警功能的电子密码器控制系统正在逐步取代传统的机械密码器控制系统,克服了密码尺寸小、安全性能差等机械密码器控制方面的不足,使电子密码器控制系统无论从技术上还是从性能上都有了显著采用微处理器的智能密码控制系统是随着大规模集成电路技术的产生的,尤其是单片机的出现。除了传统的电子密码器控制系统的功能外,他们还引入了让密码控制系统更更可靠并广泛应用的智能管理和专家分析系统。另外,本毕业设计对单片机的硬件设计技术和软件编程知识的熟练掌握都有要求。以前所学的知识都是零散的,连各模块在系统中怎么配合都没想好。所以,毕业设计的过程也是一个知识的集成过程,是一个系统的过程,也是一个精细的过程,兰州石化职业技术大学成人教育与培训学院毕业设计2非常有助于知识体系的完善,对实际发展过程的认识。1.2 国内外研究概况国内外研究概况最早的电子密码锁早在 20 世纪 80 年代就在日本随着日本经济的复苏和电子工业的迅速发展,一些采用简单门电路设计的密码锁具已经出现。此类线路安全性差,容易发生断路现象。20 世纪 90 年代,微电子与通信技术在美国、意大利、德国、日本、加拿大、韩国、中国台湾、中国香港等地的进步,使密码锁具备了进一步促进密码锁实际应用的技术基础。20 世纪 90 年代初,我国对密码锁具开始了初步的探索。至今仍使用许多不同的电路,技术也相当先进,尽管在这一领域取得了重大的发展。电子密码锁技术已经发展到比较高的程度,现在已经很成熟了。早期开发的电子密码锁由于电子设备的限制,其种类受到限制,密闭性较差。电子密码锁随着集成电路大规模技术的发展,无论在国际上还是国内,电子密码锁的发展速度都非常快。20 世纪 70 年代,以美国耶鲁锁厂、欧洲西沙集团、联邦德国公司等为代表的国际锁具行业相继研制出十余种电子锁具,其中就包括电子卡锁。20 世纪 80 年代初,美国 LSI 公司研制出使用四位密码的 LS7220 专用安全锁集成电路。20 世纪 90 年代初,国外引进了密码为 12 位的 TWH9013 专用安全锁集成电路。在我国,有关电子锁的文章发表于 1978年广播杂志第 5 期第 3-25 页。此后,该杂志发表了多篇关于电子锁的文章,同时也刊载了电子、ElectronicTimes和硬件技术等杂志。天津大学在我国 1985 年开始实施专利法的时候,就申请了我国第一个电子锁实用新型专利。由于数字、文字、图形图像、人体生物特征和时间等元素都可以成为关键的电子信息,这些信息的组合可以使电子防盗锁获得高度的机密性。比如,为窃贼准备的“一尺”电子防盗锁,在一个戒备森严的金库里就需要资料。信息组合还能将电子防盗锁无限延伸。1.3 主要内容主要内容兰州石化职业技术大学成人教育与培训学院毕业设计3该项目的主要任务是设计一种多功能密码锁,详细介绍了软硬件设计,包括单片机核心芯片的选择、外围电路的连接以及芯片之间的电路连接。详细介绍了编程方法,绘制了各个程序的流程图,并编译了能够实现系统所有功能的程序源代码。根据项目要求,设计出的密码锁以满足市场需求。具体章节如下:第一部分为绪论,阐述了课题的来源、研究意义、系统研究和应用综述,并介绍了本文的主要研究内容。本文最主要的部分就是二三两个部分的设计,其中包括密码锁的硬件设计,包括密码锁中的指纹,按键等设计;以及密码锁的软件部分的设计,用于配合密码锁的硬件实现智能控制。第四部分是硬件系统的调试,包括硬件调试和软件调试。第五部分是结论。兰州石化职业技术大学成人教育与培训学院毕业设计42 系统总体设计方案系统总体设计方案2.1 总体方案设计总体方案设计密码锁主要由矩阵 Matrix 键盘、单片机、外部硬件等组成。矩阵键盘是一种按键键盘,用于输入数字密码,实现各种功能。实际使用时,只需将微控制器的负载换成电子密码锁的电磁铁闭合线圈即可。当然,控密码锁制闭合线圈也可以采用继电器的常开触点,控制器芯片发送每个解锁操作的驱动电流值和电磁致动器,处理它们的状态信息。2.2 系统模块选择系统模块选择2.2.1 单片机控制模块的选择单片机控制模块的选择方案一:采用 FPGA 进行控制,FPGA 具有较好的逻辑处理功能,且可以较好的实现相关逻辑控制,其外设资源丰富,但是 FPGA 相对价格贵,且不适合初学者学习。方案二:具有强大数学运算功能的单片机为控制核心。在程序中互相调用,在实际应用中方便灵活的稳定的性能。单片机具有上手快,C 语言编程容易上手等一些列的有点,且其可以满足本次的密码锁控制系统。基于以上分析,采用单片机控制实现系统功能更也更灵活,故建议方案 2。2.2.2 按键的选择按键的选择方案一:选择独立按键进行控制,由于独立按键编程简单,每个 IO 口放置一个独立按键,简单明了,但是如果需要按键较多时,这种按键方式比较浪费资源。方案二:采用矩阵键盘作为按键模块,所需要的 IO 资源相对较少,系统结构变得简单,可以减少系统的体积,易于实施,由于本次设计所需的按键较多,综上所述,采用方案二。兰州石化职业技术大学成人教育与培训学院毕业设计52.2.3 显示模块的选择显示模块的选择方案一:采用 LCD1602 进行显示所有需要显示的变量,1602 具有中等数量的显示资源,可以显示 16*2 个字符,且编程比较容易,比较适合初次进行系统设计的相关学者。方案二:采用 LCD12864 进行显示所需要显示的变量,12864 具有较多的显示资源,但是其编程相对复杂,且价格也相关贵,因此根据上述要求,不建议选择这一显示器。综上所述,显示模块选择方案一。具体的硬件系统设计框图如图 2-1 所示,其中包括指纹输入,单片机最小系统,开锁电路,报警电路,键盘接口电路等等。图 2-1 硬件系统设计框图STC89C52指纹输入晶振电路复位电路键盘接口电路开锁电路报警电路兰州石化职业技术大学成人教育与培训学院毕业设计63 系统硬件设计系统硬件设计3.1 单片机最小系统设计单片机最小系统设计本文使用的 STC89C52 微控制器主要包括控制器、晶体振荡器电路和微控制器的复位电路。微控制器的控制器引脚如图 3-1 所示。借助先进的工业制造技术,将微控制器集成到具有处理、存储、输入和输出信号功能的微芯片中,形成了一个紧凑、完整的计算机硬件系统,可以在其控制下快速有效地完成程序员指定的任务和独立程序。因此,微控制器可以被视为具有计算机所有功能的小型计算机。微控制器的类型多种多样,其功能差异很大,尤其是在软件和硬件功能方面,具有不同的技术特征。为了合理使用某种类型的微控制器,用户必须知道外部尺寸、性能和特性是否符合应用系统所需的功能特性。在控制系统的早期开发中,大多数都使用电子或数字电路,这使得整个控制系统的结构非常复杂。然而,现在使用微控制器直接降低了电路的复杂性。STC89C52具有稳定强大的性能,低能耗,并且已经编写了可以自动存储的程序。同时,它还有一个内部数据技术库,其中包含大约 8000 个数据。这种类型的数据库解决了许多控制应用程序解决方案。成本效益非常高,而且不容易出现故障。它主要用于工业嵌入式系统。STC89C52 的主要特点如下:(1)与传统的 8051 微控制器相比,它的功能大大增强,不仅使代码兼容,而且增加了机器周期。(2)工作电压:5.5V3.3V。(3)工作频率范围:0-48MHz。(4)最大程序内存空间为 8K 字节。(5)STC89C52 集成了 512 字节的 RAM。(6)通用 I/O 连接(32):P1/P2/P3 内置上拉或下拉电阻器;应将上拉电阻器添加到 P0 端口。(7)ISP(在线编程)/IAP(可编程应用程序):程序可以通过串行连接快速轻松地下载,无需特殊下载。(8)具有 EEPROM 功能。兰州石化职业技术大学成人教育与培训学院毕业设计7(9)具有看门狗功能。(10)总共有三个 16 位定时器/计数器。即定时器 T0、T1、T2。(11)4 个通道的外部中断,(12)工作温度范围:-40+85。(13)PDIP 封装。STC89C52RC 微控制器的工作模式:断电模式:典型功能消耗0.1A空闲模式:典型的功耗为 2mA。正常工作模式:典型功耗为 4Ma7mA。它有一个断电模式。引脚图如图 3.1 所示。图 3-1 单片机管脚图3.1.1 外部晶振电路外部晶振电路系统的时钟源由 11.0592M 晶体振荡器提供。外置晶振 XTAL 及 C1、C2设计。晶体振荡器与两个电容器的一头相连,另一头与地面相连。C1、C2 与晶体振荡器构成并联谐振回路。最后,将 XTAL1 和 XTAL2 引脚连接到微控制器上,提供一个统一的时序来执行所有微控制器的指令。C1 和 C2 在使时钟更加稳定的同时,选择了 30PF 进行微调。如图 3-2 所示,晶体振荡器电路的具体连接方式。兰州石化职业技术大学成人教育与培训学院毕业设计8图 3-2 晶振电路原理图3.1.2 复位电路的设计复位电路的设计复位电路的主要任务是通过按下电路上的安装按钮来配置系统,并将内部数据从系统恢复到初始值。此外,当激活控制器时,新设置可以根据系统要求自动启动设置。如果电路在活动状态下受到几次信号中断的干扰,程序将运行并发出不正确的命令,从而导致混乱。此时,您可以按下重置按钮重新启动控制器。重新启动系统后,将删除所有以前的数据,以确保系统内存。当“重置”按钮被激活时,重置引脚将成为高级操作,在此期间,微型控制器完成了重新操作。此设计中电路重置由 R2,C4 连接到 RST 引脚组成。这种方法不仅非常方便,而且成本低廉。具体实现如图 3.3 所示。图 3-3 复位模块原理图3.2 液晶显示模块液晶显示模块LCD 是一种电子发光显示装置,由有机薄膜组成多层结构产生电发光,制造容易,驱动电压低,这些基本特征使 LCD 在平面显示器方面非常突出,可以满足消费者对显示技术的需求。12XTAL30pFC130pFC2GND10uFC-RST10KR1VCCGNDResX1X2兰州石化职业技术大学成人教育与培训学院毕业设计9本次设计选用的显示模块为 1602 字符的液晶显示模块,1602 字符液晶显示模块为点阵液晶显示模块。不仅结构简单,而且显示内容丰富,编码后图像质量高。1602字符 LCD 模块的突出优点是其数字接口、紧凑的尺寸、重量轻和低能耗。显示容量为 162,芯片工作电压为 4.5-5.5V,工作电流为 2.0mA(5.0V)。电路图如图 3-4所示。图3-4 1602液晶显示电路原理图3.3 按键控制部分电路按键控制部分电路本次设计的智能密码锁是在传统的密码锁的基础上进一步升华,因此密码的输出功能也是本次设计的必须设计功能之一。本次设计主要采用微动开关作为密码的输出功能按键以及处理指纹输入时的一些必须功能。因此本次设计中既需要安排几个按键用于处理按键,又需要安排一系列按键给密码来使用。微动开关在使用过程中主要通过检测电平可以确定按键是处于关闭状态,还是处于开启状态。当按下微动开关时此时按键接通,单片机输入口检测到为低电平,此时单片机接收到信号后进行后续的处理,当按键处于高电平时,此时按键没有被按下,无需进一步处理。其中微动开关实物图如图 3-5 所示。图3-5 微动开关实物图兰州石化职业技术大学成人教育与培训学院毕业设计10在微动开关被按下的过程中,此时需要注意到抖动的一个现象,这是一种需要注意的问题,如果按键状态被按下,此时按键是有效果的,但是由于人的手或者按键的抖动性,按键按下不会立刻接通,按键释放也不会立刻断开,会有抖动或恢复期。因此为了防止误判,需要判断到按下信号后,延时一定的时间再次判断,这种方式叫做软件延时消除抖动。这一设计是为了消除干扰因素而采用的软件延迟抖动。如图 3-6 所示的电平在按键时的抖动状态。图3-6 按键闭合及断开前后的电压按键设计分为独立型和矩阵型两种。独立型是用来手动复位电路和和指纹录入删除等,而矩阵形则是用来让用户输入密码的,两者之间相互都需要应用在本次控制中。3.3.1 独立按键独立按键各各占一个引脚对引脚电平的检测,可以确定按键的状态(state)。这种设计方式要求每个键都要占用一个微控制器的引脚,而在这种复位电路中使用的就是这种设计方式。需要说明的是,虽然微动开关有 4 个脚,但在实际原理图设计过程中,只需要将其中任何一个脚上下连接,就能让开关工作正常。因此,从矩阵键盘电路可以看出,原理图库中的开关原理图只有两个引脚。3.3.2 矩阵按键矩阵按键由于在本次设计,数字和字母按键的数量都非常多,起码需要 13 个按键兰州石化职业技术大学成人教育与培训学院毕业设计11才能完成。也就是说,在微控制器上需要 13 个引脚才能使用独立键,这就造成了大量 I/O 资源的浪费。其它模块也需要适配 I/O,这可能造成 I/O 不够用。所以针对这一问题,采用了 4*4 矩阵键盘的设计方式。矩阵按键的与单片机的连接方式如图 3-7 所示。图3-7 矩阵式键盘电路图3.4 指纹模块指纹模块3.4.1 指纹模块简介指纹模块简介该设计采用 YX66318-AS608 指纹模块,通过串口与处理器沟通。如表 3-1所示的接口引脚功能。表 3-1 指纹模块引脚定义序号名称说明1Vi模块电源正输入端。2Ti串行数据输出。TTL 逻辑电平3Rx串行数据输入。TTL 逻辑电平4GND信号地。内部与电源地连接5WAK感应信号输出,默认高电平有效兰州石化职业技术大学成人教育与培训学院毕业设计126Vt触摸感应电源输入端,.3v 供电7U+USB D+8U-USB D-指纹模块的硬件接口电路如图 3-8 所示。图 3-8 指纹模块接口图3.5 继电器模块继电器模块此设计以继电器闭合方式模拟电子锁的切换效果,并以 HUB 端子作为外接延伸介面,将现实中的电子锁装置连结起来,让设计更具真实感。但出于设计费用的考虑,实际演示中还是采用了继电器仿真。如图 3-9 所示的具体硬件设计。兰州石化职业技术大学成人教育与培训学院毕业设计13图 3-9 继电器模拟开关电路3.6 报警电路报警电路这一设计采用了作为报警电路的是蜂鸣器电路。当口令输入错误的数量超过设定值时,就会发出报警信息来启用鸣笛装置。蜂鸣器的驱动方式采用的是传统的 PNP 三极管驱动。驱动原理与三极管驱动继电器的原理一致,此处不再赘述。如图 3-10 所示的具体硬件电路设计。图 3-10 报警电路图兰州石化职业技术大学成人教育与培训学院毕业设计144 系统软件的设计系统软件的设计每个设计的系统要想达到完整的状态都需要进行软件的设计,软件设计就像是系统的控制器而硬件设计机械部件,只有进行程序的设计系统才能发出控制硬件进行工作的执行指令,才能使得硬件系统达到本次设计需要实现的目标。在智能密码锁设计中,控制器作为主控制器,主要用于 LCD1602 主要单元发送命令和写入数据,同时接受从这些单元收集的数据。因此,软件应用程序的设计主要针对软件和主要模块的开发。开发方法是完善电路中的硬件设计功能,抽象到程序逻辑,并将其填充到功能中,因此,这种设计通常需要通过采用流程图的方式来组织程序的整个执行过程和逻辑关系。本次设计的软件系统的编程语言主要是 C 语言,具有以下优点:结构简洁紧凑;灵活方便;程序自由编写;高级语言与低级语言结合。丰富运算符,完成高难度运算。程序效率更高。表达方式灵活实用。本设计所采用的软件开发环境是 Keil5,编程语言是标准 C51 代码。此设计中有许多功能模块,因此,在开发过程中需要依赖多文件方法,包括创建多个源文件和标题文件,并将这些源文件添加到单个项目文件中。键入代码后,它将链接、分组并生成一个带有二进制后缀的可执行文件,文件自动生成 hex文件并下载到控制器以执行。4.1 主程序流程图主程序流程图单片机设计的代码是通过系统学习的 C 语言实现的。本文将不详细描述C 语言的设计过程。系统操作需要编写完整的程序。只有将程序下载到系统中,系统才能读取并执行每个执行命令,因此每个设计的电路都可以完成其工作。因此,选择一个稳定可靠的程序来编写软件可以最大限度地提高每个电路的功能,因此软件设计非常关键。我们经过对我们设计的系统功能进行分析和实验后,制定的主程序流程图,如图 4-1 所示;兰州石化职业技术大学成人教育与培训学院毕业设计15程序执行过程如下:该程序将初始化液晶显示器、键盘扫描、指纹模块等模块的硬件功能。然后,它检测是否按下了某个键。如果是,它将执行关键程序。如果没有,它将确定手指是否被按压在指纹传感器的采集窗口上。如果有指纹,它会执行指纹解锁程序。如果输入的密码不正确,密码锁将报告一个错误。根据实际情况调用相应的函数。各模块初始化开始是否有按键按下?是否有指纹按下?执行按键程序执行指纹开锁程序输入密码错误?报错YYYNNN结束N图 4-1 主程序流程图4.2 键盘检测扫描程序键盘检测扫描程序键盘模组的主要任务是与使用者实时互动,并以使用者灵活的输入为基础,对程式的执行过程进行控制。单片机的工作是确认是否按了扫描键、确认按等兰州石化职业技术大学成人教育与培训学院毕业设计16按键的作用和执行功能。接通电源和微控制器系统,接着启动扫描工作。如有按键按下,此时确定按下的是什么按键,进行扫描,扫描后算出数值,保存即可。具体的按键检测过程见图 4-2。4.3 LCD1602 显示流程图显示流程图显示模块实时完成与用户的实时相互作用。各个阶段的结果动态显示在屏幕上。用户以显示的信息为基础,决定下次执行任务,显示模块的顺序。如图4-3 所示。等待按键被按下检测到按键被按下延时消除抖动对按键进行编码编码转义为按键值是否有按键按下?NY图 4-2 键盘检测流程图兰州石化职业技术大学成人教育与培训学院毕业设计17图 4-3 显示模块流程图4.4 指纹模块通信流程图指纹模块通信流程图指纹模块与个人计算机之间的通信通过串行接口进行,该接口包括用于串行通信的数据发送和接收,具体流程如图 4-4 所示。图 4-4 串口通信流程图兰州石化职业技术大学成人教育与培训学院毕业设计185 系统调试系统调试本章以完成硬体与软体设计为主,要保证原理图没有问题,因为系统的原理图设计出来以后没有模拟调试的功能,因此需要对示意图中各模块进行反复核对,最后将 PCB 文件送到厂家制作块板,然后开始对各硬件功能模块的电路是否能正常运行进行焊接组件的测试。软件部分的代码主要是运行调试按钮,观察运行效果是否达到设计要求,如果检测后能够正常运行,这说明软件调试没有问题。5.1 功能模块的测试功能模块的测试1、检查元器件质量按照电路图买元件后,先检查买元件的好坏,再按照检测方法对各元件进行检测。另外,对示意图是否相符也需要仔细检查。检查完毕后才能进行零件及焊件的装填,以防不正确的焊件造成不方便校准的情况发生。在购买系统硬件元件的时候,需要根据电路原理图去购买,购买回来后,需要对每个元件进行测试,确定是否能够使用,每个元件都有相关的检测方法,这个过程不能忽略,必须仔细一个一个元件完成检测。检测完成后,才可以按照原理图进行元件焊接,避免焊接错误,后续出现修改困难的情况。2、放置和焊接各种构件各部位按原理图摆放在摆放的过程中,要先将低矮的部分摆放焊接好,再将高矮的部分摆放焊接好。尤其是对易损坏的部位,要进行后焊处理。采用焊接一体式芯片时,连续焊接时间不应超过 10 秒,安装芯片时应注意把握好方向,预防出现引脚焊接错误等问题。如下图所示为整体的控制原理图,通过对这个原理图进行绘制 PCB,然后进一步焊接原理图或 PCB 上的额器件,在焊接好各种器件后,然后进行各个模块的测试,在焊接过程中,一定要按照器件的引脚以及焊接流程进行焊接,避免出现虚焊、漏焊等一些列的情况,在仔细校对焊接后的板子后,进行单片机最小系统的测试,通过上电,观察单片机兰州石化职业技术大学成人教育与培训学院毕业设计19的晶振能否正常的输出晶振波形,来评估这一单片机能否正常运行,本次设计中的单片机是能够正常运行的,在测试万单片机最小系统后,需要对蜂鸣器模块,继电器模块,按键模块等进一步测试,接下来进行详细介绍。图 5-1 原理图5.2 程序的调试程序的调试KEIL 是一款微处理器编程软件,可与 80C51 内核兼容,并通过标准集成开发工具得到技术支持。它是一个综合开发过程,具有强大的功能,主要包含管理、编译、链接、对象代码生成、硬件模拟和软件仿真。特别是 c 语言编译工具的出现,从而获得更准确、更有效的代码。同时在选项上提供额外的灵活性。本次系统设计的软件使用的是 KEIL 这款功能强大的编程软件,经过不断的改版,KEIL 系统的功能和界面都进行了大幅度的优化和改善。KEIL 这款软件在系统调试这方面是非常有用的,能够大幅度的减少我们的设计时间,使我们能够设计出更多兰州石化职业技术大学成人教育与培训学院毕业设计20的产品。在焊接好单片机硬件后,先进性程序的调试,采用单步调试,在线仿真等KEIL 自带的功能进行相应的调试,而后根据问题进行不断优化程序。在优化好程序后进行下载软件。KEIL 软件界面如图:图 5.2 KEIL软件界面测试程序已经写好了,进行程序下载,图 5.3 为单片机程序下载图。图 5.3 单片机程序下载图兰州石化职业技术大学成人教育与培训学院毕业设计21程序文件的生成主要生成*hex 文件。该 hex 文件为十六进制文件,点击下载后在开发板上按电源开通。开机瞬间即可完成单片机 hex 文件的下载。这个时间可能就是几秒钟,而越小的文件所需要耗费的时间就越短。5.3 蜂鸣器、继电器调试蜂鸣器、继电器调试在运行设备测试代码编写完成后,下载到单片机的控制器中上。接通电源后,在看到下载成果后进行验证功能。为了验证这是一个程序问题,你首先需要将程序的引脚定义,然后下载到单片机中。当单片机控制的蜂鸣器引脚能发出响声,那么说明蜂鸣器并无问题。实验中对蜂鸣器测试无法正常驱动,此时对继电器调试硬件原理图进行检查,不存在任何问题,推测可能是基础电极电阻值的选择上出现了问题。移除电阻器(因为这个设计中的电阻器都安装在焊盘上,所以移除起来比较方便),更换电阻器,并重新焊接到合适的电阻值,然后把程序下载下来就可以了,然后进行再一次检测,该蜂鸣装置运转正常。接下来,开始对类似于三极管驱动继电器与三极管驱动蜂鸣器原理图一致,可以采取类似的手段进行调试。最后经过测试三极管能够正常驱动继电器。5.5 按键的调试按键的调试密钥调试主要包括两部分:密钥扫描程序和密码编码程序。阮籍设计章节介绍了软件设计部分,并解释了关键代码。这种设计主要使用按键来查看 IO端口的级别是否发生了变化。经过测试,每个按钮都可以正常工作。5.3 实物调试实物调试首先启动,可以输入密码进行开锁,其中密码为 8 个 0.。具体的操作流程图如下所示。兰州石化职业技术大学成人教育与培训学院毕业设计22图 5.4 设备上电图此时需要输出密码,具体的实验图如下图所示。图 5.5 输入密码图密码正确后,进行开锁,具体的电路如下图所示兰州石化职业技术大学成人教育与培训学院毕业设计23图 5.6 密码正确开锁当密码录入错误时,显示 error,具体如下图所示。兰州石化职业技术大学成人教育与培训学院毕业设计24图 5.7 密码错误无法开锁同时本文所设计的智能密码锁可以对指纹进行录入并进行识别开锁,通过独立按键录入指纹,具体的电路如下图所示。兰州石化职业技术大学成人教育与培训学院毕业设计25图 5.7 录入指纹同时可以通过按键进行指纹的识别,具体如下图所示兰州石化职业技术大学成人教育与培训学院毕业设计26图 5.8 识别指纹兰州石化职业技术大学成人教育与培训学院毕业设计276 总结与展望总结与展望经过两个月的研究和实践,该设计成功实现了提案报告中的所有功能,使系统稳定正常运行。通过选择相应的微控制器系统,学习如何使用PROTEL99SE,并开始在相应的组件库中搜索相应的组件。逐一绘制传感器信号采集电路、主控制器微控制器和电源模块模型。当遇到在原理图封装库中找不到的相应原理图设计时,请设计自己的原理图电路。设计好原理电路后,模拟电路设计并进行程序开发和编写。开发完成后,使用 KEIL51 开发微控制器程序,下载仿真软件,进行调试,完成设计。然而,还有许多领域需要改进。例如,在设计之初,计划在面板中引入除电源线之外的所有其他电路,用于整个 PCB。当设计的模块不需要杜邦电缆时,它会将一根电缆直接插入 PCB 面板,使其成为一个整体。然而,在实际开发过程中出现了两个主要问题。(1)LCD 1602 的接口出现意外反转。如果显示模块正常插入开发板,那么大的 LCD 屏幕覆盖了大部分面板,包括矩阵按钮,这会影响后续操作。使用杜邦电缆连接无法解决这个问题,使面板显得有些杂乱。(2)电源接口采用直流型插座,但焊接后发现电源插座无法正常供电。尽管万用表是用来测试的,但它没有检测到任何缺陷只有 USB 适配器电缆才能用于后续的电源供应。幸运的是,当时额外延长了一排引脚,否则电源会出现异常,整个电路板都会被丢弃。因此,通过这次设计,能深刻地理解在实际单片机系统开发过程中,对于可能出现的问题,每一个设计都应该考虑,并且应该有替代设计。如果能按顺序进行设计,除了解决上述问题外,应重点考虑这种设计的开发板的性能和易用性,使其更加完美。兰州石化职业技术大学成人教育与培训学院毕业设计2328致致 谢谢这个设计从选题到设计都是在导师的帮助下顺利完成的,导师很有帮助。没有教练的不断指导,我无法在这个时候完成智能密码锁的控制。感谢老师对我学习的帮助和指导。如果没有他们的教导和指导,我就不会在这个时候长大或成功完成基于单片机的智能密码锁的设计。多亏了室友的帮助,在过去的几年里,我在生活和学习中得到了很大的帮助和支持。感谢我的母校为我创造了如此良好的学习氛围,使我能够在这里无忧无虑地学习和生活。再次感谢我的家人无私的关怀和指导。没有你,我就无法在这个时候成功完成我的研究和基于单片机的智能密码锁的设计。兰州石化职业技术大学成人教育与培训学院毕业设计29参考文献参考文献1 纪贤璋,蔡成龙.基于单片机的指纹密码锁J.软件,2022,43(08):156-159.2丁 文 婷.租 户 的 门 锁 谁 做 主 N.经 济 观 察 报,2022-08-01(016).DOI:10.28421/ki.njjgc.2022.001221.3 胡伟霞,杨记鑫,陈会丽.基于 STM32F103C8T6 单片机的智能密码锁的设计 J.电 子 设 计 工 程,2022,30(13):180-183+188.DOI:10.14022/j.issn 1674-6236.2022.13.038.4 李长灏,杨帆,马如龙,刘航,李伟,周慧.基于 51 单片机的电子智能密码锁J.电脑知识与技术,2022,18(12):81-83.DOI:10.14004/ki.ckt.2022.0648.5 中共湖南省长沙县委改革办.湖南长沙县:智慧医养“三步法”解锁“居家养老”密码N.中国经济导报,2022-04-09(004).DOI:10.28095/ki.ncjjd.2022.000526.6 席 国 栋,林 路 洋.基 于“互 联 网+”的 智 能 门 锁 设 计 J.无 线 互 联 科技,2022,19(06):80-81.7 燕 秀 秀.智 能 密 码 锁 的 软 件 设 计 与 开 发 J.山 西 电 子 技 术,2022(01):69-71+75.8 杨建松,孙朝伟,井新宇.一种 FPGA 密码锁的设计与实现J.电子世界,2022(01):170-171.DOI:10.19353/ki.dzsj.2022.01.079.9.智能手机可以“识别”你房门钥匙的声音J.时代英语(高二),2021(S1):10-11.10 田亚立,梁波.基于单片机的语音识别智能家居密码锁控制系统设计J.电子技术与软件工程,2021(22):78-80.11 王乐乐,李斌,曹骥龙,夏茳南,周欣欣.基于 STC89C51 的零接触智能密码锁的设计与实现J.无线互联科技,2021,18(19):42-43.12 师代.基于九宫格密码的智能手机隐式身份认证算法研究D.北京交通大学,2021.DOI:10.26944/ki.gbfju.2021.001758.13 孙 鹏 宇,魏 立 明.基 于 MCU 的 智 能 密 码 锁 控 制 系 统 J.北 方 建筑,2021,6(02):53-56.14 张狄.基于 STM32 单片机的智能锁设计J.光源与照明,2021(02):85-86.兰州石化职业技术大学成人教育与培训学院毕业设计3015 伍思源,马远佳,罗佩.免通讯与低功耗的共享单车密码锁J.电子世界,2021(02):105-107.DOI:10.19353/ki.dzsj.2021.02.047.16 刘洋洋,郑翊.基于 Andriod 平台的记事本设计J.电脑编程技巧与维护,2020(12):66-68.DOI:10.16184/prg.2020.12.025.17 谭 虹.一 种 智 能 指 纹 密 码 锁 系 统 的 设 计 与 实 现 J.软 件 工程,2020,23(11):34-36+20.DO
展开阅读全文