《单片机密码锁课程设计:安全可靠的电子密码锁应用与研究》

版权申诉
0 下载量 152 浏览量 更新于2024-04-04 收藏 952KB DOC 举报
"单片机密码锁课程设计"是一项旨在解决人们对安全防护需求不断增加的问题而展开的课题。随着社会生活水平的提高和安全意识的增强,人们对于安全的要求也变得越来越高。传统的机械锁虽然安全可靠,但使用起来往往不够便利,因此电子密码锁应运而生。本课程设计以单片机技术为基础,结合电子密码锁的原理和应用,旨在设计出一种安全可靠、使用方便的电子密码锁系统。 在课题背景部分,提到了电子锁的密钥量极大,可以与机械锁配合使用,并且可以避免因钥匙而带来的一系列问题。这也是本课程设计的出发点之一,即利用单片机技术和电子密码锁的特点,设计出一种更加安全、便利的门锁系统。随着电子技术的不断发展,电子密码锁已经成为了人们生活中不可或缺的一部分,因此本课程设计的意义也就在于满足现代社会对于安全防护的需求,提高人们的生活质量。 本课程设计主要分为以下几个部分:首先是对电子密码锁的原理和工作流程进行详细的介绍,以帮助学生更好地理解电子密码锁的工作原理;其次是电子密码锁的硬件设计和电路连接的部分,这部分内容会涉及到单片机的选型、电路图的设计和元器件的选取等内容;最后是软件设计部分,这部分内容将主要涉及到单片机程序设计、密码验证算法以及用户界面设计等内容。通过以上这些部分的设计,学生可以在实际操作中熟练掌握单片机技术,并将其应用于电子密码锁的设计中,从而最终实现一套完整的电子密码锁系统。 在课程设计过程中,还将会包括一些实际案例的分析和讨论,以帮助学生更好地理解电子密码锁系统的应用场景和设计原则。同时,本课程设计还将对电子密码锁系统进行一些安全性测试和实际应用测试,以验证系统的可靠性和安全性。通过这些实验和测试,学生将能够更加深入地理解电子密码锁系统的设计和应用,并且在实践中提高自己的分析和解决问题的能力。 总的来说,本课程设计旨在帮助学生掌握单片机技术并将其应用于电子密码锁系统的设计中,从而培养他们的实践能力和创新意识。通过本课程设计的学习,学生不仅能够了解电子密码锁系统的原理和设计过程,还能够在实际应用中灵活运用所学知识,为现代社会生活的安全防护做出积极的贡献。"
2023-02-27 上传
1 设计课题任务、功能要求说明及方案介绍 1 设计课题任务与要求 设计一个具有特定功能的密码锁。该密码锁上电或按键复位后能自动显示系统提示符 "P.", 进入准备工作状态。该密码锁具有系统原始密码888888,用户可以在原始密码输入正确 后,即开锁后才可以设定并存储用户密码,当按修改密码键时,显示英文"CODE",输入的 新密码显示具体按下的数字和字母0-9或A- F。密码锁锁定时,密码输入应处于保密显示状态,显示"- ",密码输入正确时应显示密码输入正确提示信息主人的英文"HOST",且指示灯亮,否则 ,显示密码输入错误提示信息:错误的英文字母"FAULT",当输入错误3次时,蜂鸣器报 警,显示小偷的英文"THIEF",且指示灯亮。 2 设计课题总体方案介绍及工作原理说明 此密码锁主要由单片机芯片AT89S52、4X4矩阵键盘、8位数码管显示电路和复位电路 构成,设计课题的系统框图如图 1.1 所示: 图 1.1系统框图 实现密码锁功能的软件程序存放在AT89S52的ROM中。 2 设计课题硬件系统的设计 2.1 设计课题硬件系统各模块功能简要介绍 本设计的硬件系统主要采用以下基本模块来实现,单片机最小系统模块,输入模块、 输出模块、电源模块 (1)单片机最小系统模块:AT89S52单片机芯片;复位电路;晶振电路。本模块AT89S 52系统控制核心,单片机系统复位由按键电平复位电路完成,通过按键S1来控制,单片 机通过芯片引脚XTAL1、 XTAL2,外并接石英晶体振荡器和两只电容。这样就为能为单片机提供频率为12MHz的晶 振。 (2)4X4矩阵键盘模块:四条列线接P1.7-P1.4;四行线接P1.3-P1.0 (3)显示模块:本次设计显示为8位,采用两个四位一体数码管(共阳极)作为显示窗 口,既可以节约成本又能简化电路。数码管用8个PNP三极管驱动。 (4)电源模块:直接由PC的USB接口提供。 2.2 各功能模块详细介绍 2.2.1 AT89S52介绍 (1) 具有8KB可改写的Flash 内部程序存储器,可写/擦1000次; (2) 256字节内部RAM; (3) 32根可编程I/O口; (4) 3个16位定时器/计数器。 (5) 8个中断源; (6) 低功耗空闲和掉电方式。 它的价格便宜,功能强大,能耗低。很大程度上减少总电路的复杂性,提高了所 设计系统的稳定性。 2.2.2 时钟电路 时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时 序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序 进行工作。本次课程设计我们用的是12MHz的晶振与电容并联形成一个稳定的自激振荡器 。电路图如图2.2所示 。 图 2.1 时钟电路 2.2.3 键盘电路 本次设计采用4X4矩阵式键盘嵌在在单片机P1口上,矩阵式键盘电路图2-3: 图 2.2 键盘电路 2.2.4 复位电路 复位电路采用按键复位方式,当按下复位键时,单片机复位,恢复初始状态,各寄存 器清零。当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要 按复位键以重新启动。RST引脚是单片机复位信号的输入端,复位信号是高电平有效,其 有效时间应持续24个振荡周期(即2个机器周期)以上,使用频率为12MHz的晶振,则复 位信号持续时间应超过2us才能完成复位操作。复位电路如下图2.4所示。 图 2.3 复位电路 2.2.5 数码管驱动电路与显示电路 本次课程设计我们采用的是共阳极的数码管,用三极管与电阻来做驱动。电路图如下 图2.5所示。 图2.4 数码管驱动及显示电路图 2.3 设计课题电路原理图、PCB 图、元器件布局图 电路原理图、PCB 图、元器件布局图、元件清单见附录。 3 设计课题软件系统的设计 3.1 设计课题使用单片机资源的情况 选择设计课题使用单片机资源的情况如下: P0口输出数码管段选信号,P2口输出数码管位选信号; 40H-45H作为初始密码888888存储单元,60H-65H作为输入密码存储区;50H- 55H为查表变址缓存单元,数码管显示内容做成表格供查询;堆栈栈底设置在30H。 3.2 设计课题软件系统各模块功能简要介绍 本程序通过以下各子模块程序实现: 主程序、数码管显示子程序、定时1ms程序、定时10ms子程序、。 主程序:主要是用于对输入信号的处理、输出信号的控制和对各个功能程序模块的运 用及其控制,包括键扫功能,密码输入与修改功能,密码校对功能,报警功能等。 数码管显示子程序:主要是用于对于密码锁不同状态显示不同内容,例如,当待锁状 态显示P.当开锁状态显示HOST,当报警状态显示THIEF等。 定时1ms子程序:用于数码管显示延时。 定时10ms子程序:用于键扫去抖动。 3