基于单片机的电子密码锁及程序

合集下载

简易电子密码锁(基于51单片机)报告

简易电子密码锁(基于51单片机)报告

简易电子密码锁设计&我的设计思想联想到日前在安全技术防范领域,具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,并结合近期的学习过程和一些参考书籍,完成了简易的电子密码锁设计学习。

电子密码控制是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。

电子密码控制不论性能还是安全性都已大大超过了机械类结,具有良好的应用前景。

一、设计目的与内容设计了一个简易电子密码锁,可按要求从矩阵键盘输入6位数密码如“080874”,输入过程中有按键音提示。

当密码输入正确并按下确认键(“OK”键)后,发光二极管被点亮。

二、工作原理与基本操作过程介绍采用80C51为核心的单片机控制。

利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,进行电子密码锁的设计。

(1)键盘的人工编码给每个按键指定一个按键值,报告设定按键S1~S9对应的按键值分别为“1~9”,S10为数字“0”,S11为“OK”,S12~S16对应的按键值分别为12~16。

(2)根据按键值,指定每个按键对应的输入数字和信息。

如下表为每个按键代表的数字和输入信息。

当键盘扫描程序扫描到S10键被按下时,将其代表的按键值“0”通知CPU,CPU根据事先的规定,就会知道输入的数字是“0”。

矩阵键盘中每个按键所代表的数字和输入信息(3)输入数字和密码对比。

先将设定的密码用一个数组保存,报告中用的密码“080874”和“OK”确认信息可以用如下数组保存:Unsigned char D[ ]={0,8,0,8,7,4,11};在主程序接收到数字和信息后,通过逐位对比的方法进行判断。

输入的数字经对比正确时,程序才会继续顺序执行,否则,程序拒绝继续执行。

(4)执行预期功能。

如果输入密码正确,执行预期功能,报告设计为点亮P3.0口引脚LED。

三、电路图设计(Proteus绘制)四、程序设计(C语言)矩阵式键盘实现的电子密码锁程序#include<reg51.h> //包含51单片机寄存器定义的头文件sbit P14=P1^4; //将P14位定义为P1.4引脚sbit P15=P1^5; //将P15位定义为P1.5引脚sbit P16=P1^6; //将P16位定义为P1.6引脚sbit P17=P1^7; //将P17位定义为P1.7引脚sbit sound=P3^7; //将sound位定义为P3.7unsigned char keyval; //储存按键值/************************************************************** 函数功能:延时输出音频**************************************************************/ void delay(void){unsigned char i;for(i=0;i<200;i++);}/************************************************************** 函数功能:软件延时子程序**************************************************************/ void delay20ms(void){unsigned char i,j;for(i=0;i<100;i++)for(j=0;j<60;j++);}/************************************************************** 函数功能:主函数**************************************************************/ void main(void){unsigned char D[ ]={0,8,0,8,7,4,11}; //设定密码EA=1; //开总中断ET0=1; //定时器T0中断允许TMOD=0x01; //使用定时器T0的模式1TH0=(65536-500)/256; //定时器T0的高8位赋初值TL0=(65536-500)%256; //定时器T0的高8位赋初值TR0=1; //启动定时器T0keyval=0xff; //按键值初始化while(keyval!=D[0]) //第一位密码输入不正确,等待;while(keyval!=D[1]) //第二位密码输入不正确,等待;while(keyval!=D[2]) //第三位密码输入不正确,等待;while(keyval!=D[3]) //第四位密码输入不正确,等待;while(keyval!=D[4]) //第五位密码输入不正确,等待;while(keyval!=D[5]) //第六位密码输入不正确,等待;while(keyval!=D[6]) //没有输入“OK”,等待;P3=0xfe; //P3.0引脚输出低电平,点亮LED}/**************************************************************函数功能:定时器0的中断服务子程序,进行键盘扫描,判断键位**************************************************************/void time0_interserve(void) interrupt 1 using 1 //定时器T0的中断编号为1,使用第一组寄存器{unsigned char i;TR0=0; //关闭定时器T0P1=0xf0; //所有行线置为低电平“0”,所有列线置为高电平“1”if((P1&0xf0)!=0xf0) //列线中有一位为低电平“0”,说明有键按下delay20ms(); //延时一段时间、软件消抖if((P1&0xf0)!=0xf0) //确实有键按下{P1=0xfe; //第一行置为低电平“0”(P1.0输出低电平“0”)if(P14==0) //如果检测到接P1.4引脚的列线为低电平“0”keyval=1; //可判断是S1键被按下if(P15==0) //如果检测到接P1.5引脚的列线为低电平“0”keyval=2; //可判断是S2键被按下if(P16==0) //如果检测到接P1.6引脚的列线为低电平“0”keyval=3; //可判断是S3键被按下if(P17==0) //如果检测到接P1.7引脚的列线为低电平“0”keyval=4; //可判断是S4键被按下P1=0xfd; //第二行置为低电平“0”(P1.1输出低电平“0”)if(P14==0) //如果检测到接P1.4引脚的列线为低电平“0”keyval=5; //可判断是S5键被按下if(P15==0) //如果检测到接P1.5引脚的列线为低电平“0”keyval=6; //可判断是S6键被按下if(P16==0) //如果检测到接P1.6引脚的列线为低电平“0”keyval=7; //可判断是S7键被按下if(P17==0) //如果检测到接P1.7引脚的列线为低电平“0”keyval=8; //可判断是S8键被按下P1=0xfb; //第三行置为低电平“0”(P1.2输出低电平“0”)if(P14==0) //如果检测到接P1.4引脚的列线为低电平“0”keyval=9; //可判断是S9键被按下if(P15==0) //如果检测到接P1.5引脚的列线为低电平“0”keyval=0; //可判断是S10键被按下if(P16==0) //如果检测到接P1.6引脚的列线为低电平“0”keyval=11; //可判断是S11键被按下if(P17==0) //如果检测到接P1.7引脚的列线为低电平“0”keyval=12; //可判断是S12键被按下P1=0xf7; //第四行置为低电平“0”(P1.3输出低电平“0”)if(P14==0) //如果检测到接P1.4引脚的列线为低电平“0”keyval=13; //可判断是S13键被按下if(P15==0) //如果检测到接P1.5引脚的列线为低电平“0”keyval=14; //可判断是S14键被按下if(P16==0) //如果检测到接P1.6引脚的列线为低电平“0”keyval=15; //可判断是S15键被按下if(P17==0) //如果检测到接P1.7引脚的列线为低电平“0”keyval=16; //可判断是S16键被按下for(i=0;i<200;i++) //让P3.7引脚电平不断取反输出音频{sound=0;delay();sound=1;delay();}}TR0=1; //开启定时器T0TH0=(65536-500)/256; //定时器T0的高8位赋初值TL0=(65536-500)%256; //定时器T0的高8位赋初值}五、用Proteus软件进行仿真利用Keil软件进行编译通过后,生成hex文件。

基于单片机的电子密码锁

基于单片机的电子密码锁

基于单片机的电子密码锁第一章:引言电子密码锁是随着科技的不断进步,应用于各个领域的一种新型门禁系统。

相较于传统的机械锁具,电子密码锁具有更高的安全性与便捷性。

而基于单片机的电子密码锁,则是通过单片机作为核心控制器,通过输入正确的密码才能进行开锁操作。

本文旨在介绍基于单片机的电子密码锁的原理、设计和实现过程。

第二章:电子密码锁的工作原理2.1 单片机简介单片机是一种集成了微处理器、存储器和各种输入输出接口于一体的微型计算机系统。

它具有体积小、功耗低、性能稳定等特点,适用于各种电子设备的控制系统。

2.2 电子密码锁的组成部分基于单片机的电子密码锁由输入模块、控制模块、显示模块和输出模块组成。

输入模块用于输入密码,控制模块用于验证密码的正确性和执行开锁指令,显示模块用于显示相关信息,输出模块用于控制锁的状态。

2.3 电子密码锁的工作原理当用户输入密码时,控制模块将用户输入的密码与预设密码进行比较。

如果输入的密码正确,则控制模块发送开锁指令,输出模块解除锁的限制,用户可以开启门。

否则,控制模块继续等待用户输入密码。

第三章:电子密码锁的设计步骤3.1 系统需求分析根据实际应用需求,确定电子密码锁系统的功能、性能和外观设计等方面的要求。

3.2 硬件设计根据系统需求,设计硬件电路,包括输入模块、控制模块、显示模块和输出模块等。

3.3 软件设计基于单片机的电子密码锁需要编写适用的软件程序。

根据密码验证算法,编写程序实现密码的比较和开锁指令的发送。

3.4 电子密码锁的制作流程根据硬件设计和软件设计的结果,进行电子密码锁的组装和制作。

3.5 电子密码锁的测试与调试对制作完成的电子密码锁进行测试,包括考虑用户输入的密码是否正确、开锁是否正常、显示是否准确等方面的问题。

第四章:电子密码锁的功能与特点4.1 密码设置与管理用户可以根据需要设置密码,并进行密码的管理,包括密码的增、删、改等功能。

4.2 多种开锁方式电子密码锁可以支持多种开锁方式,例如密码开锁、指纹识别、刷卡开锁等。

基于51单片机的电子密码锁—1

基于51单片机的电子密码锁—1

基于51单⽚机的电⼦密码锁—1这个程序是为了实现基于51单⽚机的电⼦密码锁,⽬前,程序解决了最重要之⼀的输⼊的密码和保存的正确密码相⽐较的问题。

通过定义了两个数组:uchar table2[6]; //临时密码保存uchar password[6]="123456"; //进门密码将输⼊的密码写⼊到table2[]中有⼀点需要特别注意:因为我写到table2[]数组内的是ASCII值的0-9,⽽ASCII值的0-9对应的符号却是NUT,SOH... (省略)所以在刚开始调试时,LCD1602屏幕输出的总是奇怪的字符,⽽不是我想要的0-9,通过查询ASCLL码表可以知道字符(0-9)对应的数值是48-57,所以我通过定义了⼀个新的数组,uchar smgduan[10]={48,49,50,51,52,53,54,55,56,57};以及lcd_write_data(smgduan[table2[i]]);的⽅式,实现了在LCD上输出字符0-9的功能。

在最后做两个数组⽐较时,开始同样出现了这个情况,因为数字1和字符1对应的ASCII值不同,所以password[i]不等于table2[i],需要进⾏转换,我的⽅式的是password[i]==smgduan[table2[i]];罗⾥吧嗦这个多,主要还是给未来的⾃⼰看看,当初犯得错误多么低级。

---------------------------------------------------分割线-----------------------------------------------------------------------------------下⼀版改进考虑把重复按键选择数字改成矩阵按键,加进些其他的功能。

---------------------------------------------------分割线-----------------------------------------------------------------------------------程序部分:/*这个⽅案是我写基于51单⽚机的电⼦密码锁过程中,未完成全部功能的程序。

基于单片机的电子密码锁

基于单片机的电子密码锁

基于单片机的电子密码锁第一章:引言随着科技的不断进步,电子设备在我们的日常生活中变得越来越普及。

其中之一就是电子密码锁。

传统的机械密码锁存在操作复杂、容易被暴力破解等问题,而基于单片机的电子密码锁则能够提供更安全、更便捷的解决方案。

本文将探讨基于单片机的电子密码锁的原理、实现过程以及应用场景。

第二章:基于单片机电子密码锁的原理2.1 单片机基础知识电子密码锁的核心是单片机,因此在理解电子密码锁的原理之前,我们需要先了解一些单片机的基础知识。

单片机是一种集成了处理器、内存和存储器等功能的微型计算机。

它通过读取输入和控制输出来实现各种任务。

在电子密码锁中,单片机通过读取输入的按键信号,处理之后控制电子锁的开关状态。

2.2 电子密码锁的基本原理基于单片机的电子密码锁的基本原理如下:(1)输入密码:用户通过按下键盘输入密码。

密码可以是数字、字母或者符号的组合。

(2)密码验证:单片机接收到输入的密码后,会将其与预设的正确密码进行比对。

如果输入的密码与预设的密码匹配,则会执行开锁操作。

(3)开锁操作:当密码验证通过后,单片机会控制电子锁的开关状态,从而实现开锁。

2.3 单片机的嵌入式程序设计在实现基于单片机的电子密码锁时,需要进行嵌入式程序的设计与编写。

嵌入式程序是指针对特定硬件平台和应用需求而编写的程序。

在电子密码锁中,嵌入式程序需要实现密码输入与验证的功能,并控制电子锁的开关状态。

第三章:基于单片机电子密码锁的实现过程3.1 硬件设计硬件设计是基于单片机电子密码锁的基础。

硬件设计包括选择合适的单片机、键盘、电子锁等组成要素,并进行连接与布局。

3.2 软件设计软件设计是实现基于单片机电子密码锁的核心。

软件设计主要包括嵌入式程序的编写、逻辑流程的设计以及密码验证算法的实现。

3.3 电子密码锁的制作与调试制作与调试是将硬件设计与软件设计结合起来,完成基于单片机电子密码锁的整体制作与调试工作。

在制作过程中,需要进行电路板的焊接、连接与固定等工作。

单片机电子密码锁的操作流程

单片机电子密码锁的操作流程

单片机电子密码锁的操作流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 系统初始化:单片机上电后,进行系统初始化,包括设置输入输出端口、初始化密码存储区、初始化显示模块等。

基于单片机的电子密码锁及程序

基于单片机的电子密码锁及程序

毕业论文基于单片机的电子密码锁设计基于单片机的电子密码锁设计摘要随着科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤为突出,传统的机械锁由于构造简单,被撬事件屡见不鲜。

电子密码锁保密性好,使用灵活性高,收到广大用户的青睐。

本设计是以单片机AT89C52作为密码锁的主控芯片与数据存储单元,结合外围的矩阵键盘输入、LCD显示、开锁、报警等,用C语言编写程序,并用Keil uVision4软件进行编译设计了一款可以更改密码,具有报警功能的电子密码控制系统。

本设计采用矩阵键盘对密码进行输入,具有较高的优势,减少了I/O口的占用数目。

密码的显示采用LCD显示屏实现,为确保安全性统一使用“*”显示密码,当重新设置密码时按下“修改”键,LCD显示屏显示数字。

采用蜂鸣器模拟报警系统,增加了密码锁的安全能力。

软件使用C语言编程,运用自上而下的模块化设计思想,使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。

测试结果表明,设计达到电子密码锁的功能。

关键字:密码锁、AT89C52、矩阵键盘、报警一、设计背景随着社会科技的进步,锁已经发展到了密码锁、磁性锁、电子锁、激光锁、声控锁等等。

在传统钥匙的基础上,加了一组或多组密码,不同声音,不同磁场,不同声波,不同光束光波,不同图像来控制锁的开启,从而大大提高了锁的安全性。

当今安全信息系统应用越来越广泛,特别在机密保护、维护隐私和财产保护方面起到重大作用,而基于电子密码锁的安全系统是其中的一部分,运用非常广泛,研究它具有重大的现实意义。

电子密码锁可以在日常生活和现代办公中,住宅与办公室的安全防范、单位的文件档案、财务报表以及一些个人资料的保存等多种场合使用。

大大提高了主人物资的安全性。

目前使用的密码锁种类繁多,各具特色。

本文从经济实用的角度出发,采用AT89C52单机,研制了一款具有防盗自动报警功能的电子密码锁。

该密码锁设计方法合理,简单易行,成本低,符合住宅、办公室用锁要求,具有一定的推广价值。

基于单片机的电子密码锁

基于单片机的电子密码锁

基于单片机的电子密码锁第一章序言电子密码锁作为一种现代化的安全防护设备,被广泛应用于家庭、商业和公共场所。

它与传统机械锁相比具有更高的安全性、更方便的使用方式以及更多的功能。

而基于单片机的电子密码锁则利用现代电子技术,结合单片机的强大功能,实现了更高级别的安全保护和智能化操作。

本文将深入探讨基于单片机的电子密码锁的原理、设计和应用。

第二章基本原理基于单片机的电子密码锁的基本原理是利用数字密码的输入和比对来控制锁的开关。

系统通过单片机将输入的密码与预设密码进行比对,如果输入正确,则单片机控制锁的电机将锁打开。

同时,还可以通过单片机对其他功能的控制,例如报警装置、指纹识别、密钥卡等。

基本原理可以总结为三个步骤:密码输入、比对判断和锁的控制。

第三章设计方案基于单片机的电子密码锁的设计方案包括硬件设计和软件设计两个方面。

硬件设计的主要组成部分有密码输入模块、单片机模块、电机控制模块和电源模块。

密码输入模块一般使用键盘或者触摸屏来实现密码的输入,单片机模块负责接收输入的密码,并与预设密码进行比对,电机控制模块用于控制锁的开启和关闭,电源模块提供系统的电能。

软件设计则是基于单片机的程序设计,包括密码输入、比对判断和控制电机的相关代码。

第四章功能拓展基于单片机的电子密码锁除了基本的密码输入和开锁功能外,还可以拓展其他功能。

例如,可以增加报警功能,当密码输入错误次数达到一定次数时,系统将触发报警器或者发送警报信息;还可以新增指纹识别功能,通过将指纹信息存储在单片机中,实现指纹的输入和认证,提高门锁的安全性;另外,还可以添加密钥卡功能,通过感应技术读取密钥卡上的信息,实现无需输入密码的开锁方式,提升用户体验。

第五章应用前景基于单片机的电子密码锁在家庭、商业和公共场所都有广泛的应用前景。

在家庭使用方面,电子密码锁可以取代传统的机械锁,提供更高的安全性,可以对家庭成员的出入进行控制;在商业使用方面,电子密码锁可以应用于办公室、酒店、银行、医院等场所,实现门禁和权限控制,保护重要信息的安全;在公共场所使用方面,电子密码锁可以应用于公共厕所、储物柜、车库等场所,提供更方便快捷的开锁方式。

基于单片机的电子密码锁

基于单片机的电子密码锁

基于单片机的电子密码锁第一章:引言随着科技的不断进步,电子密码锁作为一种现代化的安全设备,越来越得到人们的关注和应用。

传统的机械锁存在一些弊端,例如易被撬开、锁码易被窃取等问题。

而电子密码锁则通过集成电路和密码输入系统,提供了更高的安全性和便利性。

本文将详细介绍基于单片机的电子密码锁的原理和设计,包括电路设计、程序代码编写、功能调试等方面。

通过这些内容,读者将对电子密码锁的工作原理和制作过程有更深入的了解。

第二章:原理介绍2.1 单片机选型在设计电子密码锁时,选择合适的单片机至关重要。

本文选择XX单片机作为控制器,原因主要在于其低功耗、高性能和丰富的外设接口等特点。

2.2 电路设计电子密码锁的电路设计包括密码输入系统、电源管理和电机驱动等部分。

密码输入系统主要由按键矩阵和LCD显示器组成,用于用户输入密码和显示相关信息。

电源管理模块负责供电和电池电量检测。

电机驱动模块则用于控制锁体的开关。

第三章:程序编写3.1 系统初始化在单片机启动时,需要对系统进行初始化配置。

包括外设接口的设置、时钟的配置和IO口的初始化等。

这些步骤为后续的程序运行提供了必要的准备工作。

3.2 密码验证当用户输入密码后,系统需要对密码进行验证。

在编写程序时,需要结合密码输入系统和密码存储器,根据用户输入的密码和存储的密码进行比对。

如果密码匹配成功,则进入下一阶段,否则给出错误提示。

3.3 功能实现除了密码验证外,电子密码锁还可以实现其他功能。

例如,设置密码、修改密码、开关驱动电机等。

在程序编写时,需要对这些功能进行详细设计,并考虑到各种异常情况的处理。

第四章:系统调试为了保证电子密码锁的功能可靠,需要进行系统调试。

调试过程主要包括测试电路的正常工作状态、验证密码验证功能的准确性和检查电机驱动模块的可靠性等。

第五章:应用与展望电子密码锁具有广泛的应用前景。

不仅可以用于家庭安全防护,还可以应用于商业场所、酒店、学校等多个领域。

未来,电子密码锁还可以与其他智能设备进行联动,实现更多便利和安全功能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
关键字:密码锁、AT89C52、矩阵键盘、报警
一、设计背景
随着社会科技的进步,锁已经发展到了密码锁、磁性锁、电子锁、激光锁、声控锁等等。在传统钥匙的基础上,加了一组或多组密码,不同声音,不同磁场,不同声波,不同光束光波,不同图像来控制锁的开启,从而大大提高了锁的安全性。当今安全信息系统应用越来越广泛,特别在机密保护、维护隐私与财产保护方面起到重大作用,而基于电子密码锁的安全系统就是其中的一部分,运用非常广泛,研究它具有重大的现实意义。
在这种行列式矩阵键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段,还要对按键进行消抖处理。
当确认有按键按下后,就要识别就是哪一个按键被按下。本次设计使用的就是线反转法。给行线置为0x0f,给列线置为0xf0,再将行列进行逻辑或结果为0xff,当有按键下时相应的按键位行列均为0,行列逻辑或不为0xff,由此可利用行列逻辑或后的值就是否为0xff来判断就是否有按键按下。再根据扫描结果判断按下键的位置。给相应的按键赋值即可实现数字键与功能键。对功能键进行相应的软件编程即可实现按键功能。
如图一所示,矩阵键盘的每一条水平(行线)与垂直线(列线)的交叉处不相通,而就是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线与M条列线即可组成有 个按键的键盘。
图一 矩阵键盘
本次设计需要0~9十个数字按键、一个新建键、一个确认键、一个修改键、一个进入键与一个取消键共15个按键,所以选用4X4的矩阵按键。
5、
本系统软件设计由主程序、初始化程序、键盘扫描程序、密码输入程序、功能键定义程序、重置密码程序、LCD显示程序、中断延时程序、报警程序、延时程序组成。
如图六所示为主程序流程图,开始接上电源,程序进行初始化设置,然后在键盘上输入密码,此系统进行键盘扫描,判断密码就是否正确,密码正确开锁,密码不正确统计错误密码次数加1。在开锁情况下进行修改密码,点击确认密码修改成功,否则结束返回。若密码修改成功则再执行之前的操作。
N
Y N N Y Y Y N
图六 主程序流程图
六、系统调试
本次调试采用的就是protues与keil软件进行仿真。首先运用keil软件编写电子密码锁的源程序,本设计主要运用C语言编写。源程序编写后运行生成目标文件供protues仿真调试。
5.LED数码管显示密码,为确保安全性所有密码均用“*”表示。
4、
1.矩阵键盘
密码的输入用矩阵键盘实现,包括数字键与功能键。
具体功能设计如表一:
表一 键盘具体功能设计表
按键
键名
功能
0~9
数字键
输入密码
新建
新建键
设定新密码
确认
确认键
比较密码
修改
修改键
显示密码
进入
进入键
允许输入密码
取消
取消键
取消输入密码
本设计采用矩阵键盘对密码进行输入,具有较高的优势,减少了I/O口的占用数目。密码的显示采用LCD显示屏实现,为确保安全性统一使用“*”显示密码,当重新设置密码时按下“修改”键,LCD显示屏显示数字。采用蜂鸣器模拟报警系统,增加了密码锁的安全能力。软件使用C语言编程,运用自上而下的模块化设计思想,使系统朝着分布式、小型化方向发展,增强系统的可扩展性与运行的稳定性。测试结果表明,设计达到电子密码锁的功能。
使用矩阵键盘能减少键盘与单片机接口所占用的I/O线数目,当按键较多的时候通常采用这种方法。
2.开锁电路
在本次设计中用发光二极管代替电磁锁,二极管D1亮表示锁开,二极管灭表示没有开锁。如图二所示,当输入密码与内置密码相配合时将P2、1置0,二极管亮,否则二极管不亮。
图二发光二级管电路
3.报警电路
报警电路由单片机与蜂鸣器组成,如图三所示,当P2、0为低电平时蜂鸣器发出声音报警。每次输入的密码与正确密码进行比较,如果相同,锁开灯亮。如果输入错误则用一个变量来记录输入错误的次数,当输入密码错误达到三次时,蜂鸣器工作发出报警声音,本次设计使用的就是声音持续3秒蜂鸣器报警,即可听到“嘟——”3秒的响声。
基于单片机的电子密码锁设计
摘要
随着科技与人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤为突出,传统的机械锁由于构造简单,被撬事件屡见不鲜。电子密码锁保密性好,使用灵活性高,收到广大用户的青睐。
本设计就是以单片机AT89C52作为密码锁的主控芯片与数据存储单元,结合外围的矩阵键盘输入、LCD显示、开锁、报警等,用C语言编写程序,并用Keil uVision4软件进行编译设计了一款可以更改密码,具有报警功能的电子密码控制系统。
2、
1.了解单片机开发系统的组成及结构;
2.掌握I/O口的操作方法;
3.能够熟练使用protues与keil软件进行连线与编程,并熟练掌握仿真方法;
4.掌握LCD显示屏的显示原理;
5.掌握C语言编程方法;
6.培养查找错误与改正错误的能力。
3、
本设计采用单片机为主控芯片,结合外围电路组成电子密码控制系统。设计主要功能有:
1.设置6位密码,密码通过键盘输入,若密码正确,则锁打开,LCD显示“Password Right Lock Opened!”。原始密码在首次开锁时为“000000”。
2.重新设置密码时,LCD显示“******”,按下“修改”键显示数值。
3.密码只能输入6位数字,无法输入多余数字。
4.具有自动报警功能:当密码输入错误三次,报警,蜂鸣器响3秒。
图三报警电路
4.LCD显示电路
密码显示电路由单片机、排阻与LCD显示屏组成。显示电路如图四所示。为保证密码的保密性,本设计采用“*”显示所有输入密码,如图四所示。当重设密码时,按下“修改”键显示数字,如图五所示。本设计只允许输入数字密码6次,超过6次以后的数字无法输入。
图四LCD显示电路
图五重设密码LCD显示数字
电子密码锁可以在日常生活与现代办公中,住宅与办公室的安全防范、单位的文件档案、财务报表以及一些个人资料的保存等多种场合使用。大大提高了主人物资的安全性。目前使用的密码锁种类繁多,各具特色。本文从经济实用的角度出发,采用AT89C52单机,研制了一款具有防盗自动报警功能的电子密码锁。该密码锁设计方法合理,简单易行,成本低,符合住宅、办公室用锁要求,具有一定的推广价值。
相关文档
最新文档