电子密码锁设计报告
电子密码锁设计【开题报告】
![电子密码锁设计【开题报告】](https://img.taocdn.com/s3/m/0ad9b6eddaef5ef7ba0d3cac.png)
开题报告电气工程及其自动化电子密码锁设计一、综述本课题国内外研究动态,说明选题的依据和意义目前,最常用的锁是20世纪50年代意大利人设计的机械锁,其机构简单、使用方便、价格便宜。
但在使用中暴露了很多缺点:一是机械锁是靠金属制成的钥匙上的不同齿形与锁芯的配合来工作的。
据统计,每4000把锁中就有两把锁的钥匙齿牙相同或类似,故安全性低。
二是钥匙一旦丢失,无论谁捡到都可以打开,三是机械锁的材料大多为黄铜,质地较软,容易损坏。
四是机械锁钥匙易于复制,不适于诸如宾馆等公共场所使用。
由于人们对锁的安全性,方便性等性能有更高的要求,许多智能锁(如指纹辨别、IC卡识别)也相继问世,但这类产品的特点是针对特定指纹或有效卡,但能适用于保密要求高仅供别人使用的箱、柜、房间,其成本一般较高,在一定程度上限制了这类产品的普及和推广。
在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决,而钥匙丢失安全性即大打折扣。
而且,由于传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,因此也存在着很多安全隐患。
随着科学技术的不断发展,人们对日常生活中的安全性的要求不断提高,用密码代替钥匙的密码锁应运而生。
密码锁具有安全性高、成本低、功耗低、易操作等优点。
在安全技术领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。
随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能电子密码锁,它除了具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。
随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。
但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。
简易电子密码锁(基于51单片机)报告
![简易电子密码锁(基于51单片机)报告](https://img.taocdn.com/s3/m/e8fd2c7e8e9951e79b892793.png)
简易电子密码锁设计&我的设计思想联想到日前在安全技术防范领域,具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,并结合近期的学习过程和一些参考书籍,完成了简易的电子密码锁设计学习。
电子密码控制是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。
电子密码控制不论性能还是安全性都已大大超过了机械类结,具有良好的应用前景。
一、设计目的与内容设计了一个简易电子密码锁,可按要求从矩阵键盘输入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文件。
实习报告电子密码锁设计
![实习报告电子密码锁设计](https://img.taocdn.com/s3/m/23fe4dbaf9c75fbfc77da26925c52cc58ad69067.png)
实习报告:电子密码锁设计一、实习背景及目的随着科技的不断发展,电子产品在日常生活中扮演着越来越重要的角色。
电子密码锁作为一种安全技术防范产品,具有安全性高、成本低、功耗低、易操作等优点,已广泛应用于家庭、办公室、银行等领域。
本次实习旨在了解并掌握电子密码锁的设计原理,提高自己在电子技术方面的实际操作能力。
二、实习内容与过程1. 了解电子密码锁的原理电子密码锁的核心部分是密码控制器,它通过接收键盘输入的密码,与设定的密码进行比较,根据比较结果控制电路或芯片的工作。
在本实习中,我们采用51单片机作为密码控制器,通过矩阵键盘输入密码,利用数码管显示密码输入情况。
2. 设计电路图根据实习要求,设计电子密码锁的电路图。
电路主要包括51单片机、矩阵键盘、数码管、报警电路、电源等部分。
矩阵键盘用于输入密码,数码管用于显示密码输入情况,报警电路用于提示密码错误,电源为整个电路提供稳定的电压。
3. 编写程序使用C语言编写程序,实现电子密码锁的功能。
程序主要包括主函数、键盘扫描函数、数码管显示函数、报警函数等。
主函数负责初始化硬件设备,循环调用键盘扫描函数,接收并显示密码输入情况。
键盘扫描函数用于检测矩阵键盘按键状态,数码管显示函数负责在数码管上显示输入的密码,报警函数则在密码错误时发出报警。
4. 调试与优化在Proteus仿真软件中进行电路仿真,调试程序。
在仿真过程中,发现键盘输入与数码管显示部分存在问题,通过修改程序代码,解决了这些问题。
同时,对程序进行优化,提高了运行效率。
5. 实物焊接与测试根据电路图,购买元器件,进行实物焊接。
焊接完成后,对电子密码锁进行测试,验证其功能是否符合预期。
在测试过程中,发现报警功能存在问题,经过排查,发现是报警电路部分出现问题,重新焊接后,问题得到解决。
三、实习收获与体会通过本次实习,我对电子密码锁的设计原理和实际操作有了更深入的了解。
在设计过程中,我学会了如何根据实际需求,运用所学知识,设计出符合要求的电路图和程序。
实验四 电子密码锁的设计
![实验四 电子密码锁的设计](https://img.taocdn.com/s3/m/67bbb6596c85ec3a87c2c5db.png)
实验四电子密码锁的设计一、实验任务及要求设计一个通用电子密码锁,其具体功能要求如下:(1)数码输入:每按下一个数字健,就输入一个数值,并在显示器上的最右方显示出该数值,同时将先前输入的数据依序左移一个数字位置。
(2)数码清除:按下此键可清除前面所有的输入值,清除成为“0000”。
(3)密码更改:按下此键时会将目前的数字设定成新的密码。
(4)激活电锁:按下此键可将密码锁上锁。
(5)解除电锁:按下此键会检查输入的密码是否正确,密码正确即开锁。
二、设计原理1、接口设计根据系统功能,具体输入输出接口设计如图3-7-1所示。
LockKEYIN[11..0]ENLOCKCLKLED_DATA[15..0]RST图3-7-1电子密码锁输入输出接口图输入信号:CLK是1KHz的时钟信号,KEYIN[11..0]是模拟键盘输入信号,RST是清零输入信号。
输出信号:ENLOCK是上锁指示灯(点亮代表已上锁)。
LED_DATA[15..0]是密码显示输出,直接接在七段数码管上显示。
2、系统构成通用电子密码锁一般由三个部分组成:数字密码输入部分、密码锁控制部分和密码锁显示部分。
数字密码输入部分一般用键盘加防抖动电路和键盘译码电路组成。
这里结合SE-3实验箱,采用十二路开关来模拟0~9十个数字和加锁按钮、解锁按钮。
输入部分由输入译编码器组成,用四位信号来模拟十二个数字信号。
密码锁控制部分包括按键数据的缓冲存储电路,密码的清除、变更、存储、激活电锁电路,密码核对,解锁电路等。
该部分由加/解锁和密码输入两个进程组成。
密码锁显示模块由七段数码管译码器组成,将要显示的BCD码转换为数码管的七段显示码。
系统总体结构框图如图3-7-2所示。
图3-7-2电子密码器结构图3、VHDL参考程序如下:(1)密码输入电路:KEYBOARD.VHD--KEYBOARD.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL; ENTITYKEYBOARDISPORT(CLK:INSTD_LOGIC;KEYIN:INSTD_LOGIC_VECTOR(11DOWNTO0);DA TA_N:OUTSTD_LOGIC_VECTOR(3DOWNTO0);DA TA_F:OUTSTD_LOGIC_VECTOR(3DOWNTO0);FLAG_N:OUTSTD_LOGIC);ENDENTITYKEYBOARD; ARCHITECTUREARTOFKEYBOARDISSIGNALN,F:STD_LOGIC_VECTOR(3DOWNTO0); SIGNALFN:STD_LOGIC;BEGINDA TA_N<=N;DA TA_F<=F;FLAG_N<=FN;PROCESS(CLK,KEYIN)BEGINIFCLK'EVENTANDCLK='1'THENCASEKEYINISWHEN"100000000000"=>N<="0000";--0 WHEN"010*********"=>N<="0001";--1 WHEN"001000000000"=>N<="0010";--2 WHEN"000100000000"=>N<="0011";--3 WHEN"000010000000"=>N<="0100"; --4 WHEN"000001000000"=>N<="0101";--5 WHEN"000000100000"=>N<="0110";--6 WHEN"000000010000"=>N<="0111";--7 WHEN"000000001000"=>N<="1000";--8 WHEN"000000000100"=>N<="1001";--9 WHENOTHERS=>N<="1111";ENDCASE;ENDIF;IFCLK'EVENTANDCLK='1'THENCASEKEYINIS WHEN"000000000010"=>F<="1010";--*LOCK WHEN"000000000001"=>F<="0101";--#_UNLOCK WHENOTHERS=>F<="0000";ENDCASE;ENDIF;ENDPROCESS;FN<=NOT(N(3)ANDN(2)ANDN(1)ANDN(0)); ENDARCHITECTUREART;(2)密码锁控制电路:CTRL.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL; ENTITYCTRLISPORT(DATA_N:INSTD_LOGIC_VECTOR(3DOWNTO0); DA TA_F:INSTD_LOGIC_VECTOR(3DOWNTO0);FLAG_N:INSTD_LOGIC;CLK:INSTD_LOGIC;RST:INSTD_LOGIC;ENLOCK:OUTSTD_LOGIC;DA TA_BCD:OUTSTD_LOGIC_VECTOR(15DOWNTO0));ENDENTITYCTRL; ARCHITECTUREARTOFCTRLiSSIGNALACC,REG:STD_LOGIC_VECTOR(15DOWNTO0); SIGNALNC:STD_LOGIC_VECTOR(2DOWNTO0); SIGNALQA,QB:STD_LOGIC;BEGINPROCESS(FLAG_N,RST)ISBEGINIFRST='1'THENACC<="0000000000000000";NC<="000";ELSEIFFLAG_N'EVENTANDFLAG_N='1'THENIFNC<4THENACC<=ACC(11DOWNTO0)&DA TA_N;NC<=NC+1;ENDIF;ENDIF;ENDIF;ENDPROCESS;PROCESS(CLK,DATA_F,NC)ISBEGINIF(CLK'EVENTANDCLK='1')THENIFNC=4THENIF(DATA_F="1010")THENREG<=ACC;QA<='1';QB<='0';ELSIF(DATA_F="0101")THENIFREG=ACCORACC="1000100010001000"THENQA<='0';QB<='1';ENDIF;ENDIF;ENDIF;ENDIF;ENDPROCESS;ENLOCK<=QAANDNOTQB;DA TA_BCD<=ACC;ENDARCHITECTUREART;(3)总程序:LOCK.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYLOCKISPORT(CLK:INSTD_LOGIC;KEYIN:INSTD_LOGIC_VECTOR(11DOWNTO0);RST:INSTD_LOGIC;ENLOCK:OUTSTD_LOGIC;DA TA_BCD:OUTSTD_LOGIC_VECTOR(15DOWNTO0));END;ARCHITECTUREXOFLOCKISCOMPONENTKEYBOARDISPORT(CLK:INSTD_LOGIC;KEYIN:INSTD_LOGIC_VECTOR(11DOWNTO0);DA TA_N:OUTSTD_LOGIC_VECTOR(3DOWNTO0);DA TA_F:OUTSTD_LOGIC_VECTOR(3DOWNTO0);FLAG_N:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTCTRLISPORT(DATA_N:INSTD_LOGIC_VECTOR(3DOWNTO0);DA TA_F:INSTD_LOGIC_VECTOR(3DOWNTO0);FLAG_N:INSTD_LOGIC;CLK:INSTD_LOGIC;ENLOCK:OUTSTD_LOGIC;RST:INSTD_LOGIC;DA TA_BCD:OUTSTD_LOGIC_VECTOR(15DOWNTO0));ENDCOMPONENT;SIGNALDAT_N,DAT_F:STD_LOGIC_VECTOR(3DOWNTO0);SIGNALFLA_N:STD_LOGIC;BEGINU1:KEYBOARDPORTMAP(CLK,KEYIN,DAT_N,DA T_F,FLA_N);U2:CTRLPORTMAP(DAT_N,DA T_F,FLA_N,CLK,ENLOCK,RST,DATA_BCD);END;三、设计说明与建议1.用SE-3实验箱上的按键S1~SC作为输入信号,具体引脚分配建议:数字键KEYIN2~KEYIN11(36~41、45~48)、解锁键KEYIN0(34)、加锁键KEYIN1(35)、复位键(49)、时钟输入脚CLK(20)。
密码锁实验报告doc
![密码锁实验报告doc](https://img.taocdn.com/s3/m/6ac6fcde27284b73f3425097.png)
密码锁实验报告篇一:电子密码锁实验报告密码锁实验报告一,实验目的1. 学习8051定时器时间计时处理、跑马灯、按键扫描及LED数码管显示的设计方法。
2. 设计任务及要求利用实验平台上8个LED数码管,按键,跑马灯实现设置密码,密码锁的功能二,实验要求基本要求:1:用4×4矩阵键盘组成0-9数字键及确认键和删除键。
2:可以自行设定或删除8位密码。
3:用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led发光二极管亮一秒钟做为提示,若密码不正确,禁止按键输入3秒,同时用红色led发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。
三,实验基本原理利用单片机定时器完成计时功能,定时器0计时中断程序每隔0.05s中断一次并当作一个计数,设定定时1秒的中断计数初值为20。
为了将时间在LED数码管上显示,可采用静态显示法和动态显示法,由于静态显示法需要译码器,数据锁存器等较多硬件,可采用动态显示法实现LED显示,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显示数字。
由于数码管扫描周期很短,由于人眼的视觉暂留效应,使数码管看起来总是亮的,从而实现了各种显示。
四,实验设计分析针对要实现的功能,采用AT89S51单片机进行设计,AT89S51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash 只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构。
这样,既能做到经济合理又能实现预期的功能。
1在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。
程序可分为闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。
基于Multisim的电子密码锁设计报告
![基于Multisim的电子密码锁设计报告](https://img.taocdn.com/s3/m/eb2cec0442323968011ca300a6c30c225801f041.png)
基于Multisim的电子密码锁设计报告一、实验目的本次实验的目的是利用Multisim软件来模拟设计一款电子密码锁电路,并运用实验设计与验证技能,实现对其正确性的验证。
二、实验原理1. 采用TTL 74LS161四位二进制可编程计数器芯片来作为密码锁的实现电路。
2.在74LS161中将4个D触发器的引脚Q4、Q3、Q2和Q1相连,形成一个四位二进制计数器。
D0、D1、D2和D3端分别保存四个密码。
J端与K端都接地,保证其无法跳转,输入端(P输入)通过翻转外电平跳转。
3.在密码输入时,将四个D触发器之间的连接管脚断开,用四个单独红色LED灯来表示各自的D触发器的状态。
4.密码输入结束之后要再通过一个译码器,将存储器里的二进制数转换成相应的16进制数,然后用一个比较器和一个与门来完成密码的验证。
三、实验步骤1. 在Multisim中,依次添加TTL 74LS161、LED、Decoder、Comparator、AND gate等元件。
2. 将74LS161的P0-P3引脚连接四个SIN箭头元件,将输入端的SIN箭头也连接到P电平输入端。
3. 将74LS161的Q0-Q3引脚连接到四个LED元件上,并将LED元件连成串。
4. 将Decoder的A0-A3引脚连接74LS161的Q0-Q3,将Out0-Out3引脚与与门的一个端口连接,另一个与门的端口连接密码输入的中转电路。
5. 将与门的输出端口连接Comparator的“+”端口,将一个预先设定的密码与Comparator的“-”端口相连。
6. 输入正确的密码,实验成功。
四、实验结果通过电路模拟,输入正确密码时四个LED灯都会相应亮起来,且输出信号会自动上升至“5V”。
若输入密码错误,则四个LED灯都不会亮,输出信号为“0V”。
五、实验分析本次实验的电子密码锁电路,通过四位二进制可编程计数器芯片,实现用户输入固定密码,验证正确性后输出特定信号,实现门的自主解锁。
电子密码锁-课程设计报告
![电子密码锁-课程设计报告](https://img.taocdn.com/s3/m/46280448e45c3b3567ec8b4f.png)
1、总体方案设计设计本课题时构思了两种方案:一种是用以A T89C2051为核心的单片机控制方案;另一种是用CMOS数字集成电路控制方案。
考虑到单片机方案原理复杂,而且调试较为繁琐,所以本文采用后一种方案。
1:采用数字电路控制。
其原理方框图如图数字电路控制方案采用数字密码锁电路的好处就是设计简单。
用以CMOS构成的数字逻辑电路作为密码锁的核心控制,共设了8个用户输入键;如果用户输入密码的时间超过5秒(一般情况下,用户不会超过5秒,若用户觉得不便,还可以修改)电路将报警20秒。
通过比较以上两种方案,单片机方案有较大的活动空间,但是成本昂贵;采用数字密码锁电路只要设计合理,仍然能够满足保密性要求。
所以我们采用后一种方案。
2.1设计说明要求用电子器件设计制作密码锁的控制电路,使之在输入正确的代码时输出信号,以启动执行机构动作,并用红,绿LED灯指示开锁、关锁状态。
设计完成的要求:(1)密码锁控制器中存储一个八位代码(二进制),当开锁按钮开关(共设置了11位,其中只有8位有效密码键,其余三位为干扰位和密码更改位)的输入代码等于存储代码时启动开锁控制电路,并且绿灯亮,红灯灭表示开锁状态。
(2)从第一个按钮触动后的5秒内若未能将锁打开,则电路自动复位并有扬声器发出报警信号,报警信号持续时间20秒,同时绿灯灭,红灯亮表示关锁状态。
(3)本设计完成了发挥部分的要求即密码修改电路,通过按钮开关(space 键)控制,用户可以自行修改八位密码,修改后的密码将进入电路锁存。
2.2设计思路根据题目要求,我们设计了这款实用稳定的数字电子密码锁,由密码按钮键、预置密码锁存器、密码比较识别电路、5s计时电路和20s计时电路等组成。
整机采用CMOS数字集成电路,电路新颖,线路简单,保密性强,性能可靠,误码报警等特点。
2.3总体方框图3、设计原理分析电路组成:键盘输入、密码修改、密码检测、开锁电路、执行电路、报警电路、键盘输入锁定电路3.1 密码输入和修改电路:电路总共设计了11个用户输入键,其中有8位是有效的密码按键,其余的分别是M键(仿真电路中采用此按键表示开始输入密码,但是实际电路中可以用灵敏度较高的端口来代替,当人走近门时,触摸了敏感端,由于人自身带电,端口变成高电平,黄色指示灯亮表示电子锁处于待命状态,当然这在仿真电路中通过按键也可以实现),L键(输入密码结束,按下确认键即L键),space键(这个按键装在电路内部,是密码修改键,修改前后分别按space 按键表示修改密码和密码修改结束)3.2报警电路:报警电路实现的功能是:当输入密码的时间超过5s(一般情况下用户输入不会超过)或者密码输入错误,电路报警20s,防止他人恶意开锁。
嵌入式-电子密码锁-设计报告
![嵌入式-电子密码锁-设计报告](https://img.taocdn.com/s3/m/dd962712ad51f01dc381f1b9.png)
嵌入式-电子密码锁-设计报告一、课题名称:电子数码锁二、课题功能描述:随着电子技术的发展,具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。
电子密码锁与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。
电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。
它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。
现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。
其性能和安全性已大大超过了机械锁,其特点如下:1.保密性好,编码量多,远远大于弹子锁。
随机开锁成功率几乎为零。
2.密码可变。
用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。
3.误码输入保护。
当输入密码多次错误时,报警系统自动启动。
4. 电子密码锁操作简单易行。
三、电路原理:1.电原理图2.电路各单元原理说明、理论计算结果1.AT89C51引脚图2.AT89C51引脚功能介绍单片机芯片AT89C51为40引脚双列直插式封装。
其各个引脚功能介绍如下:(1) VCC:供电电压;(2) GND:接地;(3) P0口——P0口为一个8位漏级开路双向I/O口,每个管脚可吸收8TTL门电流。
当P1口的管脚写”1”时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
(5) P2口——P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写”1”时,其管脚电位被内部上拉电阻拉高,且作为输入。
作为输入时,P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址”1”时,它利用内部上拉的优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
电子技术课程设计报告电子密码锁
![电子技术课程设计报告电子密码锁](https://img.taocdn.com/s3/m/7765374aa55177232f60ddccda38376baf1fe020.png)
电子技术课程设计报告设计课题:电子密码锁电子密码锁一、设计任务与要求1.掌握PCB制板技术2.掌握电子密码锁的原理及其应用3.作好焊接及检查二、方案设计与论证1.方案一采纳单片机芯片,和CD系列,CD4043,CD4082,CD4066组合模式,而用按键开关作为输进端口,共需要10个开关分不作为123456789#*。
工作原理:10位输进按键中,.9.0为有效按键,2.3.4.6.7为伪码键。
密码输进由密码键和输进电路IC1来完成。
密码操纵电路为IC2。
电路欲设密码为05198。
在密码输进按键中,SB0操纵着IC2的电源提供并使IC2开机时复位,同时通过RP、C1设定了10秒的限时功能。
当按下SB0后必须在10秒内完成密码的输进操作,否那么无效。
按键SB5与IC2的置位端1S相连,按下SB5时,IC2的1Q输出高电平。
按键SB1,SB9,SB8分不与IC1的S1、S2、S3的一个输进端相连。
S1,S2,S3的输出端分不连接着IC2的2S,3S和0S。
当顺序按下SB1,SB9,SB8时,IC2DE2Q、3Q、0Q输出高电平。
IC2的1R~0R并联后通过电阻R6接低电平,1S、2S、3S、0S分不通过电阻R5~R2接低电平。
伪码键SB2、SB3、SB4、SB6、SB7的一端并联后接到IC2的0R~3R,当按下其中任何一键后,IC2的4个D触发器全部复位,往常按下的有效键全部失效。
C1、RP组成10秒限时电路,当按下SB0后,电源经SB0、VD1向C1充电,当充到接近电源电压时,IC2的S4接通,IC2的VDD通过S4得到工作电流。
松开SB0后,C1通过RP放电,放电时刻为10秒,10秒后S4断开,IC2失电。
IC3为2-4输进与门电路CD4082,当IC2的4个输出端均为高电平常,IC3的1足输出高电平并使R7使VT导通,继电器吸合。
操作过程:按照电路设定密码05198的顺序按下密码键。
当按下SB0后,电源经SB0路通过VT1向C1充电,当C1充电至S4的接通电压后,S4接通,电源经S4加至IC2的VDD。
电子密码锁课程设计本报告
![电子密码锁课程设计本报告](https://img.taocdn.com/s3/m/9e8c8cd333d4b14e85246800.png)
目录摘要2第1章课题设计背景31.1 EDA技术介绍31.2硬件描述语言VHDL41.3QuartusⅡ设计软件的简介 4第2章系统设计总述 52.1 设计要求 62.2 设计方案 62.32.4 整体组装设计原理图8 第3章单元模块程序设计93.1 电子密码锁系统输入模块93.1.1 输入模块程序93.1.2 输入模块元件113.1.3 输入模块仿真123.2 电子密码锁系统控制模块123.2.1 控制模块程序123.2.2 控制模块元件143.2.3 控制模块仿真153.3 电子密码锁系统显示模块153.3.1 显示模块程序153.3.2 显示模块元件163.3.3 显示模块仿真16 第4章收获与体验17 参考文献18摘要随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,收到了广大的用户的青睐。
电子电路设计常用的方法是实验设计法,一般都包括设计法案提出、方案验证、方案修改3个阶段。
传统的实验设计法通常采用手工接实验电路来完成,往往需要经过试验和修改的反复过程,直到设计出正确的电路。
随着电子和计算机技术的发展,生产了在计算机平台上的EDA(电子设计自动化)技术,这种技术除了具有强大的设计功能外,还具有测试、仿真分析、管理等功能。
在“EDA 桌面设计环境”下用计算机来完成电路的系统综合设计和仿真。
用VHDL可以更加快速、灵活地设计出符合各种要求的密码锁,优于其他设计方法。
VHDL是一种符合IEEE标准的硬件描述语言,其最大的特点是借鉴高级程序设计语言的功能特性,对电路的行为与结构进行高度抽象化、规范化的形式描述,并对设计的不同层次、不同领域的模拟验证与综合优化等处理,使设计过程廷到高度自动化。
第1章课题设计背景1.1EDA技术介绍在电子设计技术领域,可编程逻辑器件(如PLD,GAL)的应用,已有了很好的普及。
电子密码锁设计报告
![电子密码锁设计报告](https://img.taocdn.com/s3/m/ab629146a8956bec0975e3a5.png)
湖南工程学院课程设计任务书课程名称单片机原理与应用课题电子密码锁设计专业班级电子信息0801 学生姓名学号指导老师周向红、李晓秀、赵葵银审批周向红任务书下达日期 2011年 5月 9 日任务完成日期2011年 5月 25 日设计内容与设计要求设计内容:以51系列单片机为核心,以开发板为平台;设计一个电子密码锁,要求能完成密码锁的基本功能:能完成密码的输入(4~6位)、显示;并确认,如正确,则开锁,反之,不开锁,重新输入密码;如3次输入密码错误,则报警。
设计任务包括控制系统硬件设计和应用程序设计。
设计要求:1)确定系统设计方案;2)进行系统的硬件设计;3)完成必要元器件选择;4)开发板焊接及测试5)系统软件设计及调试;6)系统联调及操作说明7)写说明书主要设计条件1、MCS-51单片机实验操作台1台;2、PC机及单片机调试软件,仿真软件proteus;3、开发板1块;4、制作工具1套;5、系统设计所需的元器件。
说明书格式目录第1章、概述第2章、系统总体方案设计第3章硬件设计第4章软件设计及调试第5章系统联调及操作说明第6章总结参考文献附录A系统硬件原理图附录B程序清单进度安排设计时间分为二周第一周星期一、上午:布置课题任务,课题介绍及讲课。
下午:借阅有关资料,总体方案讨论。
星期二、分班级焊接开发板星期三、确定总体方案,学习与设计相关内容。
星期四、各部分方案设计,各部分设计。
星期五、设计及上机调试。
星期六、设计并调试第二周星期一:设计及上机调试。
星期二:调试,中期检查。
星期三:调试、写说明书。
星期四--星期五上午:写说明书、完成电子版并打印成稿。
星期五下午:答辩。
参考文献1、王迎旭编.《单片机原理与应用》[M].机械工业出版社.2、楼然苗编.《51系列单片机设计实例》[M].北京航空航天大学出版社.3、黄勤编.《计算机硬件技术基础实验教程》[M].重庆大学出版社4、刘乐善编.《微型计算机接口技术及应用》[M].华中科技大学出版社.5、陈光东编.《单片微型计算机原理及接口技术》[M].华中科技大学出版社.目录第1章概述 .....................P7 第2章系统总体方案设计 .....................P8 第3章硬件设计 .....................P9 第4章软件设计及调试 .....................P12 第5章总结 .....................P15 第6章参考文献 .....................P15 第7章附录A 系统硬件原理图 ...............P16 第8章附录B 程序清单 .....................P16第1章概述密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。
电子密码锁设计报告
![电子密码锁设计报告](https://img.taocdn.com/s3/m/5c9d51fe9b89680203d82518.png)
天水师范学院TIANSHUI NORMAL UNIVERSITY《数字电子技术与逻辑设计》设计报告题目:电子密码锁学院:电子信息与电气工程学院专业:电子信息工程班级: 1 5级电信一班姓名:齐彦张元学号:20151060143,201510601442016 年11月30日一.设计实验的背景,应用及意义二.设计内容及具体要求设计一个电子密码锁控制电路,当按密码规定的顺序按下按钮时,输出端为高电平,电子锁动作。
若不按此顺序或其他按钮时,输出为低电平,电子锁不动作。
基本要求:1.密码可以自行设置,开锁代码为6位二进制数,串行输入。
2.以发光二极管作为指示灯,当输入的密码与锁内的密码一致时灯亮, 电子密码锁打开。
3.当输入的密码错误时灯不亮,不能开锁。
系统进入“错误”状态,并发出报警信号直到按下复位开关,警报才停止,进入等待下一次的开锁状态。
扩展功能:若操作时间超过10s,电路输出报警信号,持续时间20秒,若在此时间内完成,报警信号关闭。
三.根据功能要求构建总体(顶层)设计思想,比较和选定设计方案,确定整个电路的组成以及各单元电路模块完成的功能,画出系统框图四.单元电路模块的设计,阐述功能,给出电路图,verilog源代码及仿真结果(multisim仿真)五.给出完整的总体(顶层)电路设计图,说明电路的工作原理,给出仿真结果(multisim仿真)六.引脚分配情况。
给出编译报告,资源使用情况说明七.下载测试验证。
测试结果,调试中出现的问题、原因及解决方法八.总结设计电路的特点和方案的优缺点九.收获、体会十.参考文献。
单片机电子密码锁报告
![单片机电子密码锁报告](https://img.taocdn.com/s3/m/6661c45ea55177232f60ddccda38376baf1fe0d3.png)
单片机电子密码锁报告电子密码锁是以电子技术为基础所设计的一种安全性较高的锁具,它的开锁方式是通过输入正确的密码或刷卡等方式进行的,能够有效地保护物品的安全。
而单片机电子密码锁就是一种基于单片机的电子密码锁系统,通过单片机的控制来实现密码的输入、判断、存储以及驱动电机等操作,这种锁具被广泛应用于门禁与保险箱等安全领域,具有安全性高、易操作等特点。
一、系统结构单片机电子密码锁是由单片机、液晶显示屏、按键、马达、继电器及外部供电等组成的系统,其中单片机充当着决策、控制、运算和存储等多重角色。
单片机的主控单元负责控制输入与输出,而输入主要是通过按键来完成密码输入以及各种命令的控制,外部输入的密码信号由单片机进行解析并进行验证操作,只有在密码正确的情况下才会通过控制继电器来打开锁具,否则发出报警信号以及短时间内禁止输入密码信号,以确保锁具系统的安全。
在系统的显示单元中,采用了液晶显示屏,用于显示电子密码锁的状态信息以及相关的输入结果,方便用户在操作过程中了解系统的运行情况,提高了整个系统的用户友好性。
此外,该系统还配备了一个马达,用于控制锁具的开关,当用户在输入正确的密码时,通过单片机的判断,驱动马达来以机械方式打开锁具,起到了保护物品安全的作用。
二、技术路线系统的设计中,使用了STC89C51单片机作为主控芯片进行控制,该单片机具有16KB的Flash存储器、1KB的RAM内存及32个输入输出线,可满足该系统的各种控制需求。
在系统的密码输入模块中,采用了4×4数字键盘,并借助单片机来进行扫描和管理。
通过按键输入,单片机将密码信号采集、存储和解析,只有密码符合设定要求时,才能使系统进行操作。
在系统的密码存储模块中,采用了24C01的EEPROM芯片,能够方便地保存密码信息,并且具有读写次数高、长期使用不会消失等好处。
在供电单元中,可以使用交流或者直流输入的电源供应,对于多种应用场合提供了很大的便利。
完整版-电子密码锁设计报告
![完整版-电子密码锁设计报告](https://img.taocdn.com/s3/m/14f889f3c8d376eeaeaa31de.png)
电子密码锁设计报告设计要求:1:用4×4矩阵键盘组成0-9数字键及确认键和删除键。
2:可以自行设定或删除8位密码,能够掉电保存。
3:用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led发光二极管亮做为提示,若密码三次输入不正确,禁止按键输入3秒,同时用红色led发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。
4:自由发挥其他功能.5:要求有单片机硬件系统框图,电路原理图,软件流程图。
系统框架:软件设计流程功能介绍: S6---S8表示:数字键1-3 S9--修改密码键S10--S12表示:数字键4-6S14--S16表示:数字键7-9AT24c02初始化从A T24c02读取密码是否为数字键 键盘扫描是否做出相应处理,比对密码,LED 灯亮,数码管显示,存储密码输入密码S18--删除键S19--数字键0 S20--确认键初始密码:12345 密码位数:5位第一个LED红灯点亮代表输入密码错误或者修改密码不成功;第三个LED绿灯点亮代表输入密码正确或者修改密码成功;第五个LED红灯点亮代表键盘已锁,点亮期间按键无效。
程序功能:本程序结合了24C02存储器的存储功能,可以掉电保存密码。
第一次运行时,若输入12345原始密码后无反应,可以试验着将主程序中前面的一小段被注释线屏蔽的程序前的注释线删掉,然后重新编译下载(可以将密码还原为12345)。
此后,再将这小段程序屏蔽掉,再编译下载。
方可正常使用。
1、开锁:下载程序后,直接按12345,LED绿灯点亮,锁被打开,输入密码时,五位数码管依次显示“8”。
2、更改密码:首先按下更改密码键S9,然后设置相应密码,此时五位数码管会显示“8”。
最后设置完后,按下S20确认密码更改,此后新密码即生效,绿灯亮。
电子密码锁课程设计报告
![电子密码锁课程设计报告](https://img.taocdn.com/s3/m/10f210e1998fcc22bcd10dde.png)
开放创新实验课程设计报告姓名:future_Fee班级:110342A学号:110342132名称:电子密码锁系统设计要求密码输入:按下一组键就输入一个数值,由于实验箱的限制,这组输入的数值为4位二进制数,另加一个按键作为回车键,输入的数值在指示灯上显示;密码清除:按下清除键可清除前面所有的输入值,清除后的数值为0000;密码更改:密码更改键可将目前的数码设定为新的密码;密码上锁:按下锁键可将密码锁上锁;密码解除:按下解除键首先检查输入密码是否正确,密码正确即开锁。
设计方案:系统的整体模块包括密码输入模块、密码控制模块和显示模块等部分;密码输入模块由时钟分频、键盘扫描、键盘译码和键盘储存电路组成;键盘译码模块要区分不同键的不同功能如key1~key4输入数据、key5~key8作为密码清除、密码更改、密码上锁、密码解除等功能。
密码控制模块完成对按键输入和功能按键输入的响应控制。
功能简介:key1、key2、key3、key4四个键输入密码,对应四个输入,并显示在数码显示管上,按下key6回车键,按下回车键后,首先检测密码锁是否上锁,若未上锁,则保存当前密码。
key5键为清楚键,清楚当前输入的密码,变为0000。
key6键为回车键。
key7键为上锁键,按下key7键后,若当前密码锁未上锁,则上锁。
key8键为解锁键,若当前密码锁已经上锁,则按下key8键先检测输入的密码与保存的密码值是否相同,相同则解锁。
LED灯显示密码锁当前状态,亮表示未锁,不亮表示已经上锁。
数码显示管前左边四个显示输入的密码,后面显示保存的面貌。
整体视图:输入模块:Kye1~Key4为密码输入按键,密码为四位10进制数,连接除颤电路,每按一下,该位密码增一。
4位密码通过inputMode模块存储在计数器中,在密码锁未锁状态,按下回车键(Key5),密码存入saveCry模块中,存入移位寄存器。
inputMode模块:锁模块:在锁状态为0时候,可以加锁,按encry即可,在锁状态为1(锁住状态),可以解锁,此时必须保证输入的密码与保存的密码相同,即result为1,并且按下解锁键key8,即可解锁。
EDA课程设计报告_电子密码锁
![EDA课程设计报告_电子密码锁](https://img.taocdn.com/s3/m/970375f61eb91a37f1115cde.png)
.目录第1章概述 (2)第2章设计要求 (2)第3章总体框图 (2)第4章功能模块 (4)4.1 输入模块 (4)4.2 控制模块 (7)4.3 显示模块 (15)第5章总体设计电路图 (17)第6章设计心得体会 (19)参考文献 (20)第1章概述电子密码锁在生活中十分常见,在这我将设计一个具有较低成本的电子密码锁,本文讲述了我整个设计过程及收获。
讲述了电子密码锁的的工作原理以及各个模块的功能,并讲述了所有部分的设计思路,对各部分电路方案的选择、元器件的筛选、以及对它们的调试、对波形图的分析,到最后的总体图的分析。
第2章设计要求本设计名称为电子密码锁,用四个模块,分别为输入模块、控制模块、扫描器模块、显示模块,来控制密码的输入、验证与显示。
设计所要实现的功能为:1 数码输入:手动用3个拨码开关与3个按键设计三位密码的输入,并在显示器显示出该数值。
2 数码验证:开锁时输入密码后,拨动 RT键使其为高电平,而CHANGE为低电平检测,密码正确时开锁,输出LOCKOPEN灯灭,LOCKCLOSE灯亮,表示开锁成功。
3 错误显示:当密码输入错误时,LOCKOPEN灯亮,LOCKCLOSE灯灭,表示开锁失败。
4 更改密码:当改变密码时,按下CHANGE键使其为高电平,而RT为低电平时,可改变密码。
5 密码清除:按下REST可清除前面的输入值,清除为“888”。
第3章总体框图1)设计方案:电子密码锁,主要由三部分组成:密码输入电路、密码锁控制电路和密码锁显示电路。
作为电子密码锁的输入电路,可选用的方案有拨码与按键来控制输入和触摸式键盘输入等多种。
拨码与按键和触摸式4*4键盘相比简单方便而且成本低,构成的电路简单,本设计中采用拨码与按键来作为该设计的输入设备。
数字电子密码锁的显示信息电路可采用LED数码显示管和液晶屏显示两种。
液晶显示具有高速显示、可靠性高、易于扩展和升级的特点,但是普通的液晶存在亮度低、对复杂环境适应能力差的特点,但是在本设计中任然使用LED数码管。
数字电子密码锁设计
![数字电子密码锁设计](https://img.taocdn.com/s3/m/e955da80bceb19e8b8f6ba8f.png)
数字电子密码锁课程设计报告一、设计要求:设计一个保险箱用的4位数字代码锁,该锁有规定的地址代码A、B、C、D4个输入端和一个开箱钥匙孔信号E的输入端,锁的密码由实验者自编。
当用钥匙开箱时,如果输入的4个代码正确,保险箱被打开;否则,电路将发出警报(可用发光二极管亮表示)。
二、设计内容:1、设计分析对输入的地址A、B、C、D的值与对应的保险箱的4位密码进行比较,如果输入值与密码相等,则输出“Y=1”,此时密码锁打开,否则输出“Y=0”。
且输出“Y=0”的时候电路发生警报,即二极管发光。
对输入与密码的比较有两种方式,可以直接用异或门进行比较,也可以用数值比较器进行比较,开箱钥匙信号E作为使能端,当E=1时,有正确的输出,E=0时,电路无有效输出。
2、设计原理图及芯片使用数值比较器CT74LS85芯片实现a)芯片资料:CT74LS85,位4位二进制比较器,其工作原理为:两个输入二进制数和,进行比较时从高位到低位逐一进行比较,如,当时,A>B;当时,A<B,以此类推。
当且仅当,,,时,A=B。
此时输出。
芯片中I为使能端控制输出的有效性。
b)用74LS85实现密码锁逻辑原理图:下图为74LS85的功能表:3、真值表设置密码锁的密码为则,由原理图可知,使用异或门逻辑与使用数值比较器CT74LS85所设计的电路实现相同的功能,故两者真值表均相同,为:4、电路图:5、VHDL仿真TITLE "Top-level file for the 7485 macrofunction. Chooses a device-family optimized implementation.";FUNCTION p7485 (a[3..0], b[3..0], agbi, albi, aebi)RETURNS (agbo, albo, aebo);FUNCTION f7485 (a[3..0], b[3..0], agbi, albi, aebi)RETURNS (agbo, albo, aebo);PARAMETERS(DEVICE_FAMILY);INCLUDE "aglobal.inc";SUBDESIGN 7485(a[3..0] : INPUT = VCC;b[3..0] : INPUT = VCC;agbi : INPUT = VCC;albi : INPUT = VCC;aebi : INPUT = VCC;agbo : OUTPUT;albo : OUTPUT;aebo : OUTPUT;)VARIABLEIF (FAMILY_FLEX() == 1) GENERATEsub : f7485;ELSE GENERATEsub : p7485;END GENERATE;BEGINIF (USED(a0)) GENERATEsub.a0 = a0;END GENERATE;IF (USED(a1)) GENERATEsub.a1 = a1;END GENERATE;IF (USED(a2)) GENERATEsub.a2 = a2;END GENERATE;IF (USED(a3)) GENERATEsub.a3 = a3;END GENERATE;IF (USED(b0)) GENERATEsub.b0 = b0;END GENERATE;IF (USED(b1)) GENERATEsub.b1 = b1;END GENERATE;IF (USED(b2)) GENERATEsub.b2 = b2;END GENERATE;IF (USED(b3)) GENERATEsub.b3 = b3;END GENERATE;IF (USED(agbi)) GENERATEsub.agbi = agbi;END GENERATE;IF (USED(albi)) GENERATEsub.albi = albi;END GENERATE;IF (USED(aebi)) GENERATEsub.aebi = aebi;END GENERATE;agbo = sub.agbo;albo = sub.albo;aebo = sub.aebo;END;6、结果分析由真值表可以看出,当设定密码为Key(1010)时,当且仅当开箱钥匙孔信号E输入有效、地址ABCD输入等于为设定密码Key(1010)时,输出有效开箱信号,打开密码锁;当钥匙孔信号E=0输入无效时,输出Y和报警信号W信号均无效为;当钥匙孔信号E=1有效,但输入地址ABCD与设定密码Key不相符时,输出开锁信号Y=0无效,且报警信号W=1(即接入LED二极管发亮报警)。
南邮电子密码锁设计实验报告
![南邮电子密码锁设计实验报告](https://img.taocdn.com/s3/m/174c70f4f8c75fbfc77db26f.png)
1.3 设计条件
1.3.1 电源条件:稳压电源提供+5V 电压。
1.3.2 可供选择的元器件如表 1-1 所示
型号
名称及功能
数量
74374
八 D 触发器
1片
7474
双 D 触发器
2片
28C64B
EEPROM 存贮器
1片
7485
4 位比较器
1片
74161
4 位二进制计数器
2片
74164
8 位移位寄存器
3.6 整机电路图··························································· 12
3.7 元件清单····························································· 13
1
第四章、电路测试
12
从图中看出,在 D 触发输出后,毛刺被有效去除了。
3.6 整机电路图
图 3-5-1 消抖效果图
13
3.7 元件清单 本设计除了老师建议的一些芯片,我还使用了少量其他数字芯片,完成了要求外的一些
指标,使用的芯片如下: 表 3-7 所用元件清单
型号
名称及功能
数量
74374
八 D 触发器
1
2
第一章、系统结构与技术指标
1.1 系统功能结构 密码锁:用数字键方式输入开锁密码,输入密码时开锁;如果输入密码有误或者输入时
间过长,则发出警报。 密码锁的系统结构框图如下图 1-1 所示,其中数字键盘用于输入密码,密码锁用于判
断密码的正误,也可用于修改密码。开锁绿亮表示输入密码正确并开锁,报警红亮表示密码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子密码锁实验报告
一,实验目的
1. 学习按键扫描及LED数码管显示的设计方法。
2. 设计任务及要求利用实验平台上8个LED数码管,led发光二级管,蜂鸣器设计一电子密码锁。
二,实验要求
1:用4×4矩阵键盘组成0-9数字键及确认键和删除键。
2:可以自行设定或删除8位密码,能够掉电保存。
3:用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led发光二极管亮一秒钟做为提示,若密码不正确,禁止按键输入3秒,同时用红色led发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。
4:自由发挥其他功能.
5:要求有单片机硬件系统框图,电路原理图,软件流程图。
三,实验基本原理
这个密码锁的功能是使用矩阵键盘中的十二个键输入密码0到9还有退格键和enter 键,输入的同时在八位数码管上显示用户所输入的密码,未输入的位置用横杆填补表述未输入。
输错的密码可以用退格键删除,当输入的密码超出设置的位数时,数据溢出,清零。
用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led发光二极管亮一秒钟做为提示,若密码不正确,禁止按键输入3秒,同时用红色led 发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。
当输入正确的密码,按enter键(每一次密码匹配都要按),本程序时间P1口全部打开,在实际中可以将P1口或是其他IO口接一个电位器,然后打开锁。
四,实验设计分析
设计思想
本系统采用单片机AT89S52作为核心元件的一款具有本机开锁,加锁,修改密码和错误报警的电子密码锁。
电子密码锁的原理是:从键盘输入一组密码,CPU把该密码和设置密码比较,对则将锁打开,错则要求重新输入,并记录错误次数,如果三次错误,则被强制锁定并报警。
初步设计思路如下:
1.输入密码用矩形键盘,包括数字键和功能键,功能键包括退格键和确认键。
2.LED数码管显示输入密码,但是只是输出显示符号8 。
采用动态扫描输出。
3.用发光二极管模拟锁的情况,锁关时发光二极管灭,打开时发光二极管亮。
4.输入密码错误时报警,3次输入错误时键盘锁定,键盘无法接收数据。
1.软件设计思路
软件的设计主要包括矩形键盘键值的读取、LED动态扫描输出程序、密码判断程序和
报警程序。
电子密码锁工作的主要过程是LED数码管提示开始输入密码,通过键盘输入密码,按下确认键后判断密码的正确性,作出开锁或报警处理。
当输入密码连续输入错误3次时,锁定键盘。
程序将分为主程序和中断服务子程序。
主程序负责键盘键值读取,密码判断和开锁或报警处理。
中断服务子程序主要是负责LED数码管显示。
根据程序功能,程序主要分为以下几部分:
a) 键盘键值读取程序
键盘键值读取程序包括键盘扫描、消除抖动、键译码等内容。
按键的识别主要有两种方法:行反转法和行扫描法。
因为键盘为机械开关,容易引入抖动。
为了消除抖动干扰,在程序中要加入消除抖动的部分。
b) LED数码显示程序
LED数码显示器是一种应用很普遍的显示器。
程序主要负责把要显示的数字或字母对应的显示码送到相应的LED显示管。
有多位需要同时显示时,可以采用动态刷新的方法,就可以得到稳定的输出。
循环显示6个数码管,可以实现稳定的数字显示。
中断服务程序只负责数据的输出显示,主程序根据所处的状态修正显示数据。
c)密码判断程序
密码判断程序放在主程序中,有按键时读取,当确定键按下时作出判断。
在程序中设置6字节的空间存放设定的密码和8字节存放键盘输入的数据。
根据读取的键盘数据和预先设定的密码逐位比较就可以判断输入密码的正确性。
2.密码显示与开锁
键入密码时,有时并不能确认某一个按键是否被按下,故我们在电路中设置了模拟显示电路。
同时考虑到密码显示出来有可能外泄的问题,在显示时用一个固定的字母“H”来提醒用户是否有键按下,这样既巧妙的提醒了用户又有效的保护了密码,这是本设计安全性的一个体现。
除此之外,在一个键按下后,蜂鸣器机会发出“嘀”的一声,也用于提示此键已按下。
在用户输入正确的六位密码后,再按“确认”键,便可开锁,在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。
3.密码的修改
当你设定的用户密码不小心外泄时,这时就要及时通过密码修改程序来更改密码了,我们可以选择管理密码和用户密码中的一种对其进行修改。
当选用用户密码修改时,首先要正确输入原用户密码,然后按“更改”键,如果原密码正确则进入密码修改程序。
接下来输入六位新密码,接着新密码即被存入AT24C02中,至此用户密码修改成功。
当选用管理密码修改时,首先要正确输入管理密码,然后按“MAS”键, 如果管理密码正确则进入密码修改程序。
接下来输入8位新密码,接着新密码即被存入存储器中并把原来的用户密码覆盖。
当然在普通情况下不建议使用这种修改方法,只有在用户密码被非法修改时才使用。
这是本设计安全性的重要体现。
4.密码错误报警
当用户键入错误密码并按下“确认”键时,系统会发出两秒连续的报警声同时密码错误指示灯亮;当连续三次出现密码错误时,则系统会长时间报警,并将密码锁锁定一段时间,此举可有效防止非法操作。
这是本设计安全性的又一体现。
五,实验要求实现
电路设计
主程序流程图:
中断服务程序
四功能模块设计
4.1 键盘
因为本设计用到的按键较多,所以本设计采用行列式键盘,同时也能减少所占用的I/O线的数目,节省资源。
行列式键盘原理电路图:
每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。
本设计发射部分采用4*3键盘,接收部分采用4*4键盘。
键盘扫描时,首先由I/O口低四位输出高电平,高四位输出低电平,假若有键按下,那么在I/O口低四位即可读出低电平,接着延时消抖,再具体判断是何键按下。
现将接收部分的键盘功能做一下说明。
如图,0至9号键为数字键,六位密码从中产生。
“确
认”键,“更改”键,“取消”键和“MAS”键为功能按键,具有控制开锁,更改密码和取消相关操作等功能。
剩余的两个键在本设计中未用,可作为今后的功能扩展键使用。
4.3显示模块
电路总体设计图如下:。