单片机密码锁设计

1 引言设计目的随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。

电子密码锁就是通过键盘输入一组密码完成开锁过程。

研究这种锁的初衷,就是为提高锁的安全性。

目前,国内自行研制开发的电子锁,应用还不广泛。

国内的不少企业也引进了世界上先进的技术,发展前景非常可观。

希望通过不断的努力,使电子密码锁在我国也能得到广泛应用。

设计要求本次课程设计要求使我们能够掌握并且实际运用课本知识。

通过利用所学的电子技术知识正确分析并设计电路, 将适当电路运用到实际电路中, 将课本知识转化为实际能力。

设计方法(1)系能够从键盘中输入密码,并相应地在显示器上显示, *;能够判断密码是否正确,正确则开锁,错误则输出相应信息。

(2)密码由程序直接设定,不可用户自己设定。

(3)具有自动报警功能。

密码不正确,相应红灯亮,蜂鸣器发出报警声来提示。

(4)具有手动复位功能。

2 设计方案及原理系统总体设计根据以上分析,本次电子密码锁设计的主要重点是以下几个部分:4x3 矩阵键盘设计、LCD 信息显示和密码的比较和处理。

当然,除了这几个部分外还有报警等功能模块。

其中矩阵键盘用于输入数字密码和进行各种功能的实现。

由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路是报警。

系统整体框图如图 1 所示。

本设计硬件资源分配~用于LCD 液晶显示作用。

、用于蜂鸣器和报警灯的控制。

用于开锁电路的控制。

~用于键盘电路的控制。

~用于LCD 显示模块的控制端口的控制。

3 硬件设计芯片选择本次设计采用AT89C51 贴片芯片,AT89C51是一个低电压,高性能CMOS 8 位单片机,通过用Keil 软件编写程序,然后装到单片机里面去,然后让它对整个系统进行信息的处理,如可以让它处理矩阵键盘传过来的信息,并根据编好的程序来确定哪个按键按下,并处理相应按键对应的功能,然后把相应的信息反应到单片机的各个引脚,来实现按键实现的现象,如:显示是否开启锁,报警等。

AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器128 字节内部RAM,32 个I/O 口线两个16 位定时/计数器,一个5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51 可降至0Hz 的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU 的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

AT89C51 的引脚图如图2 所示。

单片机最小系统设计单片机最小系统就是指能使单片机工作的最少的器件构成的系统。

因为单片机已经包含了数据存储器和程序存储器,所以只要在其外部加上时钟电路和复位电路就可以构成单片机最小系统。

(1)单片机工作需要晶振给CPU提供频率,时钟电路就是给单片机提供晶振频率的电路。

图 3 是时钟电路的PROTEUS 仿真图。

单片机允许的振荡晶体可在~24MHz之间选择,一般为,电容C2,C3的取值对振荡频率输出的稳定性、大小及振荡电路起振速度有一定的影响,可在20~100pF之间选择,典型值位30pF(2)计算机每次开始工作,CPU和系统中的其他部件都必须要有一个确定的初值,即复位状态。

图4是单片机复位电路仿真图。

单片机RST引脚是高电平有效。

单片机在上电瞬间C1充电,RST引脚端出现正脉冲,只要RST断保持两个机械周期(大约10ms)以上的高电平,单片机就能复位。

在单片机工作后,如果还想再次复位,只需按下开关,单片机就能重新变成复位状态。

当晶体振荡频率为12MHz时,RC的典型值为C=10μF,R=Ω。

矩阵键盘设计一组键或者一个键盘,需要通过接口电路和CPU相连接,CPU可以采用查询接口或者中断的方式了解有没有键被按下,并检查是哪个键被按下。

无论是查询方式还是中断方式都要用到单片机的I/O口。

由于单片机I/O口较少的原因,当系统中需要用到较多按键时,为了能够更合理更有效地利用单片机的I/O口,一般采用矩阵键盘的方式来实现多按键的功能。

图 5 是4x3 矩阵键盘在PROTEUS 中的电路原理仿真图。

矩阵键盘又叫做行列式键盘。

行列式键盘的硬件结构比较简单,由行输出口和列输出口构成行列式键盘,按键设置在行、列交点上。

只有当键被按下时相应的行和列才能相连。

如此,只要检测行和列是否相连就可以知道是否有键按下。

由于按键设置在行、列线交点上,行、列分别连接到按键开关的两端,平时无键按下时,行线处于高电平,假设列线为低电平,当有键按下时,按下的键就会将相应的行和列连通,使得对应的行线被列线拉低,也变为低电平。

这就是识别矩阵键盘是否有键被按下的关键。

当确定有键被按下时,通过逐行扫描,读出I/O口的值可以知道哪一行的值被改变了,被改变了的行即是被按下的按键所在行。

同时,由于每个键都有它的行值和列值,行值和列值得组合就是这个按键的编码,当算法一定时,每个按键的编码是固定的,且各个按键的编码互不相同,所有通过读I/O的值还能具体知道是哪一个键被按下,这样就实现了键盘的识别。

LCD显示模块设计LCD1602是一种字符型液晶显示器,是一种专门用于显示字母、数字、符号等的点阵式液晶显示器。

LCD1602的显示容量为16x2个字符(可以显示2行,每行显示16个字符),芯片工作电压为~,工作电流为(),模块最佳工作电压是。

LCD1602具有16个引脚。

在LCD1602的有关设计中,主要是通过编写程序控制LCD1602的4、5、6引脚来实现数据或者指令的写入和执行,再通过数据或者指令的写入和执行来进一步实现LCD1602的显示功能。

查资料了解在仿真库中用lm016l代替LCD602图6是PROTEUS 中显示模块的仿真图。

由于LCD要正常工作必须提供足够的电流,因此在实际应用为了保证显示器能够正常工作,应在数据端口接一上拉电阻,不过此次仿真就没有另外加上拉电阻。

报警模块、开锁模块以及表示模块开锁模块用继电器带一个LED管代替电磁锁。

电路如图7所示;报警模块用蜂鸣器表示,电路如图8所示;表示模块用发光二极管表示开锁与否。

硬件连接图根据电路原理,在PROTEUS中画出各功能模块的仿真图,各个功能模块验证正确后,将所有模块集合到一个电路设计图中,画出具有所有功能的总体硬件仿真图。

在设计过程中,采用单片机AT89C51作为主控芯片,结合键盘输入、显示电路、报警电路、开锁电路、时钟电路、晶振电路,利用合理的连线接成硬件连接图,在Proteus软件平台上选中合适的AT89C51芯片,LCD显示器,键盘,以及其它电子元件,接成电路。

设计原理系统工作时,用户通过按键输入 6 位密码,单片机将输入密码与设定密码进行比较,若密码正确,则相应绿灯闪烁,同时发出开锁信号,将门打开,系统不报警;若密码不正确,则相应的红灯亮闪烁,同时蜂鸣器发出报警声音。

4 软件设计程序设计C 语言编程,源程序清单如附录1 所示。

程序流程图流程图如图4。

5 系统仿真及实际调试仿真图仿真结果密码正确,LCD 显示器显示“open”,绿灯亮。

仿真图如附录 2 所示。

问题分析电源、晶振电路和复位电路都无异常,LCD 显示时出现问题:(1)刚开始蜂鸣器声音太小几乎听不清楚,后来加了一个三极管放大后声音变大。

(2)接通电源开门灯和报警电路就会工作,分析原因是单片机刚开始各个管脚输出低电平。

(3)开锁电路完成后继电器不吸起,后来经过调试加三极管等等方法后实现了继电器吸起LED 灯亮。

6 总结本次设计,采用单片机AT89C51 作为主控芯片,结合外围的键盘输入、显示、报警、开锁等电路,用 C 语言编写主控芯片的控制程序,设计了一款具有报警功能的电子密码锁。

对于本次单片机课程设计,我觉得十分有意义且很有必要。

课堂上,我们大多数接触的仅仅是专业课的理论知识,如何去锻炼我们的实践能力如何把我们所学的专业基础课理论知识运用到实践中去呢像此次课程设计就为我们提供了良好的实践平台。

过程中我发现了很多问题,看似很简单的电路,要动手把它给设计出来,是很难的一件事,主要原因是我没有经常动手设计过电路,还有资料的查找也是一大难题,这就要求我在以后的学习中,应该注意到这一点,更重要的是我要学会把从书本中学到的知识和实际的电路联系起来,这不论是对我以后就业还是学习,都会起到很大的促进和帮助,我相信,通过这次的毕业设计,在以后的学习中我会更加努力,力争把这门课学好,学精。

同时,通过本次毕业设计,巩固了我学习过的专业知识,也使我们把理论与实践从真正意义。

另外,通过这两周对电子密码锁的研究和学习,我认为本次设计中使用的这种键盘输入密码的方式可以进行改革。

在越来越高科技化的今天,遥控控制显的愈发重要,今后的电子密码锁应该具有以红外技术或无线电技术为辅助的密码按键输入远程交互技术,这样就能远程输入密码完成操作。

也可以放弃传统的按键输入密码模式,借助传感器技术运用声控来实现密码输入,又或者使用人脸识别技术,或者用户指纹识别技术代替传统的按键输入,这些都可以使开锁的时间更短更方便,同时使锁更安全。

最后也感谢指导老师这两周对我课设中存在的问题进行详细的解答与帮助。

参考文献[1] 谢自美.电子线路设计实验测试[M]. 武汉:华中理工大学出版社,1992.[2] 刘湘涛.江世明.单片机原理与应用[M]. 北京:电子工业出版社,2006.[3] 李光才.单片机课程设计实例指导[M]. 北京:北京航空航天大学出版社,2004.[4] 王思明等编著.单片机原理及应用系统设计.北京:科学出版社,2012.附录 1 源程序#include<>#include<>#define uchar unsigned charsbit rs=P1^0; //寄存器选择位将rs 定义为的引脚sbit rw=P1^1; //读写选择位将rw定义为的引脚sbit en=P1^2; //使能信号位将en定义为的引脚sbit ledg=P2^0;sbit ledr=P2^1;sbit relay=P1^4;sbit buzz=P1^5;char table0[]="error";char table1[]="open";char table2[]="password:"; //inttemp,ch,m0,m1,p,n0,n1,n2,n3,n4,n5;void delay(int z){int x,c;for(x=z;x>0;x--) for(c=100;c>0;c--); }keyscan(){temp=P1&0xf0; P1=0xfe;delay(1);temp=P1&0xf0; while(temp!=0xf0) { switch(temp) {case 0xe0:ch='7'; break;case 0xd0:ch='8'; break;case 0xb0:ch='9'; break;default:ch=p; break;}while(temp!=0xf0) {temp=P1;temp=temp&0xf0; }}P1=0xfd;delay(1);temp=P1&0xf0; while(temp!=0xf0) {switch(temp) {case 0xe0:ch='4'; break;case 0xd0:ch='5'; break;case 0xb0:ch='6'; break;default:ch=p; break;}while(temp!=0xf0){ temp=P1;temp=temp&0xf0;}}P1=0xfb;delay(1);temp=P1&0xf0;while(temp!=0xf0){switch(temp){case 0xe0:ch='1';break;case 0xd0:ch='2';break;case 0xb0:ch='3';break;default:ch=p;break;}while(temp!=0xf0){temp=P1;temp=temp&0xf0;}}P1=0xf7;delay(1);temp=P1&0xf0;while(temp!=0xf0){switch(temp){case 0xe0:ch='A';break; case 0xd0:ch='0';break; case 0xb0:ch='B';break; default:ch=p;break;}while(temp!=0xf0){temp=P1; temp=temp&0xf0; }return ch;}void wcom(uchar com){ rs=0;P0=com;delay(1); //写命令延时可以为1en=1;delay(1); //写命令延时可以为1en=0;}void wdat(uchar dat){rs=1;P0=dat;delay(1); //此处写数据延时可以为1en=1; delay(4); //此处写数据延时至少为 4en=0;}void init(){en=0;wcom(0x38);wcom(0x0c);wcom(0x06);wcom(0x01);}void error(){char m2;wcom(0xc6);for(m2=0;m2<5;m2++){wdat(table0[m2]);}}void open(){char m2;wcom(0xc6);for(m2=0;m2<4;m2++)wdat(table1[m2]);}}void pass(){char m2;wcom(0x80);for(m2=0;m2<9;m2++) {wdat(table2[m2]);}}change(int m){delay(500);wcom(m);wdat('*');}main(){rw=0;ledg=0;ledr=0;relay=0;buzz=0;init();delay(5);pass();wcom(0x89);while(keyscan()==p) {delay(3);keyscan();}wdat(keyscan());n0=keyscan(); change(0x89);delay(10);ch=p;while(keyscan()==p) {delay(3);keyscan();wdat(keyscan());n1=keyscan();change(0x8a);ch=p;while(keyscan()==p){delay(3);keyscan();}wdat(keyscan());n2=keyscan();change(0x8b);ch=p;while(keyscan()==p){delay(3);keyscan();}wdat(keyscan());n3=keyscan();change(0x8c);ch=p;while(keyscan()==p){delay(3);keyscan();}wdat(keyscan());n4=keyscan();change(0x8d);ch=p;while(keyscan()==p){delay(3);keyscan();}wdat(keyscan());n5=keyscan();change(0x8e);if(n0=='2'&&n1=='0'&&n2=='1'&&n3= ='4'&&n4=='1'&&n5=='9'){int m3=1;open();relay=1;delay(3000);relay=0;while(m3){int m4,m5;ledg=0;for(m4=200;m4>0;m4--){keyscan();if(keyscan()=='A'){m4=0;m3=0;}} ledg=1;if(m3!=0){for(m5=200;m5>0;m5--){keyscan();if(keyscan()=='A'){m3=0;}}}}}else{ledr=1;error();buzz=1;delay(5000);}} 精心搜集整理,只为你的需要。

合集下载

单片机电子密码锁设计

单片机电子密码锁设计

单片机电子密码锁设计一、设计背景随着科技的不断发展,传统的机械锁已经不能满足人们对于安全性和便捷性的需求。

电子密码锁具有保密性好、操作方便等优点,逐渐取代了传统机械锁。

单片机作为一种集成度高、功能强大的微控制器,为电子密码锁的设计提供了良好的硬件基础。

二、系统总体设计本电子密码锁系统主要由单片机控制模块、键盘输入模块、显示模块、存储模块和开锁控制模块等部分组成。

单片机控制模块是整个系统的核心,负责处理输入信息、控制各个模块的工作以及进行密码的验证和存储。

键盘输入模块用于用户输入密码,通常采用 4×4 矩阵键盘,可实现数字 0 9 以及确认、取消等功能按键的输入。

显示模块用于显示系统的相关信息,如输入的密码、提示信息等。

常见的显示方式有液晶显示屏(LCD)和数码管显示。

存储模块用于存储设置的密码,以便系统在断电后仍能保存密码信息。

EEPROM 存储器具有掉电不丢失数据的特点,适合用于密码存储。

开锁控制模块在密码验证通过后,控制电磁锁或电机等执行机构完成开锁动作。

三、硬件设计1、单片机选型选择一款合适的单片机是系统设计的关键。

常用的单片机有 51 系列、STM32 系列等。

51 系列单片机价格低廉、开发简单,适合本设计的需求。

2、键盘接口电路采用行列式扫描的方式实现 4×4 矩阵键盘的接口电路。

通过单片机的 I/O 口依次扫描行线和列线,判断按键的按下状态。

3、显示电路如果选择液晶显示屏(LCD),则需要通过单片机的并行接口或串行接口与 LCD 控制器进行通信,实现字符和图形的显示。

数码管显示则相对简单,通过单片机控制数码管的段选和位选信号即可。

4、存储电路EEPROM 存储器通过 I2C 总线与单片机连接,单片机通过发送特定的指令和数据来实现对 EEPROM 的读写操作。

5、开锁控制电路使用继电器或三极管驱动电磁锁或电机,单片机输出高电平或低电平来控制开锁电路的通断。

四、软件设计1、主程序流程系统上电后,首先进行初始化操作,包括单片机内部资源的初始化、显示模块的初始化、存储模块的初始化等。

单片机电子密码锁设计 -

单片机电子密码锁设计 -

目录第一章引言 (1)1.1设计背景 (1)1.2课题设计目标 (1)第二章系统方案论证 (2)2.1 主控部分的选择 (2)2.2 密码输入方式的选择 (2)第三章系统总体设计及主要芯片介绍 (3)3.1 系统总体设计 (3)3.2 主要芯片介绍 (4)3.2.1 主控芯片STC12C5A60S2简介 (4)3.2.2 密码存储部分E2PROM (5)3.2.3 LCD1602显示器 (6)第四章单元电路设计 (8)4.1主控电路(CPU) (8)4.2 键盘输入模块 (8)4.3 密码存储 (9)4.4 复位部分 (9)4.5 晶振部分 (10)4.6 显示模块 (10)4.7 报警部分 (11)4.8 开锁部分 (12)第五章系统软件设计 (13)5.1系统主程序 (13)5.2 初始化及按键识别 (15)5.3 改密修改 (15)第六章系统调试与测试 (17)6.1 系统调试 (17)6.1.1密码输入: (17)6.1.2密码修改: (18)6. 2 系统调试过程中出现的错误及改正方法 (19)第七章元器件清单 (20)第八章总结 (21)参考文献 (22)附录 (23)个人总结........................................... 错误!未定义书签。

第一章引言1.1 设计背景随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。

而锁自古以来就是把守门的铁将军,人们对它要求甚高,即要求可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。

传统的门锁既要备有大量的钥匙,又要担心钥匙丢失后的麻烦。

另外,如:宾馆、办公大楼、仓库、保险柜等,由于装修施工等人住时也要把原有的锁胆更换,况且钥匙随身携带也诸多便。

随着单片机的问世,出现了带微处理器的密码锁,它除具有电子密码锁的功能外,还引入了智能化、科技化等功能。

从而使密码锁具有很高的安全性、可靠性。

51单片机四位密码锁课程设计

51单片机四位密码锁课程设计

51单片机四位密码锁课程设计51单片机四位密码锁是一种常见的电子锁,它使用51单片机作为控制核心,通过输入四位密码来控制锁的开关。

本文将介绍关于51单片机四位密码锁的课程设计。

我们需要明确设计的目标和要求。

本设计的主要目标是实现一个四位密码锁系统,并且需要满足以下要求:1.能够输入四位数字密码。

2.密码输入正确时,能够解锁并输出解锁信号。

3.密码输入错误时,不能解锁。

4.能够重置密码。

接下来,我们将详细介绍设计的步骤和实现。

1.硬件设计:在硬件设计方面,我们需要准备以下器件:- 51单片机-数码管显示模块-按键模块-继电器模块-电源模块2.软件设计:在软件设计方面,我们需要编写51单片机的程序,通过编程实现密码锁的功能。

以下是设计的主要步骤:-初始化:设置输入输出引脚,并初始化时钟和数码管显示。

-输入密码:设计密码输入的函数,通过按键模块获取用户输入的密码。

-检验密码:设计密码检验的函数,将用户输入的密码与预设的密码进行比对。

-解锁信号:如果密码输入正确,输出解锁信号,通过继电器控制开关,实现解锁。

-密码错误:如果密码输入错误,通过数码管显示密码错误的提示信息。

-重置密码:设计密码重置的函数,将新设置的密码保存。

3.程序流程:根据以上设计的步骤,我们可以得到以下主要的程序流程:-初始化引脚和时钟。

-设置初始密码。

-进入主程序循环。

-接收用户输入的密码。

-检验密码是否正确。

-如果密码正确,显示解锁信号并控制继电器解锁。

-如果密码错误,显示密码错误信息。

-进入下一次循环。

4.调试和测试:完成程序编写后,我们需要进行调试和测试。

在测试过程中,我们需要输入正确和错误的密码进行验证,检查程序是否能够正常运行,并且能够正确判断和处理用户输入的情况。

5.优化改进:如果在测试中发现问题或不足之处,我们可以对程序进行优化和改进。

例如,可以增加密码输入的最大尝试次数,增加延时等待时间,增加密码保护等功能。

总结:通过对51单片机四位密码锁的课程设计,我们学习了如何使用51单片机编写程序,实现密码锁的功能。

单片机密码锁设计

单片机密码锁设计

单片机密码锁设计工作过程1.按键设置6位密码,输入密码,通过单片机判断,若密码正确,通过则锁打开,显示open!2.首次使用时输入:131420,对密码进行初始化,当显示:initpassword,证明密码初始化完成,此时的密码为:000000。

设计思想(1)本设计为了防止密码被窃取要求在输入密码时在LCD屏幕上显示*号。

(2)设计开锁密码位六位密码的电子密码锁。

(3)能够LCD显示在密码正确时显示open!,密码错误时显示ERROR,输入密码时显示initpassword。

(4)实现输入密码错误超过限定的三次电子密码锁定。

(5)4×4的矩阵键盘其中包括0-9的数字键和A-D的功能键(6)本产品具备报警功能,当输入密码错误时蜂鸣器响并且LED灯亮。

(7)密码可以由用户自己修改设定(只支持6位密码),修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作自锁开关说明自锁开关电路中起到电源的开关作用,常开的其中一脚接DC电源插口电源脚,常开的另一脚接电路的VCC自锁开关原理图自锁开关硬件图上拉电阻介绍其实排阻就是由8个电阻组成的,其中一端全部接在一起,103为8个10K电阻,102为8个1K电阻,他们在电路中起到“上拉”的作用,又称上拉电阻。

上拉就是将不确定的信号通过一个电阻嵌位在高电平,电阻同时起限流作用,下拉同理.上拉是对器件注入电流,下拉是输出电流,弱强只是上拉电阻的阻值不同,没有什么严格区分,对于非集电极(或漏极)开路输出型电路(如普通门电路)提升电流和电压的能力是有限的,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道。

上拉,就是把电位拉高,比如拉到VCC下拉,就是把电压拉低,拉到GND一般就是刚上电的时候,端口电压不稳定,为了让他稳定为高或低,就会用到上拉或下拉电阻。

有些芯片内部集成了上拉电阻(如单片机的P1、2、3口),所以外部就不用上拉电阻了。

但是有一些开漏的(如单片机的P0口),外部必须加上拉电阻。

单片机指纹密码锁毕业设计

单片机指纹密码锁毕业设计

单片机指纹密码锁毕业设计1. 什么是单片机指纹密码锁单片机指纹密码锁是一种电子门锁系统,它使用集成在单片机芯片上的指纹识别技术和密码输入功能,实现对门锁的访问控制。

用户可以通过输入正确的密码或者将指纹与已注册的指纹进行比对来解锁门锁。

这种锁具有高安全性和方便性,适用于各种需要保护的场所,如家庭、办公室和商店等。

2. 单片机指纹密码锁的工作原理是什么单片机指纹密码锁的工作原理主要分为三个部分:指纹模块、密码输入模块和控制模块。

指纹模块负责采集和存储用户的指纹信息。

当用户将手指放在指纹传感器上时,指纹模块会对指纹进行扫描并提取关键特征信息。

然后,它会将提取的特征信息与已存储的指纹模板进行比对,以确定是否匹配。

如果匹配成功,指纹模块会发送信号给控制模块,表示门锁可以解锁。

密码输入模块负责接收用户输入的密码。

用户可以通过键盘或者其他输入设备输入密码。

密码输入模块将接收到的密码与事先存储的正确密码进行比对,如果匹配成功,则发送信号给控制模块。

控制模块是单片机芯片,它负责整个单片机指纹密码锁系统的逻辑控制。

当控制模块接收到指纹模块或者密码输入模块发送的解锁信号后,它会打开电磁锁或者其他解锁机制,让用户能够进入被保护的区域。

3. 单片机指纹密码锁的优点是什么单片机指纹密码锁具有以下几个优点:首先,安全性高。

通过指纹识别技术,单片机指纹密码锁可以准确地识别用户的指纹,大大降低了被非法进入的风险。

同时,密码输入模块也可以提供备用的解锁方式,增加了安全性。

其次,方便性高。

用户只需要将手指放在指纹传感器上或者输入正确的密码,即可快速解锁门锁。

相比传统的钥匙锁,单片机指纹密码锁更加方便快捷。

另外,可靠性强。

单片机指纹密码锁采用先进的技术和稳定的电子元件,具有较高的可靠性和耐用性。

它可以抵御一些常见的攻击手段,如暴力破解密码等。

最后,可扩展性好。

单片机指纹密码锁可以通过与其他安全系统集成,如门禁系统或监控系统,提供更全面的安全保障。

单片机课程设计密码锁设计

单片机课程设计密码锁设计

单片机课程设计密码锁设计在当今社会,安全问题越来越受到人们的重视,密码锁作为一种常见的安全防护设备,在保护个人财产和隐私方面发挥着重要作用。

本次单片机课程设计的任务就是设计一款基于单片机的密码锁。

一、设计要求本次设计的密码锁需要具备以下功能:1、能够设置和修改 4 位数字密码。

2、输入密码正确时,锁打开,并有相应的指示灯提示。

3、输入密码错误时,有错误提示,且错误次数超过 3 次则报警。

4、具备密码重置功能。

二、系统方案设计1、硬件设计单片机选型:选择 STC89C52 单片机作为核心控制器,其具有性能稳定、价格低廉、易于编程等优点。

输入模块:采用 4×4 矩阵键盘作为密码输入设备,可方便地输入数字和功能按键。

显示模块:选用 1602 液晶显示屏,用于显示密码输入状态、提示信息等。

存储模块:使用 EEPROM 芯片 AT24C02 来存储密码,以保证断电后密码不丢失。

报警模块:当密码输入错误次数超过 3 次时,通过蜂鸣器发出报警声音。

2、软件设计主程序:负责系统的初始化、键盘扫描、密码输入处理、密码验证、显示控制等。

键盘扫描程序:检测矩阵键盘上的按键动作,并将按键值返回给主程序。

密码处理程序:包括密码设置、修改、存储和验证等功能。

显示程序:控制 1602 液晶显示屏的显示内容。

三、硬件电路设计1、单片机最小系统包括单片机芯片、晶振电路和复位电路。

晶振为单片机提供时钟信号,复位电路用于系统的初始化。

2、矩阵键盘电路由16 个按键组成 4×4 矩阵,通过行线和列线的扫描来确定按键值。

3、显示电路1602 液晶显示屏通过数据总线和控制总线与单片机相连,实现数据的传输和显示控制。

4、存储电路AT24C02 通过 I2C 总线与单片机进行通信,用于存储密码数据。

5、报警电路蜂鸣器通过三极管驱动,当单片机输出高电平时,蜂鸣器发声报警。

四、软件程序设计1、主程序流程系统初始化,包括单片机端口初始化、液晶显示屏初始化、EEPROM 初始化等。

单片机密码锁设计(汇编语言 )带原理图电路图(带注释)

电子密码锁功能描述:适合毕业设计,基于51内核开发版的电子密码锁主控板,可以掉电存储,修改密码,密码错误3次报警且锁定键盘,有门铃功能等等在p2^0口接一个低电平驱动继电器(淘宝价5元左右),继电器接一个电控锁(淘宝价格18元左右)最后的连接不清楚或者过程中不懂的我们会全程帮助***************部分源代码/*模块名称:主函数*//*模块功能:程序入口*///************************************************************ ************************************************************* ***********void main(void)//主函数{//AT24C04_WritePage(); //密码初始化(只需使用一次写入初始密码)System_init(); //系统初始化while(1){if(keyboard==0) //如果密码错误三次则锁定键盘{KeyDown(); //按键检测}keysend(); //数据传递lcdxianshi(); //输入显示sure(); //密码认证condition_delete(); //按键清除new_password(); //密码修改Add_Function(); //附功能函数}}附件内容包括:整个电路设计原理图和PCB源文件,用A D软件打开;C语言源程序(有详细的中文注释);proteus电路仿真;。

单片机电子密码锁设计方案

图3-6 显示电路原理图
3.7 报警电路
报警部分由瓷压电发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声,每按一下,发声一次,密码正确时,不发声直接开锁,当密码输入错误时,单片机的P2.1引脚为低电平,三极管T3导喇叭发出噪鸣声报警。见图3-7。
图3-7 报警电路原理图
3.8 开锁电路
通过单片机开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理见图3-8。
2.2 方案论证
方案一:采用的数字电路虽然原理简单,但是组建时电路复杂,系统成本高,体积大,功耗大且扩展性能不强。
方案二:采用单片机为核心控制,实现起来也较为容易,体积小,耗能低。同时单片机方案有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。
2.3 方案选择
电路由两大部分组成:密码锁电路和备用电源(UPS),其中设置UPS电源是为了防止因为停电造成的密码锁电路失效,使用户免遭麻烦。
密码锁电路包含:键盘输入、密码修改、密码检测、开锁电路、执行电路、报警电路、键盘输入次数锁定电路。
2.1.2 方案二
本方案采用一种是用以80C51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能。其原理如图2-2所示。
如图4-3为密码设置流程图,开始按下设置键,输入旧密码,如果错误累计三次,进行报警程序。如果输入正确,可以修改密码,确认后再次输入新密码,如果两次输入一样,则输入成功。如果两次输入的新密码不一样,则修改密码失败,重新返回设置新密码。
图4-3 密码设置流程图
4.4 开锁软件设计
如图4-4开锁流程图,开始时按开锁键,输入密码,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程序。

单片机密码锁设计带原理图电路图

单片机密码锁设计(汇编语言-)带原理图电路图-2016(总14页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--单片机密码锁设计(汇编语言)带原理图电路图什么是密码锁电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。

硬件设计基于AT89C51为核心的单片机控制的电子密码锁设计。

本设计能完成开锁,修改密码,密码错误报警,LCD显示密码等基本的密码锁功能。

设计的电路框如图1。

电路的功能单元设计1.单片机AT89C51组成基本框图单片机引脚介绍P0:P0口是一个漏极开路的8位双向I/O口。

在访问片外存储器时P0分时提供低8位地址线和8位双向数据线。

当不接片外存储器或不扩展I/O口时,P0可作为一个通用输入/输出口。

P0口作输入口使用时,应先向口锁存器写“1”,P0口作输出口时,需接上拉电阻。

P1:P1口是一个内部提供上拉电阻的8位双向I/O口,因此它作为输出口使用时,无需再外接上拉电阻,当作为输入口使用时,同样也需先向其锁存器写“1”。

P2:P2口也是一个内部提供上拉电阻的8位双向I/O口,在访问片外存储器时,输出高8位地址。

P3:P3口除了一般的准双向通用I/O口外,还有第二功能。

VCC:+5V电源VSS:接地 ALE:地址锁存器控制信号。

在系统扩展时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低位地址和数据的隔离。

此外,由于ALE是以晶振1/6的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。

/PSEN:外部程序存储器读选通信号。

在读外部ROM时,/PSEN有效(低电平),以实现外部ROM单元的读操作。

/EA:访问程序存储控制信号。

当/EA信号为低电平时,对ROM的读操作限定在外部程序存储器;当/EA信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延至外部程序存储器。

51单片机设计电子锁密码锁含代码

电子锁设计报告一,实验目的1. 学习8051定时器时间计时处理,键盘扫描及LED数码管显示的设计方法。

2. 设计任务及要求利用实验平台上8个LED数码管,设计带有报警功能的可掉电保存的电子密码锁。

3.通过本次实验,加强对所学知识的理解,增强编程能力及实践能力。

二,实验要求A.基本要求:1:用4×4矩阵键盘组成0-9数字键及确认键和删除键。

2:可以自行设定或删除8位密码,能够掉电保存。

3:用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led发光二极管亮一秒钟做为提示,若密码不正确,禁止按键输入3秒,同时用红色led发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。

4:自由发挥其他功能.5:要求有单片机硬件系统框图,电路原理图,软件流程图B.拓展部分:无三,实验基本原理单片机密码锁是集计算机技术、电子技术、数字密码技术为一体的机电一体化高科技产品,具有安全性高,使用方便等优点。

本系统考虑到单片机密码锁成本及体积因素,在设计单片机密码锁部分时,以AT89S52单片机为核心,24C04、LED等构成外围电路。

本系统单片机密码锁硬件部分结构简单、成本低,软件部分使用电子加密提高锁的安全性,具有比较好的市场前景。

同时,由于本电子密码锁可以实现掉电保存,而且可以自行设计或者删除8位密码,所以具有较高的实用价值。

本密码锁采用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led 发光二极管亮一秒钟做为提示,若密码不正确,禁止按键输入3秒,同时用红色led 发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。

此项功能方便用户使用。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档