news 2026/4/20 0:37:49

基于单片机的密码锁设计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于单片机的密码锁设计

第二章 系统方案的设计

2.1 设计说明
确定好明确的设计方案对于整个系统的设计是非常重要的,秉持着严格遵循单片机设计相关原则,尽可能选择合适的方案进行设计,合理的方案对整个系统的综合性调试有帮助。
设计的基于51单片机的多功能数字密码锁的具体功能有:
1、设计的密码位为六位。为了防止密码被窥窃,在输入密码时在液晶显示屏幕上显示号。
2、4×4的矩阵键盘其中包括0-9的数字键用来输入密码和‘
’按键作为取消键、‘#’按键作为确认按键、按键D为改密码确认键、A、B、C三个按键是指纹功能所用,数字密码锁按键排布简图如图2.1所示。

图2.1数字密码锁按键排布简图
3、蜂鸣器作为报警提示,LED指示灯的亮灭和继电器的闭合、电磁锁的吸合作为锁的开关。
4、密码可进行修改,有密码保护,密码输入错误超过三次则按键输入失灵且持续报警,可以防止窃锁,有管理员密码以防止忘记密码等。
5、增加无线通讯模块进行远程解锁,增加指纹模块进行指纹解锁。
6、将所有解锁功能集于一个数字锁上,设计出基于51单片机的多功能数字密码锁。
本章将介绍所选的整体设计的各个部分设计的方案的选择,并且总结出整体的设计方案。
2.2 控制芯片方案的设计
在工控领域中,单片机渗透率极高,一个系统用的可能不只一片单片机,甚至几百片共同工作的系统都有。单片机当中其中最具有代表性的是MCS-51单片机,其基本结构都是相差无几的,其基本结构如图2.2所示。

图2.2MCS-51单片机基本结构图

第三章 系统的硬件设计

3.1 设计说明
硬件电路的设计是整个系统设计当中重要的组成部分之一,除此之外,软件设计部分也很重要,硬件电路的合理与否对系统性能有影响,在设计当中,电路的一个细节都可能会导致设计不能达到运行效果。通常情况下,硬件电路的设计可以分成分析设计需求、设计原理图等。
本次设计的硬件电路部分由STC89C52最小系统即主控制芯片、复位电路、晶振电路,AT24C02存储密码电路、矩阵按键输入电路、下载口电路、电源输入电路、屏幕信息显示电路、提示电路、附加的蓝牙解锁和指纹解锁功能电路组成[17]。本设计硬件原理框图如图3.1所示。对于原理图的绘制,需要用到Altium Designer软件[18],该软件可以绘制原理图、PCB图等,为电路设计提供了效率和保障,绘制出的整个设计系统的原理图如图3.2所示。本章将对整体设计的各个硬件电路部分的设计进行详细的介绍。

图3.1设计系统硬件原理框图

图3.2设计系统的硬件原理图

第四章 系统的软件设计

4.1 设计说明
系统组成部分中,重要组成除了硬件部分,还有一个重要组成部分即软件设计部分,软件设计部分承载了带动硬件的程序控制逻辑。
本次设计的软件设计部分由主程序设计、按键扫描子程序设计、密码设置和开锁子程序、无线通讯单元设计、指纹解锁子程序设计等组成。其中关于LCD1602显示单元、AT24C02存储单元的设计是利用相关资料指令集编辑的一系列写指令、写数据、写地址、初始化等逻辑,程序逻辑相对简单。
本章将对系统的软件设计部分的设计通过流程图等方式进行介绍,其中流程图应用VISIO软件来绘制。
4.2 应用软件环境的介绍
本次设计KeiluVision4软件的相关设计参数值和编译输出结果如图4.1所示。在Target设置界面当中晶振值为11.0592MHz,Memory Model设置为PDATA,其他设置值为默认值。其中PDATA是指单片机的外部扩展RAM的低256个字节,虽然此设置值在C51当中可能会出现BUG,但是如果继续使用常用空间DATA的参数设置值,部分函数就没有存放的空间,编译就会报错。

图4.1Keil4软件的相关设计参数值和编译输出结果
4.4 系统的按键扫描子程序设计
根据矩阵键盘的排布,共四行,一行有四个按键,通过读入水平位置和垂直位置的扫描码来确定按下的按键,即逐行扫描法。逐行扫描法就是通过将矩阵按键所连引脚的高四位即列线电平拉低,若有按键按下,矩阵按键低四位即行线的电平不全为高电平,其中是低电平的那位就是被按下的按键,流程图如图4.5所示。
这里举一个简单例子,本设计中,按键所用的引脚是P1口,定义连接按键的水平线P1.0-P1.3为行线,是输出线;定义连接按键的垂直线P1.4-P1.7为列线,是输入线。按键排布样式就是本设计的排布,当P1.5引脚被拉低,在判断是否有按键按下后,P1.0-P1.3所在行逐一输出低电平,若P1.0输出低电平,P1.1-P1.3引脚输出高电平,则是按键2按下。

图4.5按键扫描子程序流程图

第五章 系统的运行与调试

5.1 说明
在系统的软、硬件部分设计完成后,接着需要将两个部分联合起来,过程也需要进行测试。本章会简单介绍硬件焊接部分的问题,系统的仿真,实物的运行与调试。
5.2 元器件的焊接
5.2.1 焊接的步骤
通过焊接方式将所选的各个硬件及数字元器件连接起来,详细的元器件清单可见附录1,焊接的步骤一般分成四个部分:
(1)准备工作,准备板子和要焊接的数字元器件,并检查器件上是否有影响焊接的杂物,准备锡条,准备硬件设计原理图。
(2)预热电烙铁,根据使用的恒温可调的电烙铁,将温度调到适合的温度并等待几分钟的预热时间。一般温度控制在250-300度之间,温度较低,不利于锡条的融化,温度较高,会造成器件的损坏。
(3)焊接,用电烙铁将锡条融化,点在焊点处,尽量让焊点圆滑、牢固。
(4)检查焊点,焊接后要检查焊点与焊点间是否有短接,肉眼检查的方式不可靠,对于复杂的焊接电路,可以借助万用表的蜂鸣器档来检查两点间的导通情况,若两点间导通,蜂鸣器会发出响声,若没有导通,蜂鸣器不会出声。焊接完成的实物图正、反面分别如图5.1.1和图5.2.2所示。

图5.1.1系统实物的正面
5.3.1 系统的仿真
绘制设计系统的仿真图,需要借助软件进行绘制。本设计使用Proteus8 Professional软件来绘制原理图,整个系统的仿真图如图5.2所示。绘制出原理图后,将软件部分调试完成的代码的HEX文件下载到STC89C52单片机中,下载过程如图5.3所示,图中在Program File中导入代码的HEX文件即可下载,在下载完成后就可对设计系统进行仿真调试。

图5.2设计系统的仿真图

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 5:18:30

基于单片机的药品分拣设计

2 系统设计方案 2.1 系统原理 药品分拣系统是医疗机构必备设备之一,它可以提高药品分配的效率和准确性,从而更好地保障患者用药安全和治疗效果。本文基于STM32单片机进行开发,使用OLED和Drivic双显示屏实现药品图片的双屏显示,同…

作者头像 李华
网站建设 2026/4/18 5:18:48

Android 基础入门教程2.5.5 ExpandableListView(可折叠列表)的基本使用

2.5.5 ExpandableListView(可折叠列表)的基本使用 分类 Android 基础入门教程 本节引言: 本节要讲解的Adapter类控件是ExpandableListView,就是可折叠的列表,它是ListView的子类, 在ListView的基础上它把应用中的列表项分为几组…

作者头像 李华
网站建设 2026/4/17 13:59:41

【漏洞挖掘】简易JS逆向解码思路分享_js逆向 获取到path 怎么解决此漏洞

在实战的漏洞挖掘中阅读JS有以下几个作用: 1.JS中存在插件名字,根据插件找到相应的漏洞直接使用 通过控制台大致阅读网站JS代码发现此网页引用了北京的一家公司的代码,并且使用了h-net的框架,接下来我们可以百度这家公司或者是这…

作者头像 李华
网站建设 2026/4/12 7:59:19

用热爱浇筑专业:韩宁波的羽球教育初心录

韩宁波的羽球教育初心录:用热爱浇筑专业 一、初心萌芽:从赛场冠军到教育引路人 韩宁波的羽毛球生涯始于对胜利的渴望,却最终升华成对教育的执着。作为省级单打冠军,他在训练中曾遭遇技术瓶颈:正手杀球时速始终无法突…

作者头像 李华
网站建设 2026/4/17 22:10:29

操作自动化测试如何实现用例设计实例?

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快在编写用例之间,笔者再次强调几点编写自动化测试用例的原则:1、一个脚本是一个完整的场景,从用户登陆操作到用户退出系统关闭浏览…

作者头像 李华
网站建设 2026/4/19 4:33:19

如何编写一份优秀的测试报告?

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快什么是测试报告?1、说明:是指把测试的过程和结果写成文档,对发现的问题和缺陷进行分析,为纠正软件的存在的质量问题提…

作者头像 李华