电子密码锁的设计与实现.docx
实验四 电子密码锁的设计

实验四电子密码锁的设计一、实验任务及要求设计一个通用电子密码锁,其具体功能要求如下:(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)。
最新电子密码锁的设计与实现

宁夏大学新华学院课程设计目录摘要........................................................................2 Abstract...................................................................2 第1章绪论.............................................................3 §1.1 国内外现状.........................................................3 §1.2 设计目标...........................................................3第2章电子密码锁的系统设计.........................................4 §2.1 方案论证与比较.....................................................4 §2.2 硬件总体设计.......................................................4 §2.3 控制芯片部分.......................................................5 §2.4 键盘接口部分.......................................................6 §2.5 外部存储器电路.....................................................6 §2.6 小结...............................................................9 第3章控制系统软件设计.............................................10 §3.1 系统软件总体设计.................................................10 §3.2 I2C通讯子程序.....................................................10 第4章系统抗干扰措施...............................................14 §4.1 硬件系统设计原则..................................................14 §4.2 系统抗干扰措施....................................................14 第5章总结与展望.....................................................16 参考文献..................................................................18电子密码锁的设计与实现摘要:随着电子产品向智能化和微型化的不断发展,单片机已成为电子产品研制和开发中首选的控制器。
智能电子密码锁的设计与实现-开题报告

起止日期 2021 年 12 月 20 日-12 月 31 日 2022 年 01 月 01 日-02 月 28 日
2022 年 3 月 01 日-4 月 05 日 2022 年 4 月 06 日-4 月 19 日 2022 年 4 月 20 日-4 月 26 日 2022 年 4 月 27 日-6 月 10 日
毕业设计开题报告
系
部:
专
业:
题
目:
电子工程系 电子信息工程 智能电子密码锁的设计与实现
2022 年 03 月 03 日
毕业设计开题报告
一.研究目的及意义 电子锁可以在日常生活和现代办公中,住宅与办公室的安全防范、单位的文件档案、
财务报表以及一些个人资料的保存等多种场合使用,大大提高了主人物资的安全性。 电子密码锁的种类有很多,有简易的电路产品,也有基于芯片的性价比较高的产品。
毕业设计开题报告
三.本课题要研究或解决的问题和拟采用的研究手段(途径) 要研究或解决的问题:
1.密码锁的输入功能。 2.电子密码锁具有密码存储功能。 3.使电子密码锁具有系统提示及状态显示等功能。 4.密码锁的警报提示功能。 拟采用的研究手段: 1.采用 4*4 键盘输入模块,分为密码输入键和几个功能按键。 2.采用 24C04 掉电存储电路,使电子密码锁具有密码存储功能。 3.通过 LCD1602 液晶显示电路模块来对系统状态进行实时显示。 4.采用蜂鸣器报警电路来实现密码锁的警报提示功能。 该设计由 AT89C51 单片机,24C04 掉电存储电路,单片机时钟电路,LCD1602 显 示电路,键盘和继电器模拟开锁电路组成。单片机负责控制整个系统的执行过程。 键盘矩阵模块分为密码输入按键与几个功能按键,用于完成密码锁输入功能; LCD1602 液晶显示电路模块用于完成对系统状态显示及操作提示功能和辅助报警与输 入提示;蜂鸣器报警电路用于完成输错密码时候的警报功能;密码存储模块用于完成掉 电存储功能,使修改的密码断电后仍能保存;复位电路用于完成系统的复位;单片机时 钟电路为单片机产生时序脉冲,单片机所有运算和控制过程都在同一时钟脉冲下驱动。
电子密码锁设计课程设计

电子密码锁设计课程设计电子密码锁的设计与实现一、引言随着科技的发展和人们生活水平的提高,电子密码锁在日常生活和工业生产中的应用越来越广泛。
电子密码锁是一种通过密码输入来控制机械锁的开启的设备,具有安全、方便、耐用等优点。
本课程设计旨在让我们了解和掌握电子密码锁的设计原理和实现方法。
二、系统组成和工作原理电子密码锁主要由密码输入模块、控制模块和机械锁机构三部分组成。
1.密码输入模块:用户通过键盘输入密码,键盘将输入的密码转换成电信号,传输给控制模块。
2.控制模块:控制模块是电子密码锁的核心部分,它主要包括CPU、存储器和输入/输出接口等。
CPU接收来自键盘的电信号,并将其存储在存储器中。
当输入的密码与存储器中的密码匹配时,CPU控制机械锁机构开启。
3.机械锁机构:机械锁机构包括锁体、锁芯和电机等部件。
当控制模块接收到正确的密码后,电机运转带动锁芯转动,从而打开锁体。
三、系统硬件设计1.密码输入模块:采用矩阵键盘作为输入设备,可以输入数字、字母等密码。
2.控制模块:采用Arduino UNO板作为主控器,具有丰富的输入输出接口和强大的编程能力。
3.机械锁机构:采用电动式锁芯和电机,通过控制电机的正反转来实现锁体的开关。
四、系统软件设计1.密码存储:将正确的密码存储在Arduino板的EEPROM中,掉电后数据不会丢失。
2.密码匹配:当用户输入密码后,程序将输入的密码与存储器中的密码进行比较,如果匹配则控制电机运转开启锁体。
3.报警功能:如果输入密码错误次数超过设定值,程序将启动报警装置发出警报。
五、系统调试与优化1.硬件调试:检查电路连接是否正确,确保电源稳定可靠,各模块之间通信正常。
2.软件调试:通过串口输出调试信息,检查程序运行是否正确,密码匹配是否准确。
3.优化设计:针对硬件资源和性能进行优化,如采用更小的元件、降低功耗等;针对用户体验进行优化,如增加语音提示、优化操作流程等。
六、结论与展望通过本次课程设计,我们深入了解了电子密码锁的设计原理和实现方法。
电子密码锁指导书.docx

2012〜2013皆耳第一醪期电子密码锁课程设计指导书课程名称基于Pic H片机的电子密码锁设计专业电子信息适用年级—班级 ___________ 指导教师____________________一、设计的目的随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲睐。
本设计是在完成本课程内容的课堂教学之后进行的。
目的是使学生初步掌握单片机系统的设计方法,从了解设计要求,运用所学知识并查阅有关技术资料进行系统设计,到模拟调试,然后整理有关技术资料,编写设计说明书,使学生得到一次系统的训练,从而对本课程理解更深刻,更清楚,更重要的是提高应用理论知识和解决实际问题的能力。
二、系统的组成与原理方框图本系统由单片机最小系统、4x4矩阵键盘、LCD显示电路,LED发光二极显示和蜂鸣器报警电路等系统组成。
如下图所示:图(1)系统硬件方框图1•系统电路模块(1) PIC单片机最小系统・X14MHz ・^TEXT>1 U1AX 二C1 .亠C2丄2・2pF #—<TEX>2— 622 pF・・<TEXT>TOSC1/CLKIN RBO/INTOSC2/CLKOUT RB1RB2RA0/AN0RB3/PGMRA1/AN1RB4RA2/AN2>VREF./CVREF RB5RA3/AN3A/REF+RB6/PGCRA4/TOCKI/C10UT RB7/PGDRA5/AN4XSS/C20UTL\8电10R9100k■ ■ • • •」C3 .・104pF-・<TEXT>RC0/T1OSO/T1CKIRE0/AN5/RD RC1/T1OSI/CCP2RE1/AN6/WR RC2/CCP1RE2/AN7/CS RC3/SCK/SCLRC4/SDI/SDAMCLRA/pp/THV RC5/SDO RC6/TX/CKRC7/RX/DTRDO/PSPORD1/PSP1RD2/PSP2RD3/PSP3RD4ZPSP4RD5/PSP5RD6XPSP6RD7XPSP7aHiHi-gaHi-ggPIC16F877A(2) 4x4键盘矩阵电路vcc3333O O o o224444o o oo o o8o24444o3E4Pl.3Pl.4 3二二二二二 fo og§ 9;4T0c-T DPl.5Pl.6 (3) LCD显示器电路LM016L(4) 蜂鸣器电路图(5 )状态指示路图三、系统操作规程(1)输入密码rrEXT>C-4 COvcc Q3 8550RJ234 7KP3.6U2:A.•0「;2;32 2 2 2 p 000丄一A0 YO A1 Y1 A2 V2 A3Y3OE18 16 14 122 468L O・ <TEXT> . 74HC244<TEXT>*.<TEXT> ・亠L1 L 1<TEXT>・・ L2<TEXT> ・锁开锁开 键有效 键有效 <TEXT> •.L3<TEXT> . .L3 「错误:错误 <TEXT> .系统上电以后,锁被合上,这时锁合指示灯(L0 ) A 亮,表示锁是合上的, 如图所示:错误(2)在锁合的状态下,输入6位密码进行开锁:每输入一位密码时,显示器上显示一个“-”,后输入的密码在低位, 前面输入的往左移。
(完整版)电子密码锁的设计

指导教师签字:年月日目录摘要 (2)Abstract (2)第一章、绪论 (3)1.1 课题研究的相关背景 (3)1.2 课题研究的基本理论依据 (3)1.3 设计课题的任务 (3)1.4 课题研究的目的、意义 (4)第二章设计方案简述 (5)2.1 方案的论证 (5)2.2 方案的原理 (5)2.3 方案的总体框图 (5)第三章详细的设计方案 (6)3.1 密码的设定和密码的输入部分 (6)3.2 执行电路 (7)3.3 NE555秒脉冲电路 (7)3.4 报警电路 (8)3.5 倒计时电路 (8)3.6 稳压电源电路 (9)第四章设计结果及分析 (10)4.1 电路的调试 (10)4.2 功能的扩展 (10)第五章设计的总结 (12)参考文献 (13)摘要随着人门生活水平的提高,如何提高实现家庭的防盗这一问题业变得尤其突出,传统的机械锁由于其构造的简单,被撬开的事件屡见不鲜,使我们的财产以及人身安全有了很大的隐患,这致使我们寻求更好的安全措施。
电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的喜爱。
设计本课题时构思的方案是采用74LS86四两输入的异或门和74LS04非门构成的数字逻辑电路控制方案。
初始密码(可以修改)设定后,当输入密码正确时按下开锁按钮,绿灯亮表示开门;当输入密码错误按下开锁按钮时,红灯亮表示报警状态,同时555电路产生脉冲进入10秒的倒计时并发出报警声。
关键词:电子密码锁;74LS86四两输入异或门;74LS04非门;555电路AbstractWith the people's living standards increase, how to improve the implementation of family protection against the problem has become particularly outstanding, and the traditional machinery lock because of its construction of simple and forcing open the event of the case, our property and security of person was a great potential, this to us for the safety measures. the lock because of its confidentiality high, with agility, safety, was the favorite.This subject in the design concept plan was adopted 74ls86 4 liang of the input power, or the door and 74ls04 the door of a digital logic to control circuit.Initial passwords ( can modify ) then, when the right to enter the password when the open lock button, the green light before the door when their ; enter the password mistake in the open lock button when the lights indicate the state, the circuit produce pulses 555 to 10 seconds count down and alarm.Keywords:electronic combination locks;74ls86 ;74ls04 ;555 chip第一章、绪论1.1 课题研究的相关背景在现代城市中,随着人们生活水平的提高,如何提高实现家庭的防盗这一问题业变得尤其突出,传统的机械锁由于其构造的简单,被撬开的事件屡见不鲜,使我们的财产以及人身安全有了很大的隐患,这致使我们寻求更好的安全措施。
电子密码锁的设计与制作毕业论文

本科毕业设计(2010届)题目电子密码锁的设计学院电子信息学院专业电子信息工程班级学号学生姓名指导教师完成日期摘要在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。
若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。
随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。
为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。
密码锁具有安全性高、成本低、功耗低、易操作等优点。
鉴于目前的技术水平与市场的接收程度,电子密码锁成为了电子防盗产品的主流。
基于以上思路,本次设计使用ATMEL公司的AT89C51实现一基于单片机的电子密码锁的设计,其主要具有以下功能:设置密码功能、用户密码修改功能、超时报警功能、液晶1602显示功能、4×4矩阵键盘输入等基本密码锁功能,还具备掉电存储于AT24C02以及声光提示等保护功能。
另外,此系统依据实际的情况还可以添加遥控功能。
本系统成本低廉,功能实用,比较适合当代市场的要求。
关键词:AT24C02;AT89C51;电子密码锁;4×4矩阵键盘ABSTRACTIn our daily life and work, the security of house, company departments, document files, financial forms, as well as some personal information always used the lock to protect them. If people use the traditional mechanical key to lock out the door, people often need to take more than one key with themselves, which is inconvenient. And if we lose the key by careless, the security looks very easy to break out. With the continuous development of science and technology, people’s demand to the equipment of insurance and safety of daily life become more and more high. In order to meeting to the require- ments of the use of locks and increasing their security, the code lock with the pass- word replaced the key came into being .The code Locks have some advantages, such as safe, low cost, low power consumption, easy operation and so on. Given the current level of technology and the receive degree of market, the electronic code lock become the mainstream of the electronic anti-theft products.Based on the above ideas, this design used the AT89C51 made by ATMEL corpor- ation to produce a electronic code locks based on a single chip, which have the follow- ing main functions: establishment password function, user password revision function, overtime warning function, liquid crystal 1602 demonstration functions, 4×4 matrix keyboard input and so on basic electronic code lock function, but also has the power failure to save in protection functions and so on AT24C02 as well as acousto-optic prompt. Moreover, this system basis on actual situation may also be increased the remote control function. This system cost is inexpensive, the function is practical, satisfies completely request of suitable contemporary market.Keywords: AT89C51; AT24C02; the electronic code lock; 4×4 Matrix keyboard目录摘要 (1)ABSTRACT (2)目录 (3)1 引言 (5)2 概述 (7)2.1 背景 (7)2.2 电子密码锁 (7)2.3 电子密码锁的特点 (7)2.4 电子密码锁的发展趋势 (8)3 方案论证与比较 (9)4 硬件设计 (11)4.1 主控电路设计 (12)4.1.1单片机AT89C51简介 (12)4.1.2单片机的最小系统 (13)4.1.2.1系统晶振电路的设计 (14)4.1.2.2系统复位电路的设计 (14)4.2 开锁驱动电路 (15)4.3 4x4矩阵键盘 (16)4.4 液晶显示电路的设计 (17)4.4.1 液晶显示简介 (18)4.4.2 1602字符型LCD简介 (19)4.4.3 LCD与单片机的接口电路 (21)4.5 电源电路设计 (22)5 软件设计 (24)5.1 软件编程环境的介绍——Keil 简介 (24)5.2 软件的总体结构设计 (24)5.2 程序流程图 (25)5.3 系统程序介绍 (26)5.3.1 4x4矩阵键盘 (26)5.3.2 LCD显示程序设计 (27)5.3.3 存储模块24C02的读写程序设计 (30)6 系统的可靠性设计及综合调试 (32)6.1抗干扰措施 (32)6.2系统的综合调试 (34)总结 (37)致谢 (38)参考文献 (39)附录 (40)1 引言在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。
电子密码锁设计与制作

毕业设计(论文)论文题目:电子密码锁设计与制作系别:电子工程系专业:通信技术班级:学号:学生姓名:指导教师:电子密码锁的设计与制作摘要:在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。
若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。
随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。
为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。
电子密码锁具有安全性高、成本低、功耗低、易操作等优点。
论文首先简要介绍了本课题的背景和主要工作,在接着讲单片机电子密码锁中涉及到的理论知识,和一些主要器件做了简要的阐述和说明。
前面两部分主要是用理论知识来支撑本课题的设计,第三部分则是对本课题的方案进行论证,和共组成部分的比较和选用,同时也包括了系统的调试和产品的加工包装。
本次做的电子密码锁是以单片机STC89C52为核心,结合矩阵键盘、LCD显示和报警系统组成。
系统能完成开锁、密码错误超次锁定、修改用户密码基本的密码锁的功能。
达到制作简易密码的目的。
关键词: 单片机STC89C52 LCD显示自动报警目录第一章概述 (1)1.1背景 (1)1.1.1简介 (1)1.1.2发展趋势 (1)1.2主要工作 (2)第二章电子密码锁理论 (3)2.1原理图 (3)2.2键盘原理 (3)2.3主要元器件 (4)2.3.1 主控芯片STC89C52 (4)2.3.2 AT24C02芯片简介 (5)2.3.3 LCD液晶显示器 (6)2.4 单片机最小系统 (6)2.4.1复位电路 (7)2.4.2晶振电路 (7)第三章电子密码锁设计与调试 (8)3.1系统总体方案设计 (8)3.2单片机的选择和论证 (9)3.3显示器选择和论证 (9)3.4键盘方案的选择和论证 (10)3.5硬件设计 (10)3.5.1 按键电路 (10)3.5.2 报警电路 (11)3.5.3开锁电路 (11)3.5.4 密码存储电路 (12)3.5.5 电路图的绘制 (12)3.6软件设计 (14)3.6.1主程序设计流程图 (14)3.6.2 键功能程序流程图 (14)3.6.3开锁程序流程图 (15)3.7系统调试 (16)3.7.1 硬件调试 (16)3.7.2 软件调试 (16)3.7.3 仿真调试 (17)3.8 产品封装 (19)第四章结论 (21)4.1 总结 (21)4.2 展望 (21)参考文献 (23)致谢 (24)概述第一章概述1.1背景1.1.1简介电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品[8]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子 密码锁的设计与实现
2.了解按键消抖的方 法。
、实验内容与要求
1 •基本要求
当三次密码输入不正确时,系统应 锁定键盘 10s 。
2 •提高要求
将用户分为管理者和 使用者,管理者拥有超级密码,可以修改 其他人的密码。
使 用者不能修改密码。
三、实验报告要求
1. 设计目的和内容 2•总体设计
3 •硬件设计:原理图
接线图)及简要说明
四、总体设计
:从键盘输入一组密码, CPU 把该密码和设置密码比较 ,对则将 锁打开(不同锁的控
制方式不一样,比如加电控制电磁铁抽回 ,从而打开 ),错则要求重新 输入,并记录错误次 数,如果三次错误,则被强制锁定并报警 ,除非超级密码或者其他的 手段打开,比如延时 一段时间。
初步设计思路如下:
1.输入密码用矩形键 盘,包括数字键和功能键,功能键包括退 格键和确认键。
2. LED 数码管显示输入密码,但是只是输出
显示符号 8 。
采用动态 扫描输出。
、实验目的
1.进一步掌握键盘扫
描和 LED 显示的程序设计。
4 •软件设计框图及程 序清单
5 •设计结果和体会(
包括遇到的问题及解决的方法)
3.综合运用微机原理
的软硬件知识。
1) 具有密码输入功能, 密码最多为6位; 2) 设置退格键,以便删 除输入错误的密码;
3) 在输入的密码时数码 管上只显示 8,并根据输入位数依 次横移; 4) 设置确认键,当确认 键按下后,判断输入密码是否正确;
5) 当输入密码正确时,
点亮发光二极管;当输入密码不正确时, 发光二极管不亮并
且蜂鸣器报警,重新 输入, 电子密码锁的原理是
3.用发光二极管模拟锁的情况,锁关时发光二极管灭,打开时发光二极管亮。
4 .输入密码错误时报警,3次输入错误时键盘锁定IOs ,键盘无法接收数据。
软件的设计主要包括矩形键盘键值的读取、LED 动态扫描输出程序、密码判断程序和报警程序。
五、硬件设计
根据设计思路,硬件电路可通过实验平台上的一些功能模块电路组成,由于实验平台上的各个功能模块已经设计好,用户在使用时只要设计模块间电路的连接,因此,硬件电路的设计及实现相对简单。
完整系统的硬件连接如图1 所示。
硬件电路由LED 数码管显示模块、按键模块、发光二极管电路和蜂鸣器模块组成。
各个模块的详细说明:
1 . LED 数码管模块
实验平台上提供一组六个LED数码管。
插孔CS1用于数码管段选的输出选通,插孔
CS2用于数码管位选信号的输出选通。
本设计用6个数码管来动态显示时分秒,动态显示
的定时时间由8253定时/计数器来实现。
8253主要是实现每位显示时间Ims,由8253的计数器0来实现。
ClkO 接实验平台分频电路输出Q6, f = 46875hz° GATEO接8255的PAO ,
由8255的PA0输出来控制计数器的起停。
OUT0接8259的IRQ2 ,定时完成请求中断,进
入中断服务程序。
软件在中断服务程序中LED 数码管显示。
PC BUS
路 图
1
系统硬件电路图
2. 按键模块
按键模块包括有数字 键和功能键。
数字键包括
0 - 9键,用于密码的输入。
功能键有退 格键和确认键。
具体 的功能定义如下表。
键盘电路和 8255的连接见图2所示。
具体的功能
定义如下表。
按键 键名 功能说明
8255 PBO
PB1 PC
地址CS1
译码CS2
电路CS3
CS4
数码管显示模块
IRQ2
8259
发光二极管 键盘电路
OUTo
Q6
PA0
蜂鸣器 8253 GATEO
CIkO
3. 报警模块和发光二极管模块
报警模块由蜂鸣器驱动电路和8255组成。
选择一只压电式蜂鸣器,压电式蜂鸣器工作
时约需要IOOmA驱动电流。
蜂鸣器电路如图4所示。
当8255的PBo 口输出为高电平时,蜂鸣器产生蜂鸣音,8255输出为低电平时,蜂鸣器不发声。
发光二极管也是用8255输出来驱动亮灭。
图3蜂鸣器电路
六、软件设计
1.软件设计思路
电子密码锁工作的主要过程是LED数码管提示开始输入密码,通过键盘输入密码,同时LED显示密码输入情况,按下确认键后判断密码的正确性,作出开锁或报警处理。
当输入密码连续输入错误3次时,锁定键盘10s。
程序将分为主程序和中断服务子程序。
主程序负责键盘键值读取,密码判断和开锁或
报警处理。
中断服务子程序主要是负责LED数码管显示。
根据程序功能,程序主要分为以下几部分:
a) 键盘键值读取程序
键盘键值读取程序包括键盘扫描、消除抖动、键译码等内容。
按键的识别主要有两种方法:行反转法和行扫描法。
因为键盘为机械开关,容易引入抖动。
为了消除抖动干扰,在程序中要加入消除抖动的部分。
b) LED 数码显示程序
LED 数码显示器是一种应用很普遍的显示器。
程序主要负责把要显示的数字或字母对应的显示码送到相应的LED 显示管。
有多位需要同时显示时,可以采用动态刷新的方法,就可以得到稳定的输出。
在程序中用8253来定时Ims,定时时间到时请求中断服务,进入中断服务程序输出1 位显示数据。
循环显示6 个数码管,可以实现稳定的数字显示。
中断服务程序只负责数据的输出显示,主程序根据所处的状态修正显示数据。
c) 密码判断程序
密码判断程序放在主程序中,有按键时读取,当确定键按下时作出判断。
在程序中设置6 字节的空间存放设定的密码和6 字节存放键盘输入的数据。
根据读取的键盘数据和预先设定的密码逐位比较就可以判断输入密码的正确性。
d) 开锁和报警程序
通过8255 相应位的输出数据然后延时一段时间就可以控制发光二极管的亮灭和蜂鸣器的鸣叫。
2.程序流程图
1) 主程序流程图见图4 所示。
清除上次数 子键
输入
图4主程序流程图
2)中断服务程序流程图 见图5所示。
开始
系统初始化 提示输入密
码
密码判断 N 正确 Y 开锁 报警
N
Y 延时IOs
存储键值 刷新LED 输出数据
键盘扫描
Y
数子键
N Y
确认键
Y
Y
键按下 N 退格键
N
N 图5中断程序流程图。