-
基于单片机的电子密码锁设计
2020-09-23 21:38:36基于单片机控制的电子密码锁 摘要:本系统由单片机系统、矩阵键盘、LED显示和报警系统组成。系统能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能...基于单片机控制的电子密码锁
摘要:本系统由单片机系统、矩阵键盘、LED显示和报警系统组成。系统能完成开锁、超时报警、超次锁定、管理员解密、修改用户密码基本的密码锁的功能。除上述基本的密码锁功能外,还具有调电存储、声光提示等功能,依据实际的情况还可以添加遥控功能。本系统成本低廉,功能实用
关键词:STC89C52,AT24C02, 电子密码锁,矩阵键盘
一、 引言
随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲呢。
设计本课题时构思了两种方案:一种是用以AT89s51为核心的单片机控制方案;另一种是用以74LS112双JK触发器构成的数字逻辑电路控制方案。考虑到数字电路方案原理过于简单,而且不能满足现在的安全需求,所以本文采用前一种方案。
二、方案论证与比较
方案一:采用数字电路控制。其原理方框图如图1-1所示。
用数字密码锁电路的好处就是设计简单。用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过40秒(一般情况下,用户不会超过40秒,若用户觉得不便,还可以修改)电路将报警80秒,若电路连续报警三次,电路将锁定键盘5分钟,防止他人的非法操作。
电路由两大部分组成:密码锁电路和备用电源(UPS),其中设置UPS电源是为了防止因为停电造成的密码锁电路失效,使用户免遭麻烦。
密码锁电路包含:键盘输入、密码修改、密码检测、开锁电路、执行电路、报警电路、键盘输入次数锁定电路。
方案二:采用一种是用以AT89S51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能。其原理如图1-2所示。
通过比较以上两种方案,单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级,所以我们采用后一种方案。
三、电路的功能单元设计
1.开锁机构
通过单片机送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图2-1所示。
当用户输入的密码正确而且是在规定的时间(普通用户要求在12s内输入正确的密码,管理员要求在5s输入正确的密码)输入的话,
电路驱动和开锁两级组成。由D5、R1、T10组成驱动电路,其中T10可以选择普通的小功率三极管如9014、9018都可以满足要求。D5作为开锁的提示;由D6、C24、T11组成。其中D6、C24是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。T11可选用中功率的三极管如8050,电磁锁的选用要视情况而定,但是吸合力要足够且由一定的余量。
在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。
2.按键电路设计
由于设计要求使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如图2-3所示。
每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。
在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。
当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。
对照图2-3所示的44键盘,说明线反转个工作原理。
全套资料免费下载:
关注v-x-公-众-号:【嵌入式基地】
后-台-回-复:【毕业设计】 即可获资料
回复【编程】即可获取
包括有:C、C++、C#、JAVA、Python、JavaScript、PHP、数据库、微信小程序、人工智能、嵌入式、Linux、Unix、QT、物联网、算法导论、大数据等资料
-
基于单片机的电子密码锁设计.rar
2019-09-12 18:22:17基于单片机的电子密码锁设计rar,基于单片机的电子密码锁设计 -
基于单片机的电子密码锁设计论文
2010-05-11 22:36:56我觉得这是一个非常好的论文资料,希望可以帮助正在愁毕业设计的同学。 -
基于单片机的电子密码锁设计开题报告
2010-12-28 20:56:56成为人们日常生活红必不可少的用品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字时钟的精度,远远超过了老式钟表,钟表数字化给人们生产生活带来了极大地方便和提高。数字时钟大大地扩展了钟表原先... -
(电子行业)企业管理基于单片机的电子密码锁的课程设计优品.doc
2020-08-06 10:13:37前言 (电子行业)企业管理基于单片机的电子密码锁的课程设计 基于单片机的电子密码锁设计 摘要 在日常的生活和工作中,住宅与部门的安全防范单位的文件档案财务报表以及一些个人资料的保存多以加锁的办法来解决若使用... -
(电子行业)企业管理基于单片机的电子密码锁的课程设计.pdf
2020-08-09 19:12:33(电子行业)企业管 理基于单片机的电子密 码锁的课程设计 基于单片机的电子密码锁设计 摘要 在日常的生活和工作中 ,住宅与部门的安全防范单位的文件档案 财务报表以及一些个人资料的保存多以加锁的办法来解决若使用传... -
基于单片机的电子密码锁系统的设计
2018-10-14 17:54:15基于单片机的电子密码锁系统的设计 该项目包括原理图电路图 程序源码 演示视频讲解文档全套资料 三分拿去 超值了 -
基于51单片机的电子密码锁设计
2020-03-26 15:35:06基于单片机的电子密码锁,通过密码输入来控制芯片工作,完成开锁、闭锁、修改密码等任务的电子产品。 具有保密性高、成本低、功耗低、操作简单,使用灵活性好等特点。1、设计需求
基于单片机的电子密码锁,通过密码输入来控制芯片工作,完成开锁、闭锁、修改密码等任务的电子产品。它具有保密性高、成本低、功耗低、操作简单,使用灵活性好等特点。
由AT89S52单片机+AT24C02数据存储模块+按键模块+LCD1602显示+报警模块等构成
具体功能:
1、输入密码,且输入的密码显示在液晶显示屏上;
2、按下“DorBell”后,会响起门铃声;
3、初始密码为“1234”,输入正确后,显示“OK”,并且LED灯闪烁,表示开门;
4、输入密码错误后,显示“Eror”,三次输入错误后会报警;
5、按下“DELE”,清除输入的密码;2、 设计思路及方案
本设计采用了AT89C51单片机电子锁系统,进行初始化设置,启动密码锁功能,密码输入显示屏幕采用了LCD液晶显示屏。该系统控制指令通过单片机进行实现,单片机根据实际操作情况分配部件工作内容,程序操作性强、方便简洁。在用户输入密码过程中,单片机将会采用矩阵按键布局模式记录当前输入密码,并将该密码与系统设置密码进行比对,若密码匹配则开启密码锁,若密码错误则需要用户按下删除键重新输入密码。当用户输入密码错误次数超过3次,电子密码锁将会自动锁定,需要用户切换管理员模式输入管理员密码才可解锁当前状态,并重新输入解锁密码。硬件原理图如图所示。
资料获取请关注微信公众号“电子工程师成长日记”,回复关键词:“资料”!
-
一种简单基于51单片机的电子密码锁设计应用
2020-08-08 00:12:57本文给读者介绍了一种简单基于51单片机的电子密码锁设计应用方案,供读者参考。 -
(电子行业)企业管理基于单片机电子密码锁的课程设计优品.doc
2020-08-06 10:14:22蒋先龙基于单片机的电子密码锁设计 PAGE II (电子行业)企业管理基于单片机电子密码锁的课程设计 DesignofElectricPasswordLockBasedonMCU Abstract Aspeople'slivingstandardsimprove,... -
一种简单的基于51单片机的电子密码锁设计
2021-01-19 18:47:58结合这种情况,本文对单片机的电子密码锁的设计进行了分析和探究。 1 单片机电子密码锁的背景和设计特点 在高科技迅速发展的今天,人们已经发明了密码锁、电子锁和激光锁等多种形式。这些锁在传统钥匙的基础上... -
单片机与DSP中的一种简单的基于51单片机的电子密码锁设计
2020-10-20 12:17:34结合这种情况,本文对单片机的电子密码锁的设计进行了分析和探究。 1 单片机电子密码锁的背景和设计特点 在高科技迅速发展的今天,人们已经发明了密码锁、电子锁和激光锁等多种形式。这些锁在传统钥匙的基础上... -
基于51单片机的电子密码锁设计-完整源程序.zip
2020-03-26 15:24:42基于单片机的电子密码锁,通过密码输入来控制芯片工作,完成开锁、闭锁、修改密码等任务的电子产品。它具有保密性高、成本低、功耗低、操作简单,使用灵活性好等特点。 附件包含源代码 -
基于单片机智能电子密码锁设计(毕业设计资料)
2020-12-04 22:39:57针对此现状设计一款安全可靠廉价的电子密码锁有着十分重要的意义。本设计以AT89C51为主控芯片,带有一个密码输入键盘、外围时钟复位电路、存储单元24C04、显示单元1602LCD,通过LED灯的亮与灭表示电子锁的锁闭与打开...摘要:随着信息技术的不断发展,信息化时代也逐步进入普通家庭,人们对个人的信息安全以及隐私等私密信息的安全要求不断提高,传统的机械锁已经不能满足要求。针对此现状设计一款安全可靠廉价的电子密码锁有着十分重要的意义。本设计以AT89C51为主控芯片,带有一个密码输入键盘、外围时钟复位电路、存储单元24C04、显示单元1602LCD,通过LED灯的亮与灭表示电子锁的锁闭与打开。利用单片机灵活的编程设计和丰富的IO端口,能实现密码锁的基本功能。用户可以任意设置密码增加了密码锁的保密性,同时如果增加指纹识别、光电识别能进一步增加密码锁的保密性。为了提高可读性采用了1602作为显示单元,使用户对密码锁的运行情况一目了然。
关键词:单片机;电子密码锁;24C04;1602LCD;汇编语言; 程序设计
下载链接:
链接:https://pan.baidu.com/s/1bMnNEv0cCAdTZ4xYCa3rtQ
提取码:hj9e
复制这段内容后打开百度网盘手机App,操作更方便哦010【毕业设计】基于单片机智能电子密码锁设计
#include <reg51.h> #include <string.h> #include <intrins.h> #define uchar unsigned char #define uint unsigned int #define LCDIO P0 #define delay4us() _nop_(); _nop_(); _nop_(); _nop_(); uchar buffer[6] = { 0 }; sbit sda = P3 ^ 3; /* 数据线 */ sbit scl = P3 ^ 2; /* 时钟线 */ sbit beep = P3 ^ 7; /* 蜂鸣器 */ bit flag = 0, aa; /* 用户自定义定时溢出标志位 */ uchar DSY_BUFFER[16] = " "; uchar DSY_BUFFER1[16] = " "; uchar Userpassword[6] = { 0 }; sbit rs = P2 ^ 0; /* rs rd决定选择哪一个寄存器 */ sbit rd = P2 ^ 1; sbit e = P2 ^ 2; sbit led = P2 ^ 7; sbit men = P2 ^ 3; uchar code table2[] = "654321"; uchar code table[] = "Your Password..."; void delayms( uint z ) /* 延时1毫秒 */ { uint x, y; for ( x = z; x > 0; x-- ) for ( y = 110; y > 0; y-- ) ; } void delay() /* 短延时,两个机器周期,做总线的延时用 */ { ;; }
-
基于单片机的电子密码锁的设计
2012-06-12 17:10:151、密码的设定,此密码是固定在程序存储器ROM中,假设预设的密码为“12345”共5位密码。 2、密码的输入: 采用两个按键来完成密码的输入,其中一个按键为功能键,另一个按键为数字键。在密码都已经输入完毕并且确认... -
基于STC12C5A60S2单片机的电子密码锁设计.pdf
2019-09-12 16:25:37基于STC12C5A60S2单片机的电子密码锁设计是以STC12C5A60S2单片机为控制核心的密码锁方案,配合相应的基于STC12C5A60S2单片机的电子密码锁电路和基于STC12C5A60S2单片机的电子密码锁软件程序,实现基于STC12C5A60S2... -
基于51单片机的电子密码锁系统设计.zip
2020-12-28 16:27:36此为微控制器设计的一个电子密码锁的一个系统,利用51单片机进行设计,在proteus上设计出原理图,在keil软件上编写C语音程序一次实现电子密码锁的仿真设计。该资源包含了源文件和程序。可用于电子信息类的毕业或课程... -
基于单片机的指纹识别电子密码锁设计
2014-01-04 17:06:55基于单片机的指纹识别电子密码锁设计基于单片机的指纹识别电子密码锁设计 -
论文研究-基于AT89S52单片机的电子密码锁设计 .pdf
2019-08-16 17:33:27基于AT89S52单片机的电子密码锁设计,徐翔,,本文介绍了一种基于AT89S52单片机的电子密码锁的设计方法。该设计以AT89S52单片机为硬件核心,结合4×4矩阵键盘电路、 LCD显示电路、密�� -
基于STC89C52单片机的电子密码锁设计
2020-08-07 06:34:21本文采用STC89C52单片机设计的电子密码锁,利用内部E2PROM资源,不需要外接程序存储器就能完成修改密码等多种功能,并且保密性高、成本低、简单易行,符合住宅、部门办公安全要求。 -
基于C51单片机的电子密码锁课程设计.docx
2020-03-19 12:55:59指导教师 10/11 学年第二学期 单片机控制系统设计与调试 课程设计任务书 班级 地点机房单片机实验室 课程设计题目密码锁的设计 一 课程设计目的 灵活运用单片机的基础知识依据课程设计内容能够完成从硬件电路 图设计... -
基于单片机的电子密码锁报告.docx
2020-07-30 13:20:46单片机虽然现在过时了,比起嵌入式最后的优势也快没了,但是我们学习的时候往往是从单片机学起的,本文将带你学习单片机的课程设计总体框架,带你进一步了解单片机 -
基于51单片机的的电子密码锁设计.rar
2020-04-26 16:21:56基于51单片机的带记忆功能的电子密码锁设计。 设计要求:1、利用51系列单片机为核心,矩阵键盘与LCD1602液晶显示屏组成硬件系统,设计一款电子密码锁; 2、该密码锁具有设置、修改六位用户密码、超次报警、超次锁定... -
单片机开发0172、基于单片机的指纹识别电子密码锁设计.zip
2020-04-09 11:53:04单片机开发0172、基于单片机的指纹识别电子密码锁设计.zip -
基于AT89S51单片机的电子密码锁的设计
2010-12-29 17:09:02基于AT89S51单片机的电子密码锁的设计 -
基于单片机的电子密码锁1602液晶显示设计
2020-09-29 21:52:40} } } } 全套资料免费下载: 关注v-x-公-众-号:【嵌入式基地】 后-台-回-复:【毕业设计】 即可获资料 回复【编程】即可获取 包括有:C、C++、C#、JAVA、Python、JavaScript、PHP、数据库、微信小程序、...文末下载完整资料
仿真
程序
//×÷ÕßQQ:497259320 //ÍøÕ¾http://proteus.5d6d.com //ÄÏÑôÀí¹¤Ñ§Ôº //ѧϰÊÇÒÅÍüµÄ×îºÃµÄ·½Ê½ //Ö»»¨Á˺ÜÉÙʱ¼äдµÄ,Óкܶ಻×ãµÄËã·¨Óë±à³ÌÐò·½Ê½,¼ûÁÂ! #include"at89x51.h" #include"key.h" #include"lcd.h" uchar code show_0[]="Please input the password:"; uchar code show_1[]="The cipher is:" ; uchar code show_2[]="********"; uchar code show_3[]="The password is wrong!"; uchar code show_4[]="This is the last time,"; uchar code show_5[]="Please try it tomorrow!"; uchar code show_6[]="you are right!"; uchar code show_7[]="Please input the new cipher:"; uchar code show_8[]="Input it again!"; uchar code show_9[]="Establishes successful! "; uchar code show_10[]="(^_^)"; uchar init_pswd[]={8,8,8,8,8,8,8,8}; uchar pswd[8]={0}; uchar pswd_1[8]={0}; void play(uchar *j,uchar k) //KÊÇÏÔʾµÄ¸öÊý,jÊǵØÖ· { uchar i; for(i=0;i<k;i++) { dat_w(*(j+i)); delay(20); } } main() { uchar j=0,i=0,sum_1=0; loop:init(); clear(); gotoxy(1,0); play(show_0,16); gotoxy(2,0); play(show_0+17,10); /****ÃÜÂëÊäÈë****/ do { key(); } while(ki!=15); clear(); gotoxy(1,0); play(show_1,15); do { flag=0; key(); gotoxy(2,0); if(flag==1&&ki<=9) { pswd[i]=ki; play(show_2,i); i++; } if(ki==14) //14ÔòÍ˳ö. break; } while(i<=8); for(i=0;i<=7;i++) { sum_1=init_pswd[i]-pswd[i]+sum_1; if(sum_1!=0) { clear(); j++; if(j==3) { clear(); gotoxy(1,0); play(show_4,16); gotoxy(2,0); play(show_4+16,14); delay(500); delay(500); clear(); gotoxy(1,0); play(show_5+7,16); gotoxy(2,5); play(show_10,5); while(1); //Èý´ÎÊäÈëÃÜÂëʧ°Ü,×ÔËø } gotoxy(1,0); play(show_3,16); gotoxy(2,5); play(show_3+15,7); delay(500); clear(); gotoxy(1,0); play(show_8,15); goto loop; } if(sum_1==0) { clear(); gotoxy(1,0); play(show_6,15); do { key(); } while(ki!=13); loop1:clear(); gotoxy(1,0); play(show_7,13); gotoxy(2,0); play(show_7+13,15); /****µÚÒ»´ÎÊäÃÜÂë***/ i=0; do { flag=0; key(); if(flag==1&&ki<=9) { pswd[i]=ki; i++; clear(); gotoxy(1,0); play(show_2,i); } }while(i<=7); clear(); gotoxy(1,0); play(show_8,15); /***µÚ¶þ´ÎÊäÃÜÂë****/ i=0; sum_1=0; do { flag=0; key(); if(flag==1&&ki<=9) { pswd_1[i]=ki; i++; clear(); gotoxy(1,0); play(show_2,i); } } while(i<=7); for(i=0;i<=7;i++) { sum_1=sum_1+ pswd_1[i]-pswd[i]; } if(sum_1==0) { clear(); gotoxy(1,2); play(show_9,12); gotoxy(2,2); play(show_9+13,11); for(i=0;i<=7;i++) { init_pswd[i]=pswd[1]; } while(1); } if(sum_1!=0) { clear(); goto loop1; } } } }
全套资料免费下载:
关注v-x-公-众-号:【嵌入式基地】
后-台-回-复:【毕业设计】 即可获资料
回复【编程】即可获取
包括有:C、C++、C#、JAVA、Python、JavaScript、PHP、数据库、微信小程序、人工智能、嵌入式、Linux、Unix、QT、物联网、算法导论、大数据等资料