基于51单片机的电子密码锁设计

概要

  
本课题为电子密码锁设计。该设计采用STC89C51控制器来进行关键部分的运作,主要包括主控部分、显示部分、报警部分、电磁锁控制、红外遥控接收以及电源。报警选择蜂鸣器。显示电方案选取LCD1602显示相关信息。用户可以通过键盘或者红外遥控输入密码数据,系统判断密码数据是否正确,来完成电子密码锁的开和关,键盘具有更改密码的作用。采用C语言进行软件设计,其开发上手容易,通过单片机的专用Keil设计工具来实现程序文件的执行,系统软件设计完成后,利用Proteus来完成对系统的验证,成功功能验证。并改善设计,完成系统设计要求。
关键词: STC89C51 密码锁 红外遥控

一、系统方案设计

2.1系统整体架构设计

  无线电子密码锁主要包括显示控制、键盘输入、主控制器、报警控制以及存储模块。在简易密码锁系统硬件设计中,选择单片机作为系统的核心控制原件,具体设计内容包含选取的超声波方案、单片机以及传感器的种类及型号,与此同时,我们还要根据各个部位零件设计显示模块;当我们设计系统软件的时候,最核心的内容为系统程序的设计,程序运算结果可由显示模块加以呈现。用户可以通过键盘或者红外遥控输入密码数据,系统判断密码数据是否正确,并进行开关锁的操作,密码如果输入有误,可以通过键盘重新更改输入正确的密码。系统结构框图如图2-1所示。
在这里插入图片描述

图2-1 系统整体框图

2.2主控制器方案

  方案一:以STC89C51单片机为例。这里我们针对51系列的单片机来研究讨论其功能,总体来讲,性价比还是很高的,它的安全系数很高,价格也不昂贵,功耗低,加密性强,并且对于STC系列的单片机来说,其能够进行在线的工作处理,更加方便。选用单片机STC89C51作为系统核心模块。51系列的单片机不论从性能还是价格等方面都有着很大的优势,运行稳定,性价比高,价格相对便宜,且功耗低,加密性强,此外在系统核心模块的选择上采用STC系列能够有效提高系统的工作效率,能够在工作状态下进行在线运行,让系统工作更加便捷。
  方案二:以MSP430系列的单片机为例进行研究分析。它的主要优点是片内存储的资源很广泛,运行速度比较快。而主要缺点是运作电压不是常见的+5V的,我们要另外添加+5V的转换电路;过压或者过流时都会击穿I/O口;另外内部没有EEPROM,不能实现数据的存储。设计中的查表算法非常有用。在这样的处理器进行代码设计,可以完成更加规范,完好的程序。此处理器最大的特点就是低功耗模式,此模式下运行能耗非常低,可以再很多有低能耗要求的场合进行使用。此低功耗模式,可以通过编程进行控制,灵活应用,非常方便。缺点:工作电压不是+5V的,需要额外增加+5V转换电路;过压或者过流时都会击穿I/O口;另外内部没有EEPROM,不能实现数据的存储。
  方案三:选择STM32F103RBT6处理器,并用型号ARM, 32位的M3核的CPU与之匹配,这种处理器运算相当快、采购成本低、功耗低的32位处理器。目前此处理器在大量的电子商品上进行使用,比如电子农业领域、电动汽车领域、共享行业等领域,这些领域都有使用此产品的例子。它的计算速度可以达到72MHz,有这么快的运转速度,是由于内部设备都可以进行高速操作,STM32最大的特点就是输入输出接口数量多。此款处理器还搭配了两个模数转换器,转换精度达到12个数据位,检测精度很高,可以处理18路模拟数据,处理器的模数转换的很多参数都可以进行代码控制、可编程操作,例如模数转换频率,多通道的扫描方式。
方案选择:由于设计需要低成本,器件使用效率也要达到最高,方案二还需要进行电源再转换,设计电路复杂,明显成本要高,方案一就可以满足整个系统设计要求,设计费用远小与另外两个方案,所以选择方案一。而方案三的利用率不能更好的提现,所以方案三也排除。

2.3显示方案设计

  方案一:LCD1602。该模块显示的内容多种多样,并且非常简单明了,价格合理,非常适合在本设计当中使用。尽管这款显示器在线路接口上显得有些复杂,接口太多,但这些接口无疑给设计后期对电路的测试与调试等提供了方便。最重要的是液晶的电源和系统电源一致,不用单独设计电源系统。LCD1602。该模块显示的内容多种多样,并且非常简单明了,价格合理,对于本设计而言,非常适用。虽然接口线连接的比较多,后期对整个电路进行测试时,就会非常容易得到测试结果。
  方案二:选用数码管作为显示器件。当前市场中用于数据的显示的数码管有很多,但在系统工作当中,每一个数值都需要对应一个数码管,一旦需要不止一个数值的显示的时候,相应的就会增加一定数的数码管,这就给整个设计带来了负担。同时数码管在进行动态扫描的时候,因为需要进行位置的移动,此时需要用移位器来进行辅助,只有将扫描的信息存储到移位器的寄存器当中才能够实现最后的显示功能,因此会出现很多LED方面的缺陷。此外,在电路测试当中也很容易会受到一些不必要的因素影响,所以该显示方案并不适合本设计。
  上述我们讲到LCD1602显示的内容多种多样,而且简单明了,但是 LED数码管显示的内容很少,只有普通的数字和少数字母,由于这次系统测控时需要显示的内容很多,所以最终选择方案一。

2.4无线方案设计

  方案一:这里我们分析的是安信可科技设计的ESP8266 系列模组,它是通过乐鑫ESP8266的低功耗UART-WiFi的基础上研究发现的模块,它的发明操作很简单,可以和云进行连接,移动设备可以和WiFi进行连接,完成智能数据传输,完成系统设计。产品集成度很高,整个设计集成在很小的一块PCB板上,引出了可用接口。模块的能耗非常小,内部的处理器是32位MCU,也可以进行16位操作,无线传输频率是80兆赫兹以及160兆赫兹,模块本身设计有天线,可以与网络进行通信,信息也可以通过云端智能传送,并且可以成立TCP/IP协议。模块能够的控制简单,用过AT指令就能够和单片机进行数据传输,控制WiFi模块。
  方案二:通过红外遥控进行控制,红外遥控只需要搭配红外接收头既可以进行信号接收,接收端对红外信号进行解释完成对按键的识别,不同的按键发出的红外信号波形不同,所以可以实现不同按键的操作。
  方案选择:由于方案一设计复杂,电路复杂,成本远高于方案二,所以选择方案二红外遥控控制。

二、系统电路设计

1 锁控制电路设计

锁控制硬件设计选取继电器进行实现。它主要作用于锁的开关。之所以采用它是因为单片机的IO电流相对很小,需利用PNP三极管来掌控它进行电路驱动。电路图参照以下图3-6所示。
在这里插入图片描述

图3-6 锁控制电路

2 红外遥控接收电路

红外遥控操作方式的软件制作作主要是解码的问题。将接收头硬件焊接好,给接收头接好电源,然后使用遥控器,通过示波器对接收头的输出信号波形进行观测。
编码总数有32位数,它的数据格式也分为几种,分别是引导码、用户码、数据码及其反码这四种格式。其中数据反码能够验证数据码的准确性,他们编码的顺序刚好是反过来的。一段编码脉冲一般只需108ms。用户码和数据码只有两种数值,即‘0’或者是‘1’。‘0’和‘1’的时序区别是脉冲和脉冲之间的时间间隔不同。如图3-7。
在这里插入图片描述

图3-7 红外遥控接收电路图

3 系统电路

无线电子密码锁虽然没有传统的机械锁那么笨重,但是它的内部组成却是很丰富的,它的系统电路构成也很复杂的,主要包括显示控制电路、键盘输入电路、主控制器电路、报警控制电路、红外遥控接收电路以及存储模块电路。电子密码锁的硬件电路设计图如图3-8所示。
在这里插入图片描述

图3-8 系统电路图

4 系统仿真

4.1.1仿真界面说明

本项目通过Proteus来对系统进行测验,点开用软件绘制的系统电路图,和代码进行联机调试。仿真设计图如图5-1。仿真包括矩阵键盘、液晶显示、掉电存储、键盘电路、密码锁继电器控制。
在这里插入图片描述

图5-1 仿真界面

4.1.2密码输入仿真

如何进行密码输入的仿真测验呢,一般我们会利用行列式键盘数字键敲下654321这样的6位初设密码数字,仿真液晶显示*****这样的画面参照下图5-2所示。与此同时,液晶显示输入密码,以号表示输入的数字密码。
在这里插入图片描述

图5-2 密码输入仿真

4.1.3开锁控制仿真

密码输入仿真验证正确之后,即可通过按键控制密码锁的开与关,点击确认键,表示密码输入完毕,此时就会进行开锁,如何肉眼看出锁已经开呢,就是通过继电器指示灯亮来判断的,这也意味着我们的密码输入没有错,并且继电器吸合。仿真界面如图5-3所示。
在这里插入图片描述

图5-3 密码锁控制仿真

四、 总结

  系统的硬件设计,需要按照方案进行系统各个功能的电路设计。硬件的设计会觉得软件的设计难度,比如接口的定义等,都会决定软件的设计。接口的定义会决定后期实物组装的布局,如果接口定义不理想,在实物组装的时候就会很难设计布局,需要从新绘制电路图,严重会造成最终实物设计线路错综复杂,好的接口设计就会让线路设计美观、可靠。硬件电路设计也需要考虑后期调试便捷、方便,不可以只想这功能,调试也是非常重要的一个环节。
  软件设计,需要按照功能进行,不可以整体进行,一个功能一个功能调试,代码要模块化设计,很多时候代码的BUG都是一些很简单的问题,有时候一个简单的问题,会调试很多天,所以代码设计方式很重要,而模块化代码设计就是最为常用的方案。模块化设计方便后期更改,查看漏洞也非常方便。
  最终要对硬件、软件进行统一调试,焊接组合成一个整体并对其进行试运来检验设计是否合理有效。如果在检测系统上设计的更好完美,使用的场合会更多,但因为受到时间的限制,设计过程中没有时间也没有过多的精力去研究更多的传感器。

五、 文章目录

目录
内容摘要 I
Abstract II
第一章 绪论 1
1.1研究的目的与意义 1
1.2国内外研究现状 1
1.3课题研究内容 2
第二章 系统方案设计 3
2.1系统整体架构设计 3
2.2主控制器方案 3
2.3显示方案设计 4
2.4无线方案设计 5
第三章 系统电路设计 6
3.1单片机控制模块电路设计 6
3.2键盘扫描模块电路设计 7
3.3密码存储电路 8
3.4液晶显示电路 8
3.5报警电路 9
3.6锁控制电路设计 10
3.7红外遥控接收电路 10
3.8系统电路 10
第四章 系统软件设计 12
4.1整体流程 12
4.2液晶显示 13
4.3按键识别 14
4.4密码设置子程序 15
4.5红外遥控解码原理 16
第五章 系统测试仿真 18
5.1 系统仿真 18
5.1.1仿真界面说明 18
5.1.2密码输入仿真 18
5.1.3开锁控制仿真 19
5.2实物测试 20
5.2.1实物上电测试 20
5.2.2实物密码输入上电测试 20
5.2.3实物开锁上电测试 21
5.2.4实物密码输入错误上电测试 21
5.2.5 实物密码修改上电测试 22
结论 23
参 考 文 献 24
致谢 25

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
电子密码锁是一种智能化的锁具,它通过电子技术实现对门的开关控制,可以有效地提高房屋或办公室的安全性。在本篇文章中,我们将介绍如何基于51单片机设计一个简单的电子密码锁设计思路: 电子密码锁设计思路是通过51单片机控制密码输入与门的开关控制。设计需要采用矩阵键盘作为输入设备,将输入的密码与预设密码进行比较,如果相同,则控制门的开关。 硬件设计电子密码锁的硬件设计主要包括以下几个部分: 1. 51单片机控制模块:选择STC89C52RC单片机作为控制模块,具有较强的处理能力和稳定性。 2. 矩阵键盘输入模块:选择4x4的矩阵键盘,通过51单片机的IO口读取用户输入的密码。 3. 驱动电路模块:选择继电器作为驱动装置,通过继电器控制门的开关。 4. 电源模块:选择12V电源,通过稳压电路提供5V电压给单片机和其他电路元件。 软件设计电子密码锁的软件设计主要包括以下几个部分: 1. IO口初始化:设置51单片机的IO口为输入或输出状态。 2. 矩阵键盘扫描:通过循环扫描矩阵键盘,读取用户输入的密码。 3. 密码比较:将用户输入的密码与预设密码进行比较,如果相同,则控制门的开关。 4. 继电器控制:通过控制继电器开关实现门的开关。 总结: 本文介绍了基于51单片机设计电子密码锁的方法。通过矩阵键盘输入密码,将输入的密码与预设密码进行比较,实现对门的开关控制。该电子密码锁具有较高的安全性和可靠性,可应用于家庭、办公室等多种场所。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值