电子电路课程设计密码锁(满分实验报告)解析
电子锁实验报告
电子密码锁设计设计任务及要求分析设计一个电子密码锁,在锁开的状态下输入密码,设置的密码共4位,用数据开关K1~K10分别代表数字1,2,…,9,0,输入的密码用数码管显示,最后输入的密码显示在最右边的数码管上,即每输入一位数,密码在数码管上的显示左移一位。
可删除输入的数字,删除的是最后输入的数字,每删除一位,密码在数码管的显示右移一位,并在左边空出的位上补充“0”。
用一位输出电平的状态代表锁的开闭状态。
根据题目要求,本次设计包括键盘输入电路的设计,输出显示电路的设计,密码控制电路。
其中输出显示电路包括数码管显示电路和密码锁开关状态显示电路。
方案比较及认证在本次设计中,我们使用的Altera公司的FPGA芯片EPF10K10LC84-3。
由于采用VHDL 语言设计,使用FPGA 实现,因而体积小,功耗低、性能特别灵活,稍加修改就可以改变密码的位数和输入密码的次数,因而升级和维护都很方便,而且容易做成ASIC 芯片,具有较好的应用前景。
但由于结构还比较简单,有待进一步完善。
系统原理阐述在本实验中采用的是VHDL编程,通过文本编辑方式建立模块,通过原理图方式将生成的图形符号连接,然后再下载,进行硬件的仿真。
为达到密码锁的以上功能,可将电子密码锁分为以下几个模块进行设计:按键输入电路:2、密码控制电路:包括密码删除、修改与检验。
3、输出显示电路。
其中,最为关键的是密码控制电路即主电路的设计。
可以为主电路分配如下管脚:其中set为密码设置端口, check为密码检验端口, close为关锁端口, back为删除密码端口, clk时钟输入端口, dn[3..]为数字输入端口,lock密码锁状态显示端口。
在此电路中每输一位数,密码在数码管上左移一位。
设制删除密码back,每按下一次back,删除最后输入的数字,左边空处补0。
设置密码确认信号set,当四位密码输入完毕,按下set,设置的密码被存储。
设置密码锁状态信号lock, lock=0表示锁未开,lock=1表示锁开,同时设置关锁信号close,按下close,则锁关闭。
实习报告电子密码锁设计
实习报告:电子密码锁设计一、实习背景及目的随着科技的不断发展,电子产品在日常生活中扮演着越来越重要的角色。
电子密码锁作为一种安全技术防范产品,具有安全性高、成本低、功耗低、易操作等优点,已广泛应用于家庭、办公室、银行等领域。
本次实习旨在了解并掌握电子密码锁的设计原理,提高自己在电子技术方面的实际操作能力。
二、实习内容与过程1. 了解电子密码锁的原理电子密码锁的核心部分是密码控制器,它通过接收键盘输入的密码,与设定的密码进行比较,根据比较结果控制电路或芯片的工作。
在本实习中,我们采用51单片机作为密码控制器,通过矩阵键盘输入密码,利用数码管显示密码输入情况。
2. 设计电路图根据实习要求,设计电子密码锁的电路图。
电路主要包括51单片机、矩阵键盘、数码管、报警电路、电源等部分。
矩阵键盘用于输入密码,数码管用于显示密码输入情况,报警电路用于提示密码错误,电源为整个电路提供稳定的电压。
3. 编写程序使用C语言编写程序,实现电子密码锁的功能。
程序主要包括主函数、键盘扫描函数、数码管显示函数、报警函数等。
主函数负责初始化硬件设备,循环调用键盘扫描函数,接收并显示密码输入情况。
键盘扫描函数用于检测矩阵键盘按键状态,数码管显示函数负责在数码管上显示输入的密码,报警函数则在密码错误时发出报警。
4. 调试与优化在Proteus仿真软件中进行电路仿真,调试程序。
在仿真过程中,发现键盘输入与数码管显示部分存在问题,通过修改程序代码,解决了这些问题。
同时,对程序进行优化,提高了运行效率。
5. 实物焊接与测试根据电路图,购买元器件,进行实物焊接。
焊接完成后,对电子密码锁进行测试,验证其功能是否符合预期。
在测试过程中,发现报警功能存在问题,经过排查,发现是报警电路部分出现问题,重新焊接后,问题得到解决。
三、实习收获与体会通过本次实习,我对电子密码锁的设计原理和实际操作有了更深入的了解。
在设计过程中,我学会了如何根据实际需求,运用所学知识,设计出符合要求的电路图和程序。
华北电力大学-电力电子综合实验-电子密码锁课设实验报告
课程设计(综合实验)报告名称:电子技术综合实验题目:电子密码锁院系:电气与电子工程学院班级:学号:学生姓名:指导教师:设计周数: 1成绩:日期:2012 年1 月6 日电子密码锁一、课程设计的目的与要求锁是人们生活中的常用物品。
本设计题目要求用电子器件设计制作一个密码锁,使之在输入正确的代码时,输出开锁信号推动执行机构动作;并用红灯亮、绿灯灭表示关锁,而绿灯亮、红灯灭表示开锁。
1)在锁的控制电路中储存一个可修改的4位代码作为密码,当输入代码和锁的密码相等时,进入开锁状态使锁打开。
2)从第一个按钮触动之后的5秒内若未将锁打开,则电路进入自锁状态,使之无法再打开,并由扬声器发出持续20秒的报警信号。
二、设计内容1.系统整体框架系统应包括输入开关电路、输入锁存电路、密码修改电路、密码存储电路、比较电路、定时电路、显示电路、音响电路等。
通过所输入的密码与实际密码的比较,进行开锁、亮灯或报警等相关操作。
总体设计原理方框图如下所示:2.设计的总体思想根据设计的要求,设计的总体思想及设计顺序为:1)设计密码设定及密码输入电路。
在本过程中,主要使用了74194芯片以及开关电路。
为了使得该密码锁有实际意义,就必须要使密码的总数足够多,从来使解锁难度大大增加,而提高密码锁的安全性。
为了达到这一目的,主要想到了如下3种方案:a)设置闲置的开关,从而起到干扰作用。
如最终版所示,一共在密码输入端设计了12个开关,其中4个开关有实际意义,而其他8个开关闲置。
当然,无论按下这12个开关中的哪个,都会触发5秒计时。
这种方案实现起来比较简单。
在密码输入端以及设置端只各需要一片194芯片。
但是该方案有点违背密码的意义,而是用选择哪4个,来区分。
b)密码输入和设置端分别使用两片194芯片,从而使得密码数量变多。
如修改版所示。
这个方案比较符合密码的要求。
但是电路却会复杂的多。
c)外部用多个开关共同控制内部的密码输入开关。
这个方案实现起来整体和a相似,固没有另外在连电路。
密码锁的实验报告
6.2ns
Байду номын сангаас
90mW
3ns
3ns
75mW
54LS00/74LS00 9ns
10ns
9mW
四2输入与非门除了74LS00外还有 COMS 系列 CD4011
74ls04
04 为六组反相器,共有 54/7404、54/74H04、54/74S04、54/74LS04四种线路结 构形 式,其主要电特性的典型值如下:
(3)仿真图:
(4)硬件实物照片(没有实物的可以省去)
(5)元件清单
型号 74ls85 74ls00 74ls04 发光二极管 六脚开光 四脚开关 1k 电阻 电路板
数量 2 1 1 2 8 8 16 1
3、设计的心得和不足:
通过对74ls00、74ls04、74ls85的引脚功能、真值表的分析、并设计其原理图,且利用电子电 路计算机进行仿真使得学习研究电子技术变得更加简单、直观,学习效果进一步提高,带动了学习 的积极性。
1246534212
课程小组成员: 许俊伟
姜鑫磊
2014 年 4 月 计算机与信息工程学院
班级 : 物联网 122
数字密码锁
设计报告
小组成员学号 : 124634238 124634212
指导教师: 张婧婧
小组成员姓名 : 许俊伟 姜鑫磊
1、设计电路的工作原理及功能描述: (1)系统能够完成输入2位的密码并实现密码的存储功能。 (2)系统可以设置修改密码功能。 (3)密码输入正确、有误均有指示灯显示,并利用电磁继电器模拟开锁。 2、4、设置当前密码的显示部分,用于用户检测。课程设计的主要内容:
00 为四组 2 输入端与非门(正逻辑),共有 54/7400、54/74H00、54/74S00、54/74LS00 四种线路结构形式,其主要电特性的典型值如下:
电子密码锁实验报告
电子密码锁实验报告一,实验目的1.进一步巩固和加深理论课基本知识的理解,提高综合运用所学知识的能力。
2.能根据需要选择参考书,查阅资料,通过独立思考,深入钻研有关问题。
3.学会自己独立分析问题、解决问题。
4学习定时器时间计时处理、按键扫描及LED数码管显示的设计方法。
5.根据设计任务及要求利用实验平台上单片机及其外围元器件,设计符合功能的电子密码锁。
二,实验要求设计要求:1:用4×4矩阵键盘组成0-9数字键及确认键和删除键。
2:可以自行设定或删除8位密码,能够掉电保存。
3:用5位数码管组成显示电路提示信息,当输入密码时,只显示“8.”,当密码位数输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门开,此处用绿色led发光二极管亮一秒钟做为提示,若密码不正确,禁止按键输入3秒,同时用红色led发光二极管亮三秒钟做为提示;若在3秒之内仍有按键按下,则禁止按键输入3秒被重新禁止。
三,实验基本原理1.键盘接口必须具有去抖动、按键识别基本功能。
(1)去抖动:每个按键在按下或松开时,都会产生短时间的抖动。
抖动的持续时间与键的质量相关,一般为5—20mm。
所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。
去抖问题可通过软件延时或硬件电路解决。
(2)被按键识别:如何识别被按键是接口解决的主要问题,一般可通过软硬结合的方法完成。
常用的方法有行扫描法和线反转法两种。
行扫描法的基本思想是,由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置入口、输出口一个,该方法在微机系统中被广泛使用。
线反转法的基本思想是通过行列颠倒两次扫描来识别闭合键,为此需要提供两个可编程的双向输入/输出端口。
2.利用键盘扫描原理分别设4×4矩阵键盘组成0-9数字键及确认键和删除键,通过0—9数字键设定8位密码和删除键删除密码,利用存储器的永久存储特性将设定的密码存于存储器中,再次重启程序时,能从存储器中读取出来,从而实现掉电保存。
电子电路课程设计密码锁(满分实验报告)解析
密码锁设计报告摘要:本系统是由键盘和报警系统所组成的密码锁。
系统完成键盘输入、开锁、超时报警、输入位数显示、错误密码报警、复位等数字密码锁的基本功能。
关键字:数字密码锁 GAL16V8 28C64 解锁与报警1目录:一、系统结构与技术指标1、系统功能要求 (4)2、性能和电气指标 (5)3、设计条件 (5)二、整体方案设计1、密码设定 (6)2、密码判断 (6)3、密码录入和判断结果显示 (6)4、系统工作原理框面 (7)三、单元电路设计1、键盘录入和编码电路图 (8)2、地址计数和存储电路 (12)3、密码锁存与比较电路 (12)24、判决与结果显示电路 (14)5、延时电路 (15)6、复位 (17)7、整机电路图 (19)8、元件清单 (19)四、程序清单1、第一片GAL (21)2、第二片GAL (23)五、测试与调整1、单元电路测试 (25)2、整体指标测试 (26)3、测试结果 (26)六、设计总结1、设计任务完成情况 (27)2、问题及改进 (27)3、心得体会 (28)3一、系统结构与技术指标1.系统功能要求密码锁:用数字键方式输入开锁密码,输入密码时开锁;如果输入密码有误或者输入时间过长,则发出警报。
密码锁的系统结构框图如下图所示,其中数字键盘用于输入密码,密码锁用于判断密码的正误,也可用于修改密码。
开锁LED1亮表示输入密码正确并开锁,报警LED2亮表示密码有误或者输入时间超时。
开锁green 键盘密码锁错误red42.性能和电气指标2.1 开锁密码为8位十进制数字,由按键输入,按“确认”键后,输入的数字有效。
2.2 输入的8位数字与预设的密码相同时开锁,用绿灯亮,红灯灭表示。
数据有误时或输入的密码时间过长即报警,红灯亮。
2.3 输入的数字间隔时间小于或等于15s。
超过时限则报警,同时电子锁复位。
2.4 具有手动、自动复位功能。
3. 设计条件3.1 电源条件:稳压电源提供+5V电压。
实验四 电子密码锁的设计
实验四电子密码锁的设计一、实验任务及要求设计一个通用电子密码锁,其具体功能要求如下:(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)。
电子密码锁实验报告
密码锁实验报告一,实验目的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引脚结构。
这样,既能做到经济合理又能实现预期的功能。
在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。
程序可分为闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。
数电实验报告电子密码锁设计
数电实验报告电子密码锁设计
实验报告
实验十四电子密码锁设计与实现
3.4.1 实验目的与设计要求
目的:(1)学习4位数值比较器CC14585和74LS85的功能。
(2)掌握电子密码锁的工作原理及综合实验技能。
要求:(1)电路可以由主持人预置16种不同的开锁密码,并能够更换。
(2)当输入和预置开锁密码相同时,发出开锁信号(LED 显示)。
(3)如果连续三次输入错误密码即产生报警信号。
报警信号用声光报警电路指示(蜂鸣器等)。
(4)具备能够取消报警状态的功能。
3.4.2 实验仪器与器件
直流稳压电源一台;数字实验箱一个;计算机一台。
74LS75锁存器、74LS00、74LS10、74LS20、4位数值比较器CC14585或74LS85。
3.4.3 实验原理框图
设计思路:用74LS194四位寄存器作锁存电路,74LS75四位锁密
码
预
置
输
入锁存电路密码比较电路密码锁存装置计数器确认按钮
报警电路开锁电路确认按钮
密码输入
存器作密码锁存装置,4位数值比较器4585作密码比较电路,74LS160作计数器。
当连续三次输入错误密码即产生报警信号同时锁住,此时再输入正确密码不产生开锁信号。
仿真图如下:。
电子密码锁设计报告
电子密码锁实验报告一,实验目的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.掌握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。
数字电路课程设计电子密码锁
《数字电子技术》课程设计报告电子密码锁控制电路设计人:黄亮学号:1887090112专业:09网络工程班级:1班成绩:评阅人:安徽科技学院理学院2011/6/16设计要求1、设计一个密码锁的控制电路,当输入正确代码时,输出开锁信号以推动执行机构工作,用红灯亮、绿灯熄灭表示关锁,用绿灯亮、红灯熄灭表示开锁;2、在锁的控制电路中储存一个可以修改的4位代码,当开锁按钮开关(可设置成6位至8位,其中实际有效为4位,其余为虚设)的输入代码等于储存代码时,开锁;3、从第一个按钮触动后的10秒内若未将锁打开,则电路自动复位并进入自锁状态,使之无法再打开,并由扬声器发出持续20秒的报警信号。
一.实验目的①利用小规模电路设计一个简易的电子密码锁控制电路。
②设计一个电子密码锁的控制电路,当输入正确时,会输出开锁信号以推动执行机构工作。
用灯1亮表示开锁。
③学习使用Multisim 10.0软件进行数字电路设计。
二.实验内容电子密码锁的控制电路中储存一个可以修改的4为代码。
当开锁按钮开关(可以设置成6~8位,其中有效的是4位,其余为虚设)的输入代码等于储存代码时,发出开锁信号(用灯2亮表示报警)。
电子密码共分为两个输入区:密码输入区和密码修改区。
密码输入区内,有4个是有效地密码按键,1个为密码启动键(可当做干扰键)。
若不按启动键,则无法开锁。
如果输入密码的时间超过20s(一般而言用户不会超过20s),电路将锁定键盘并报警,防止他人非法操作。
密码修改区内,有4个是密码更改键,另一个是电路复位键(解除锁定)。
电子密码锁的控制仿真电路如下:电路剖析:此电路可以分为三个部分:●密码检测与修改电路开始时可以在电路中设置起始开锁密码,只有当输入密码与设置密码相同时,锁才能被打开;并且,如果你想换密码,也很容易,只要将电路中的密码修改区中的几个开关变换一下就可以了。
●键盘输入限时电路:如果输入密码的时间超过10s(一般而言用户不会超过10s),电路将锁定键盘并报警,防止他人非法操作。
单片机课程设计-电子密码锁-实验报告-
单片机课程设计电子密码锁实验报告学院:电子信息工程学院班级:自***姓名:***学号:******指导教师:***单片机课程设计电子密码锁实验报告(一)实验目的1、了解电子密码锁工作原理和八段LED数码管显示原理。
2、掌握LED数码管显示器与单片机接口电路设计方法。
3、掌握实现密码锁功能的编程方法。
(二)设计实现功能(1)由程序设定初始密码,密码输入正确时锁打开,指示灯亮,发出“叮咚”的声音;密码输入不正确时,指示灯闪亮四次,发出“嘀嘀嘀滴”报警声。
(2)具有保护密码的功能,输入密码在数码管上显示可改为“88888”的方式,防止别人偷窥密码。
(3)具有修改密码的功能,密码输入错误可按DEL键进行删除。
(4)具有防止多次试探密码的电子密码锁并加报警功能,密码输入错误超过三次,将一直发出“滴滴滴滴。
”报警声。
(5)具有设定新密码的功能,输入密码后按CHG键,密码将被重新设定。
(三)整体电路设计思路核心用单片机AT89S52来实现此实验的要求。
用4*4键盘来输入密码。
每个按键有它的行值和列值,行值和列值的组合就是识别这个按键的编码。
矩阵的行线和列线分别通过两并行接口和CPU通信。
每个按键的状态同样需变成数字量“0”和“1”,开关的一端(列线)通过电阻接V CC,而接地是通过程序输出数字“0”实现的。
键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么;还要消除按键在闭合或断开时的抖动。
两个并行口中,一个输出扫描码,使按键逐行动态接地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。
用8个7段数码管来显示密码。
数码管的显示用扫描的方式,利用动态接口采用各数码管循环轮流显示的方法,当循环显示频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出(字形选择),另一接口完成各数码管的轮流点亮(数位选择)。
密码锁实验报告
密码锁实验报告密码锁实验报告引言:密码锁是一种常见的安全设备,它通过输入正确的密码才能打开,保护了我们的财产和隐私。
为了深入了解密码锁的原理和安全性,我们进行了一项实验,以探索密码锁的工作原理、破解方法以及可能存在的安全隐患。
实验目的:1.了解密码锁的工作原理;2.探索密码锁的安全性;3.尝试破解密码锁,分析其安全隐患。
实验材料和方法:1.密码锁:我们选择了市场上一种常见的电子密码锁作为实验对象;2.密码锁说明书:用于了解密码锁的操作方法和技术参数;3.计算机:用于记录实验过程和分析数据;4.密码破解工具:用于尝试破解密码锁。
实验过程:1.了解密码锁的工作原理:通过阅读密码锁说明书,我们了解到密码锁是通过输入正确的密码来解锁的。
密码锁内部有一个密码验证模块,当输入的密码与设定的密码一致时,密码锁会打开。
密码验证模块一般采用加密算法,确保密码的安全性。
2.探索密码锁的安全性:为了测试密码锁的安全性,我们分别设置了几组不同的密码,并尝试通过不同的方法破解密码锁。
首先,我们尝试了常见的暴力破解方法,即通过不断尝试所有可能的密码组合来解锁密码锁。
然而,由于密码锁的密码长度和复杂度限制,我们发现暴力破解几乎不可能成功。
接着,我们尝试了一些密码破解工具,如字典攻击和蛮力破解,但同样没有取得成功。
3.分析密码锁的安全隐患:尽管我们没有成功破解密码锁,但我们发现一些可能存在的安全隐患。
首先,密码锁的密码验证模块可能存在漏洞,如密码验证算法的不安全性或密码存储的不安全性。
其次,密码锁的物理结构可能存在弱点,如易受到撬锁或钥匙复制的攻击。
这些安全隐患可能导致密码锁的被破解或绕过,从而威胁到我们的财产和隐私安全。
结论:通过本次实验,我们对密码锁的工作原理和安全性有了更深入的了解。
密码锁作为一种常见的安全设备,虽然在一定程度上保护了我们的财产和隐私,但仍然存在一些安全隐患。
为了提高密码锁的安全性,我们建议密码锁制造商加强密码验证算法的安全性、改进密码存储方式,并加强物理结构的防护措施。
数字电路设计实验-简易密码锁
数字电路设计实验报告——简易密码锁学院:班级:学号:姓名:目录●任务要求●系统设计✓设计思路✓总体框图✓分块设计●波形仿真及波形分析●源代码●功能分析●故障分析及问题解决●总结及结论●任务要求设计并实现一个数字密码锁,密码锁有四位数字密码和一个确认开锁按键,密码输入正确,密码锁打开,密码输入错误进行警示。
基本要求:1、密码设置:通过键盘进行4 位数字密码设定输入,在数码管上显示所输入数字。
通过密码设置确定键(BTN 键)进行锁定。
2、开锁:在闭锁状态下,可以输入密码开锁,且每输入一位密码,在数码管上显示“-”,提示已输入密码的位数。
输入四位核对密码后,按“开锁”键,若密码正确则系统开锁,若密码错误系统仍然处于闭锁状态,并用蜂鸣器或led 闪烁报警。
3、在开锁状态下,可以通过密码复位键(BTN 键)来清除密码,恢复初始密码“0000”。
闭锁状态下不能清除密码。
4、用点阵显示开锁和闭锁状态。
提高要求:1、输入密码数字由右向左依次显示,即:每输入一数字显示在最右边的数码管上,同时将先前输入的所有数字向左移动一位。
2、密码锁的密码位数(4~6 位)可调。
3、自拟其它功能。
●系统设计设计思路将电子密码锁系统分为三个部分来进行设计,数字密码输入部分、密码锁控制电路和密码锁显示电路。
密码锁输入电路包括时序产生电路,键盘扫描电路,键盘译码电路等,将用户手动输入的相关密码信息转换为软件所能识别的编码,作为整个电路的输入。
密码锁控制电路包括相应的数据存储电路,密码核对电路,能够进行数值的比较,进行电路解锁,开锁,密码的重新设置等。
密码锁显示电路包括将待显示数据的BCD 码转换成数码管的七段显示驱动编码,密码锁在相应的状态下的点阵输出以及蜂鸣器的报警输出。
总体框图按复位键 键入初始密码0000 密码错误密码正确 按确认键 按复位键按确认键密码锁显示电路 密码锁控制电路 数码管显示报警电路密码更改与密码设计电路键入状态闭锁状态开锁状态 报警状态分块设计✓键盘扫描电路首先,向列扫描地址逐列输出低电平,然后从行码地址读回,如果有键摁下,则相应行的值应为低,如果没有按键按下,由于上拉的作用,行码为高。
电子密码锁实验报告
电子密码锁实验报告实验目的1、学习8051定时器时间计时处理、跑马灯、按键扫描及LED数码管显示的设计方法。
2、设计任务及要求利用实验平台上8个LED数码管,按键,跑马灯实现设置密码,密码锁的功能二,实验要求基本要求:1:用44矩阵键盘组成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引脚结构。
这样,既能做到经济合理又能实现预期的功能。
在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。
程序可分为闹钟的声音程序、时间显示程序、日期显示程序,秒表显示程序,时间调整程序、闹钟调整程序、定时调整程序,延时程序等。
密码锁的设计与测试_实验报告
数电实验实验报告2013 级通信工程专业 3 班姓名汪冰滢学号 1362310308 日期 2015年4月2日实验名称密码锁的设计与测试实验目的1.掌握SSI设计组合逻辑电路的方法及其调试。
2.观察组合电路中的冒险现象。
实验仪器设备通用实验箱、万用表、7420、7400、连接线元器件集成电路选择74LS20芯片1个和74LS00芯片2个,电阻若干;开关5个、LED发光管1个以及蜂鸣器1个。
实验原理1.与非门的逻辑功能实验使用的TTL集成与非门74LS20和74LS00分别是由两个独立的4输入与非门和4个独立的2输入与非门组成的。
芯片的引脚排列如图1-1、1-2所示。
逻辑表达式分别为:Y ABCD=和Y AB=(注意:TTL电路对电源电压要求较严——超过5.5V将损坏器件;低于4.5V器件的逻辑功能将不正常。
)图1-1 74LS20引脚图图1-2 74LS00引脚图2.实验逻辑关系式推导根据任务要求,当用钥匙开箱时(E=1),如果输入的四位代码A1、A2、A3、A4符合该锁规定代码(本次设计中设定为1011),保险箱开(Z1=1),否则,电路将发出警报(Z2=1)。
要求使用最少数量的与非门实现电路。
据此,可得真值表,表1-1:A1 A2 A3 A4 E Z1 Z2××××0 0 00 ××× 1 0 11 1 ×× 1 0 11 0 0 × 1 0 11 0 1 0 1 0 11 0 1 1 1 1 0表1-1 实验函数对应真值表由此,可以推导并化简得到实验的逻辑函数式为:112341234Z EA A A A E A A A A==⋅2123411Z E EA A A A E Z E Z=+=+=⋅.实验内容1.实验原理图(如图1-3所示)由函数表达式112341234Z EA A A A E A A A A==⋅2123411Z E EA A A A E Z E Z=+=+=⋅可知,电路可以由6个2输入与非门和1个4输入与非门构成(用于实现2A的与非门未画出)。
电子锁实验报告
电子密码锁设计设计任务及要求分析设计一个电子密码锁,在锁开的状态下输入密码,设置的密码共4位,用数据开关K1~K10分别代表数字1,2,…,9,0,输入的密码用数码管显示,最后输入的密码显示在最右边的数码管上,即每输入一位数,密码在数码管上的显示左移一位。
可删除输入的数字,删除的是最后输入的数字,每删除一位,密码在数码管的显示右移一位,并在左边空出的位上补充“0”。
用一位输出电平的状态代表锁的开闭状态。
根据题目要求,本次设计包括键盘输入电路的设计,输出显示电路的设计,密码控制电路。
其中输出显示电路包括数码管显示电路和密码锁开关状态显示电路。
方案比较及认证在本次设计中,我们使用的Altera公司的FPGA芯片EPF10K10LC84-3。
由于采用VHDL 语言设计,使用FPGA 实现,因而体积小,功耗低、性能特别灵活,稍加修改就可以改变密码的位数和输入密码的次数,因而升级和维护都很方便,而且容易做成ASIC 芯片,具有较好的应用前景。
但由于结构还比较简单,有待进一步完善。
系统原理阐述在本实验中采用的是VHDL编程,通过文本编辑方式建立模块,通过原理图方式将生成的图形符号连接,然后再下载,进行硬件的仿真。
为达到密码锁的以上功能,可将电子密码锁分为以下几个模块进行设计:按键输入电路:2、密码控制电路:包括密码删除、修改与检验。
3、输出显示电路。
其中,最为关键的是密码控制电路即主电路的设计。
可以为主电路分配如下管脚:其中set为密码设置端口, check为密码检验端口, close为关锁端口, back为删除密码端口, clk时钟输入端口, dn[3..]为数字输入端口,lock密码锁状态显示端口。
在此电路中每输一位数,密码在数码管上左移一位。
设制删除密码back,每按下一次back,删除最后输入的数字,左边空处补0。
设置密码确认信号set,当四位密码输入完毕,按下set,设置的密码被存储。
设置密码锁状态信号lock, lock=0表示锁未开,lock=1表示锁开,同时设置关锁信号close,按下close,则锁关闭。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
密码锁设计报告摘要:本系统是由键盘和报警系统所组成的密码锁。
系统完成键盘输入、开锁、超时报警、输入位数显示、错误密码报警、复位等数字密码锁的基本功能。
关键字:数字密码锁 GAL16V8 28C64 解锁与报警1目录:一、系统结构与技术指标1、系统功能要求 (4)2、性能和电气指标 (5)3、设计条件 (5)二、整体方案设计1、密码设定 (6)2、密码判断 (6)3、密码录入和判断结果显示 (6)4、系统工作原理框面 (7)三、单元电路设计1、键盘录入和编码电路图 (8)2、地址计数和存储电路 (12)3、密码锁存与比较电路 (12)24、判决与结果显示电路 (14)5、延时电路 (15)6、复位 (17)7、整机电路图 (19)8、元件清单 (19)四、程序清单1、第一片GAL (21)2、第二片GAL (23)五、测试与调整1、单元电路测试 (25)2、整体指标测试 (26)3、测试结果 (26)六、设计总结1、设计任务完成情况 (27)2、问题及改进 (27)3、心得体会 (28)3一、系统结构与技术指标1.系统功能要求密码锁:用数字键方式输入开锁密码,输入密码时开锁;如果输入密码有误或者输入时间过长,则发出警报。
密码锁的系统结构框图如下图所示,其中数字键盘用于输入密码,密码锁用于判断密码的正误,也可用于修改密码。
开锁LED1亮表示输入密码正确并开锁,报警LED2亮表示密码有误或者输入时间超时。
开锁green 键盘密码锁错误red42.性能和电气指标2.1 开锁密码为8位十进制数字,由按键输入,按“确认”键后,输入的数字有效。
2.2 输入的8位数字与预设的密码相同时开锁,用绿灯亮,红灯灭表示。
数据有误时或输入的密码时间过长即报警,红灯亮。
2.3 输入的数字间隔时间小于或等于15s。
超过时限则报警,同时电子锁复位。
2.4 具有手动、自动复位功能。
3. 设计条件3.1 电源条件:稳压电源提供+5V电压。
3.2 可供选择的元器件如表1-1所示型号名称及功能74374 锁存器28C64 EEPROM 存贮器7485 4位比较器74161 4位二进制计数器74164 8位移位寄存器GAL16V8 可编程逻辑器件F555 定时器74123 可重触发器表1-1 器件单门电路、电阻、电容以及发光二极管自定。
二、整体方案设计1密码设定按照自己的学号设定密码,将密码预先存如28c64芯片中。
我的学号是10001823,写入28c64中的数据为01 0A 0A 0A 01 08 02 032密码判断通过4为比较器对预先存如的密码及手动在键盘上输入的密码逐个进行比较,把结果送入8为移存器进行结果判别3密码录入和判别结果显示6每输入一位密码,比较器就比较一次,并且把结果送如移存器进行移存,8位的比较结果送到GAL,判决是否正确,并开锁或报警。
设定密码时,每输入一位,计数器加一。
4系统工作原理框图整体方案如下:7三、单元电路设计1. 键盘录入和编码电路图由于键盘有0~9,而ROM中数据以十进制存储,则要将案件进行10进制到2进制的转换。
使用可编程逻辑器件GALl16V8,电路非常简单,连线少,比较实用。
将按键编号和输出四位二进制码相对应,列出真值表(表3-1)。
序号按键D0 D1 D2 D30 A0 1 0 1 01 A1 0 0 0 12 A2 0 0 1 03 A3 0 0 1 14 A4 0 1 0 05 A5 0 1 0 186 A6 0 1 1 07 A7 0 1 1 18 A8 1 0 0 09 A9 1 0 0 1根据真值表,用CUPL语言写出逻辑关系:D3=A0#A8#A9;D2=A4#A5#A6#A7;D1=A0#A2#A3#A6#A7;D0=A1#A3#A5#A7#A9;电路设计:每个键按下,产生一个高电平脉冲,并把按下的数字键译码输出9锁存时序图4. 判决与结果显示经过7485,只能比较密码的1位,使用移存器就能将比较结果先储存,经过8个脉冲周期后同时输出。
为节约GAL16V8的I/O 口,可使用一片7485,先将5位比较结果处理,剩下的三位接到GAL,再比较。
在密码全部输入后,要按下“确认”键,则GAL判断密码是否正确。
数据经7485等后,数据到达74164时,数据有一定的延时。
假如74164的时钟=CP,当第一的CP到来时,第一位的比较结果还没从7485出来,即第一位锁进的不是第一位的比较结果。
所以,1417图 3-6-2 74123工作时序在复位后,OT=0,开始输入后,当间隔时间小于15s 时,OT=1,当间隔时间大于15s 时,OT=0。
由于74123受控制较弱,所以在实际链接电路的时候增加了一块74161做触发器,使得触发稳定切周期不变。
6、复位复位功能包括手动复位和自动复位。
手动复位:清除输入密码,将所有寄存器归零。
则将74161、74164、74123、7474的清零端全部接在一起,复位键(RS )按下,GAL 清零端CLR 输出一个低电平脉冲,方程为:CLR=!RS 。
自动复位:如解锁完毕(即密码输入完成后,按下“ENT ” ),开锁或报警后,所有寄存器清零。
若将方程写成CLR=!ENT,此时是组合逻辑输出,一按下“ENT”,就复位了,此时报警结果还没输出,74164全零输入,则肯定会报警,失去密码锁判断的意义。
所以复位一定在正确解锁后开始,可以借助GAL内部的触发器来完成这个功能:CLR.D=!ENT。
GAL的时钟任为555的输出时钟,几hz的脉冲。
则在开锁后几百ms后复位,开锁是个瞬时动作即可。
为方程式的简洁,复位方程可表示为:CLR.D=!(ENT#RS),此时手动复位稍有延迟(ms级),在实际应用中,延时是完全可以忽略的。
187、整体电路8、所用元件清单本设计除了老师建议的一些芯片,我还使用了少量其他数字芯片,完成了要求外的一些指标,使用的芯片如下:19型号名称及功能数量74374 锁存器 128C64 EEPROM 存贮器 17485 4位比较器 174161 4位二进制计数器 274164 8位移位寄存器 1GAL16V8 可编程逻辑器件 2F555 定时器 1按键开关输入密码 274123 可重触发器 1LED发光二极管显示译码是否成功 1电容、电阻、导线若干,面包板一块。
20电子电路课程设计报告2121四、程序清单设计中使用2片GAL16V8,第一片主要用于译码,第二片主要用于控制。
1.第一片GAL功能:键盘解码,产生时序电路需要的CP及CP2管脚连接及命名:cp KEY0 KEY1 KEY2 KEY3 KEY4 KEY5 KEY6 KEY7 GND VCC OUT4 OUT3 OUT2 OUT1 CP1 KEY9 KEY8 CP2 GND电子电路课程设计报告2222Name : GAL23;Date : 2012-11-28;Revision : 1.3 ;Designer : ZHUZI;Company : NJUPT;/******INPUT********/PIN[1,11,12,15]=[CP,!OE,CP2,CP1];PIN[2,3,4,5,6,7,8,9,13,14]=[KEY0,KEY1, KEY2, KEY3 KEY4, KEY5, KEY6, KEY7, KEY8, KEY9];/******OUTPUT******/PIN[16,17,18,19]=[OUT1,OUT2,OUT3,OUT4];/******EQUATIONS*****/OUT4=KEY0#KEY8#KEY9;OUT3=KEY4#KEY5#KEY6#KEY7;OUT2=KEY0#KEY2#KEY3#KEY6#KEY7;OUT1=KEY1#KEY3#KEY5#KEY7#KEY9;CP.D=OUT1#KEY0#KEY2#KEY4#KEY6#KEY8;CP2=!CP;电子电路课程设计报告2323 /******END ****/2.第2片GAL功能:处理密码比较结果、延时判断处理、控制28C64的读写操作、开锁和报警输出、电路复位管脚连接及命名:Name : GAL23; Date : 2012-11-29; Revision : 1.3 ; Designer : ZHUZI;CP D1 D2 D3 D4 D5 D6 D7 D8 OTVCC RED GREEN RENTER RST DELAY OECompany : NJUPT;/******INPUT********/PIN[1,11]=[CP,!OE];PIN[2,3,4,5,6,7,8,9]=[D1,D2,D3,D4,D5,D6,D7,D8];PIN 12=DELAY;PIN 14=RENTER;PIN 13=RST;PIN 10=OT;/******OUTPUT******/PIN 15=GREEN;PIN 16=RED;/******EQUATIONS*****/Q=D1&D2&D3&D4&D5&D6&D7&D8GREEN.D=Q&ENTER;RED.D=!Q&ENTER/******END ****/24五、测试与调整1.单元测试10进制数字输入测试:先复位,再按住数字键,用示波器检测第一片GAL的19~16脚,打开1号开关即KEY0,检测到D0D1D2D3=0101,则译码正确,以此类推,输入0~9,GAL输出全部测试正确。
CP脉冲测试:将CP接到示波器一个通道观察,在有键按下时,观察到脉冲。
由低电平跳变至高电平,且cp1与cp2相反密码比较测试:1. 复位后,依次输入正确密码(10001823),用示波器观察第一片7485的第6脚,若全为高,则正确,8位密码输入完毕后,测试74164的移存输出脚,若全为1,则正确。
2. 输入错误密码1001822,7485在输入错误密码后,输出为0,且8位输入完毕后,74164的输出管脚中,第三脚为0,其余为1。
则电路没有问题。
25延时判断测试:1.用示波器观察74123的输出管脚第13脚,复位时,输出为0,当有键按下,输出跳变为1,并保持。
15秒内无键按下,则输出跳变为0,在15秒内有键按下,则输出一直保持高电平。
则延时电路没有问题。
2整体测试1.按下“复位”键,看到数码管立即显示为0,用示波器测试74161、74164、74123的输出端全为低电平。
说明手动复位功能正常。
2.输入正确密码10001823后,按下“ENT”,看到绿灯亮,输入错误密码07040400后,按下“ENT”,看到红灯亮。
说明密码判断正确。
3.复位后,按下第一位密码0,不再按任何键,15秒后,红灯亮。