基于protues的电子密码锁设计之欧阳光明创编

合集下载

基于51单片机的指纹密码锁设计之欧阳学文创作

基于51单片机的指纹密码锁设计之欧阳学文创作

基于51单片机指纹电子密码锁设计欧阳学文摘要随着人民生活水平的提高,如何实现家庭防盗这一问题也变得尤其突出,传统的机械锁由于其构造简单,安全性低,无法满足人们的需求。

随着电子产品向智能化和微型化的不断发展,单片机已成为电子产品研制和开发中首选的控制器,所以具有防盗报警功能的电子密码锁控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码锁控制的密码量少,安全性能差的缺点。

在传统的身份认证中,我们往往使用密码加密法,但是这种方法只是"防君子不防小人"。

在高明的黑客眼里,由几个字符组成的密码脆弱得不堪一击。

现在,科技的发展让我们有了新的选择——生物识别技术。

将生物识别技术应用于笔记本、门锁等方面,可以对文件、财产起保护作用,并且可以进行身份识别。

生物识别技术的发展主要起始于指纹研究,它亦是目前应用最为广泛的生物识别技术。

本设计开发了一款基于单片机的指纹识别电子密码锁系统。

该系统以STC89C52单片机作为模块核心,通过串口通信控制ZFM-60指纹模块实现录取指纹并存储指纹数据,并通过HS12864-15C液晶显示比对流程及比对结果,辅以直流继电器与发光二极管模拟开锁的动作。

本系统具有体积小、性价比高、传输速度快、适合家庭及单位使用。

关键词:单片机,密码锁,指纹识别51 single fingerprint-based electronic code lock designABSTRACTWith the improvement of people's living standards, how to achieve family security issue has become particularly prominent, the traditional mechanical locks because of its simple structure, low security, can not meet people's needs. As electronic products to intelligent miniaturized and the continuous development of SCM has become the electronic product research and development preferred controller, the electronic lock control system with anti-theft alarm function gradually replace the traditionalmechanical control systems with code, overcome password less, poor safety performance shortcomings of mechanical lock control.In traditional identity, we tend to use password encryption method, but this method only "anti-anti-villain is not a gentleman." In the eyes of clever hackers, password consists of several characters fragile too vulnerable. Now, the development of science and technology so that we have a new option - biometrics. The biometric technology used in notebook, door locks, etc., they can file for protection of property, and can be identifiable.biometric technology in fingerprint primary origin research, it is also the most widely used biometric technology.The system designof fingerprint recognition electron password lock based on Single-chip microprocessor is developed in the thesis. The system STC89C52 MCU as the core module, through the serial communication control ZFM-60 fingerprint module for taking fingerprints and store fingerprint dataand liquid crystal display by HS12864-15C ratio than on the processes and results, supported by simulation of DC relays and LEDs unlockaction.The system is small, cost-effective, and fast and suitable for families and units.Key Words:Single-chip microprocessor, password, Fingerprint recognition目录第一章绪论11.1课题研究意义21.2国内外指纹密码锁发展历史及现状41.3本文主要内容5第二章整体设计方案52.1方案比较与论证52.2系统总体设计72.2.1 系统功能描述72.2.2系统总体框架82.3本章小节9第三章系统硬件设计93.1单片机及最小系统93.1.1 STC89C52单片机介绍93.1.2外部晶振设计133.1.3复位电路设计143.2指纹模块设计153.2.1指纹识别技术简介153.2.2 指纹模块简介173.2.3 指纹模块指令193.2.4 指纹模块接口电路设计223.3按键电路设计233.4液晶显示模块设计253.4.1 FYD12864工作流程263.4.2 FYD12864指令说明263.4.3 FYD12864液晶显示接口电路设计323.5本章小节34第四章系统软件设计344.1系统工作过程分析344.2主程序流程图364.3键盘程序流程设计384.4LCD显示模块程序流程设计394.5指纹识别程序设计404.5.1 指纹模块通讯协议说明404.5.2 指纹模版的采集存储414.5.3 指纹比对程序设计43 4.6K EIL编程444.7本章小结46第五章实物制作与调试465.1电路的焊接465.2程序的烧写485.3小灯、继电器的调试495.4液晶的调试505.5指纹模块、按键的调试51 5.6本章小结52总结52参考文献53附录一55附录二56英文原文61中文翻译71第一章绪论我们今天的工作生活中,很多场合需要身份验证。

电子密码锁的设计与仿真之欧阳与创编

电子密码锁的设计与仿真之欧阳与创编

电子密码锁的设计与仿班级:姓名:学号:1、设计基本要求(1)设计一个数字电子锁,有其预先设定好的密码,该密码可以修改。

(2) 输入密码按确定键后,若密码正确则锁打开(此设计用发光二极管S表示锁,锁打开就是点亮发光二极管S);若密码不正确则电路发出报警信号(用放光二级管J,报警就是点亮放光二级管J)。

任意输入密码而不按确定键的话电路不会有反应。

(3)任意输入密码而不按确定键的话电路不会有反应。

(4)打开的持续时间为Tx,警报持续时间也为Tx,即按下确定键到松开后10秒,按住确定键不放的话一直打开或者报警。

2、设计思路1、用按键输入四位十进制数字,输入密码要存储。

2、比较输入密码和原始密码。

当输入正确密码时,给出开锁信号,开锁信号用一个绿色指示灯表示,绿灯亮表示密码输入正确;如果输入密码不正确,用红灯表示。

3、锁的开关用红灯和绿灯表示,一次只能亮一盏。

红灯亮、绿灯灭表示关锁,绿灯亮、红灯灭表示开锁。

4、设置倒计时电路和自锁电路。

如果密码在5s内未能输入正确则发出报警声,并且自锁电路。

5、设置密码设置开关,开关闭合后,允许设置密码,设置好密码后,打开此开关。

6、需要在输入密码开始时识别输入,并由此触发计时电路。

用74LS147译码器来把按键输入转化为二进制。

通过8片四位寄存器74LS194实现密码功能,其中四片用来存储预置密码,另四片则用来存储输入的密码。

当密码开始输入时开始计时,通过74LS192计数器实现计时功能;然后在密码输入期间,用74LS138数据选择器来选片存储。

数据选择器的输入端又一个两位的二进制的加法计数器来控制,当键盘有按键输入时计数器就加1,当一个按键按完后会轮到下一个芯片存储。

自锁功能利用74LS138来控制。

通过四片74LS85芯片判断原始密码和输入密码是否相同,接着用指示灯来表示密码的输入正确与否,如果密码没有输入正确的话,则红灯亮,否则则绿灯亮。

若是没在规定时间输入正确密码,则会发出警报信号(蜂鸣器响)3、设计方框图4、主要元器件及功能表5、所用器件6、仿真电路 开锁的仿真 预先将译码器的Y0接口和D 触发器的D 接口连接,即选择密码为000000。

基于Proteus环境的电子密码锁设计

基于Proteus环境的电子密码锁设计

三、实现原理
1、按键消抖
图3-1Βιβλιοθήκη 由图3-l可见,在按键闭合和断开时产生了多个边沿,而在实际中 每按一次键,我们只需要一组稳定的上升或下降边沿,所以对于电路中 的按键信号,如果我们不滤除抖动的话,还是简单的读取信号的边沿, 会引起一次按键被误读多次,这样就会引起电路的误动作。为了保证按 一次键电路只有一次正确的响应,即在键闭合稳定时读取键的状态,就 要求电路中必须采取滤除抖动的措施。 本设计按键较多,故采用软件方法去抖,即检测出键闭合后执行一个 延时程,产生5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态, 如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放 后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程 序。 2、矩阵扫描电路 由于本设计所用到的按键数量较多而不适合用独立按键式键盘。采 用的是矩阵式按键键盘,它由行线和列线组成,也称行列式键盘,按键
一、实验目的
1. 掌握嵌入式系统开发的基本流程; 2. 熟悉嵌入式系统开发仿真软件使用方法; 3. 基于89C52单片机来设计电子密码锁。
二、实验要求
1、用4*3组成0-9数字键及确认键、删除键; 2、用8位数码管组成显示电路提示信息,当输入密码时,只显 示“—”,当密码位数输入完毕按下“确定”键时,对输入的密码与设定的 密码进行比较,若密码正确,则开锁,此处用LED发光二极管亮1s作为 提示;若密码不正确,禁止按键输入3s,同时发出“嘀、嘀”报警声。
{ case(0xeb):P0=0x40;smg[x++]=num;num=8;k++;delay(200);break; case(0xdb):P0=0x40;smg[x++]=num;num=9;k++;delay(200);break; case(0xbb):P0=0x40; if((Flag==1)&(k==8)) { led=1; //correct(); delay(1000); led=0; k=0; } else { beep(); //error(); k=0; }break; case(0x7b):P0=0x40; k--;delay(200);Flag=1;x--;num=smg[x]; break; } } } }

基于PROTEUS的电子密码锁设计毕业论文

基于PROTEUS的电子密码锁设计毕业论文

基于PROTEUS的电⼦密码锁设计毕业论⽂基于PROTEUS的电⼦密码锁设计毕业论⽂⽬录摘要 ............................................................... I Abstract ........................................................... II 1 绪论 .. (1) 1.1 电⼦密码锁简介 (1)1.2 电⼦密码锁的发展趋势 (1)1.3 本设计所要实现的⽬标 (2)1.4 设计⽅案简介 (2)2 主要元器件 (3)2.1 主控芯⽚AT89S51 (3)2.2 存储芯⽚AT24C02 (6)2.3 LCD16022显⽰器 (7)2.4 晶体振荡器 (8)3 硬件系统设计 (10)3.1 设计原理 (10)3.2 电路总体构成 (10)3.3 电源输⼊电路 (11)3.4 键盘输⼊电路 (12)3.5 密码存储电路 (12)3.6 复位电路 (13)3.7 晶振电路 (14)3.8 显⽰电路 (14)3.9 报警电路 (15)3.10 开锁电路 (15)4 软件程序设计 (17)4.1 主程序流程图 (17)4.2 按键软件设计 (18)4.3 密码设置软件设计 (19)4.4 开锁软件设计 (20)5 调试与实现 (21)5.1 硬件调试 (21)5.2 软件调试 (21)5.3 Proteus仿真 (22)结论 (24)致谢 (25)参考⽂献 (26)附录A:总程序 (27)附录B:总电路图 (40)1 绪论1.1 电⼦密码锁简介电⼦密码锁是⼀种通过密码输⼊来控制电路或是芯⽚⼯作,从⽽控制机械开关的闭合,完成开锁、闭锁任务的电⼦产品。

它的种类很多,有简易的电路产品,也有基于芯⽚的性价⽐较⾼的产品。

现在应⽤较⼴的电⼦密码锁是以芯⽚为核⼼,通过编程来实现的。

其性能和安全性已⼤⼤超过了机械锁。

基于Proteus的单片机电子密码锁系统仿真设计

基于Proteus的单片机电子密码锁系统仿真设计
INC R1
;取消
DJNZ R3,CANCELl
LCALL RET—DISPLAY
3.3软硬联合调试 整个软件通过汇编语言编程,先在medwin集 成开发环境下将编好的程序进行编译,调试,调试 通过后会生成program.hex文件.运行单片机模 拟仿真软件Proteus,打开已绘制好的仿真电路原 理图,选中右键点击8051,出现对应的对话框,找 到编译好的"program.hex"文件,然后点击"确认" 就可以进行仿真了.点击,进入调试状态. 现在可以利用虚拟按键输入密码. (1)程序及仿真软件运行后,LED上显示
161.
[23周润景,张丽娜.基于PROTEUS的电路及单片机 系统设计与仿真[M].北京:北京航天航空大学出版 社.2006:1.

目前,随着微电子技术的迅猛发展和日益普 及,单片机在家用电器,机器入,工业控制单元,高 级玩具,仪器仪表,汽车电子系统,金融电子系统, 通信系统等方面都得到了广泛的应用.单片机系 统的设计包括硬件电路设计和程序设计两个方面, 调试过程一般分为软件调试,硬件调试,系统调试 三个过程.软件调试一般比较容易进行,但如果 要进行硬件电路调试和系统调试就相当麻烦,这两 个过程必须在PCB板制作后,元器件焊接完毕之 后进行,且PCB板的制作,元器件的安装焊接费时 费力.利用Proteus进行单片机系统的仿真设计 可以极大地简化单片机程序在目标硬件上的调试 工作,大幅度节省制作电路板的时间,对于提高产 品的开发效率,降低开发成本等有重要作用.
3 u
l 2显}设计采用动志显示由止比齄*省
I/O口,硬件电路也较静态艟示方式简单
目1 3 3
tt月m目
2软件设计
2

基于Protues的单片机密码锁设计

基于Protues的单片机密码锁设计

本科毕业设计 (论文)基于PROTEUS的单片机智能电子密码锁的仿真设计Based on the PROTEUS simulation design of the intelligent electronic combinationlock年月Based on the PROTEUS simulation design of the intelligentelectronic combination lockAbstract: In today's society, security has become a social problem, and since the ancient times is the important tool, anti-theft lock at present domestic most people use or traditional mechanical locks, however, the counterfeit and inferior mechanical lock the mutual opening rate is very high, in addition, even if is a qualified mechanical lock, through the lock, even under the premise of without causing damage to the lock will open the lock. These drawbacks of mechanical lock to a new kind of electronic trick lock, the lock provides a great space for development.The design USES the single chip microcomputer as main control chip, combining with the peripheral circuit, electronic password control system by combination lock, a total of six password, each value in the range of 0 ~ 9, the user can set and modify the password, sound and light hint every password button. Users want to play the lock, must first by providing keyboard input the correct password to have a prompt when password input error, in order to improve the security, when the password input error will report to the police for ten minutes, three times during the password you entered is invalid, to prevent the thief tempted password many times. Four password input is correct at the same time, to open the lock. Lock has backup battery, can only be set when the internal power on reset or change the password, so, just outside the door keys cannot be modified or set the password, so that the secrecy of strong, high flexibility.Keywords: Electronic combination lock;SCM; give an alarm目录1绪论 (1)1.1 电子密码锁的研究意义 (1)1.2 电子密码锁的现状及发展趋势 (1)2 系统的整体设计方案 (2)2.1 设计的基本内容 (2)2.2 设计方案 (3)3 硬件系统设计 (3)3.1 AT89C51管脚及功能介绍 (3)3.1.1 复位电路 (7)3.1.2 晶振电路 (9)3.2 键盘输入电路 (9)3.3 LCD1602显示器介绍 (11)3.3.1 显示电路 (16)3.4 报警电路 (17)3.5 开锁电路 (17)3.6 电源电路 (18)4 软件程序设计 (18)4.1 主程序流程图 (18)4.1.1 主程序设计 (19)4.2 键盘软件设计 (20)4.2.1 键盘扫描识别功能程序流程图 (20)4.2.2 键盘扫描识别功能子程序 (20)4.3 密码设置软件设计 (21)4.3.1 密码设置程序流程图 (21)4.3.2 密码设置子程序 (21)4.4 开锁软件设计 (22)4.4.1开锁程序流程图 (22)4.4.2开锁功能子程序 (23)5 系统仿真、调试 (24)5.1 Proteus 软件介绍 (24)5.2程序调试 (24)5.3设计仿真 (27)结论 (29)致谢 (30)参考文献 (31)附录 (33)附表清单:电子密码锁设计图 (33)1 绪论1.1课题研究的意义:在现代生活中,防盗早已成为人们的问题,为了解决防盗问题,锁充当了重要角色,现在我国许多人还是以传统机械锁为主,可是当前劣质的机械锁很大程度上都可以相互打开,此外,即使是一把质量相当不错的普通锁,通过强硬的手段开锁,那也是能在不破坏锁外表面的前提下将其打开。

基于protues的电子密码锁设计

基于protues的电子密码锁设计

基于p r o t u e s的电子密码锁设计Document serial number【UU89WT-UU98YT-UU8CB-UUUT-UUT108】本科生学年论文(设计)(2011级)论文(设计)题目基于protues的电子密码锁设计作者姚晓强系专业电气信息工程班级电子1102指导教师(职称)孙亚萍(讲师)字数 6280成果完成时间2013-12-26杭州师范大学钱江学院教学部制基于protues的电子密码锁设计电气信息专业1102班姚晓强指导教师孙亚萍摘要:本文以AT89C51单片机为核心器件,结合按键电路、LED数码管显示电路、报警指示电路和开锁机构,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性通过软件程序来控制整个系统实现电子密码锁的基本功能,其主要具有如下功能:●密码通过键盘输入,若密码正确,则将锁打开●密码输入错误,蜂鸣器将报警提示●用户可以自由设定密码本密码锁具有设计方法合理,简单易行成本低,安全实用等特点,具有一定的推广价值。

关键词:AT89C51;电子密码锁;功能The design of electronic?lock on the ProtuesYao Xiaoqiang Instructor: Sun YapingAbstract: Based on the AT89C51 single-chip microcomputer as the core device, combining with the key circuit, LED digital tube display circuit, an alarm circuit and unlocking mechanism, design the whole system to achieve the basic functions of electronic cipher lock byits flexible programming , rich I / O port, and accuracy basing onthe software program . With the following functions :●Input password through the keyboard, if the password is correct, lock will open●If the password is error, the buzzer will alarm●Users can freely set the passwordThe lock has some features like a reasonable design methods,simple to work,low cost and security,it also has some promotion value.Key words: AT89C51 ; Electronic lock ; Function目录基于protues的电子密码锁设计电子信息专业1102班姚晓强指导教师孙亚萍第一章引言研究背景电子线路的设计需要经过设计方案提出、方案验证和修改三个阶段,有时甚至需要经过多次的反复。

基于Proteus环境的电子密码锁设计

基于Proteus环境的电子密码锁设计

基于Proteus环境的电子密码锁设计一、实验目的1.掌握嵌入式系统开发的基本流程;2.熟悉嵌入式系统开发仿真软件使用方法;3.基于89C52单片机来设计电子密码锁。

二、实验要求1、用4*3组成0-9数字键及确认键、删除键;2、用8位数码管组成显示电路提示信息,当输入密码时,只显示“—”,当密码位数输入完毕按下“确定”键时,对输入的密码与设定的密码进行比较,若密码正确,则开锁,此处用LED发光二极管亮1s作为提示;若密码不正确,禁止按键输入3s,同时发出“嘀、嘀”报警声。

三、实现原理1、按键消抖闭合稳定前沿抖动后沿抖动图3-1由图3-l可见,在按键闭合和断开时产生了多个边沿,而在实际中每按一次键,我们只需要一组稳定的上升或下降边沿,所以对于电路中的按键信号,如果我们不滤除抖动的话,还是简单的读取信号的边沿,会引起一次按键被误读多次,这样就会引起电路的误动作。

为了保证按一次键电路只有一次正确的响应,即在键闭合稳定时读取键的状态,就要求电路中必须采取滤除抖动的措施。

本设计按键较多,故采用软件方法去抖,即检测出键闭合后执行一个延时程,产生5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。

当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。

2、矩阵扫描电路由于本设计所用到的按键数量较多而不适合用独立按键式键盘。

采用的是矩阵式按键键盘,它由行线和列线组成,也称行列式键盘,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多I/O口。

本设计中使用的这个3*4键盘不但能完成密码的输入还能作特别功能键使用,比如清空显示功能等。

键盘的每个按键功能在程序设计中设置。

其大体功能(看键盘按键上的标记)及与单片机引脚接法如图3-2所示:图3-23、复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC=0000H,使单片机从第—个单元取指令。

密码锁verilog课程设计之欧阳数创编

密码锁verilog课程设计之欧阳数创编

课程设计报告课程设计题目:4位串行数字密码锁学号:201420130326学生姓名:谢渊良专业:通信工程班级:1421302指导教师:钟凯2017年 1月 5日1.摘要随着科技的发展数字电路的各种产品广泛应用,传统的机械锁由于其构造的简单,安全性不高,电子密码锁其保密性高,使用灵活性好,安全系数高,使用方便,将会是未来使用的趋势。

本设计使用EDA设计使设计过程廷到高度自动化,其具有强大的设计功能、测试、仿真分析、管理等功能。

使用EDA环境完成电路的系统综合设计和仿真。

用VHDL可以更加快速、灵活地设计出符合各种要求的密码锁。

本设计基于Verilog HDL语言来设计密码锁,先介绍设计要求和整体设计思想,随后对所使用各模块分别为键盘模块、连接模块、控制模块进行了介绍,给出各个模块的主要代码,在对各个模块的功能进行仿真。

关键字:密码锁 Verilog HDL2.设计内容设计一个4位数字密码锁子系统1)1.2设计要求开锁密码为4位二进制,当输入密码与锁内给定的密码一致时,方可开锁。

否则进入“错误”状态,发出报警信号。

2)锁内的密码可调。

3)串行数字密码锁的报警,直到按下复位开关,才停下。

此时,数字密码锁又自动等待下一个开锁状态。

3.系统设计本设计中,FPGA系统采用硬件描述语言Verilog按模块化方式进行设计,并用modersim软件对各个模块进行编写仿真。

3.1键盘模块键盘电路理想接口图:Set设计原理:本模块采用2×2的扫描键盘电路,对输入信号进行采集,此模块的主要功能是每按下一个按键,flag产生一个矩形波,作为连接模块的触发信号。

同时key_value值为所按下键的编码值,与flag一同传入连接模块。

实际设计接口图:键盘模块仿真图:跟据图中所示当输出kevalue:10值的时候,flag出现一个矩形波。

当输出kevalue:11值的时候,flag再次出现上跳沿。

实际上,上面的图写的测试文件是有一点错误的,当a扫描到第三个值(01)时,b在实际电路中应该是01而不是11,此时根据程序flag应置为1,当然此时flag本来就是1,不会发生错误。

proteus电子密码锁课程设计

proteus电子密码锁课程设计

proteus电子密码锁课程设计一、课程目标知识目标:1. 学生能理解电子密码锁的基本原理,掌握相关电子元件的功能和使用方法。

2. 学生能描述proteus软件在电子密码锁设计中的应用,并运用其完成电路图的绘制。

3. 学生了解并掌握常见的电子密码锁编程方法,如C语言或汇编语言。

技能目标:1. 学生能够运用所学知识,独立完成一个电子密码锁的设计与仿真。

2. 学生能够在实际操作过程中,熟练使用proteus软件,解决电路设计中遇到的问题。

3. 学生通过小组合作,提高沟通协作能力,培养团队精神。

情感态度价值观目标:1. 学生对电子技术产生兴趣,激发探索精神和创新意识。

2. 学生能够认识到电子密码锁在生活中的应用,增强实践能力和社会责任感。

3. 学生在课程学习中,培养耐心、细心和严谨的学习态度,提高解决问题的能力。

本课程旨在帮助学生掌握电子密码锁的设计原理和实际应用,结合proteus软件进行仿真设计,培养学生动手实践、团队协作和创新能力。

针对学生的年级特点,课程内容深度适中,注重知识性与趣味性的结合,以提高学生的学习兴趣和积极性。

通过本课程的学习,学生能够将所学知识应用于实际生活,提高综合素养。

二、教学内容本课程教学内容主要包括以下几部分:1. 电子密码锁原理介绍:讲解电子密码锁的工作原理,分析常见的电子密码锁类型及特点,使学生了解电子密码锁的基本构成。

2. Proteus软件应用:介绍Proteus软件的功能和操作方法,教授如何使用Proteus绘制电子密码锁电路图,并进行仿真测试。

3. 电子元件认知:学习电子密码锁中常用的电子元件,如微控制器、键盘、显示器件等,了解其功能、参数及使用方法。

4. 编程语言学习:根据学生年级特点,选择合适的编程语言(如C语言或汇编语言),教授编程方法和技巧,为电子密码锁编程打下基础。

5. 电子密码锁设计与仿真:结合所学知识,指导学生进行电子密码锁的设计与仿真,包括电路图绘制、程序编写、功能测试等。

proteus基于8086的电子密码锁技术报告

proteus基于8086的电子密码锁技术报告
3.2程序流程图设计
密码的输入与判定
位数+1
N
Y
N
Y
图3-1密码的输入与判定
密码的更改
位数+1
N
Y
N
Y
图3—2密码的更改
3。3按键控制
(1)、控制字
给8255A输入端口控制字:
void fun82531()
{
__asm
{
mov dx, 0x8006
mov al, 0x37
out dx, al

outp(GATE0,0x02);
4。 16位数码管
16位数码管的数码管,由16个引脚控制,低电平有效,其中A-H控制外圈0,
K-M控制内部*
S1—s4是通道控制,高电平有效。
2.2仿真电路总体设计
本实验设计中,硬件部分涉及到了8086CPU、可编程并行接口8255A,并配合74LS373锁存器、74LS245缓冲器、74LS138译码器等基本元器件,实现了设想的电子密码锁.
第二片8255
定义A,B,C口都为输入状态,对应输入相应的按钮状态,对应相应的程序,实现相应功能。
2。 8253
使用0通道,方式3,对输入的始终信号分频,当输入密码次数大于5次时,初始化8253,并发出警报提示声。
当输入密码正确后,激活1通道,警报提示声接触。
3。 2-4译码器
由于8086运行速度过快,数码管动态显示出现显示不全的现象,因此PC0,PC1输出经过2-4译码器之后,再激活数码管,起到缓冲作用.
outp(GATE0,0x00);

void fun82532()
{
__asm

mov dx, 0x8006

基于单片机的电子密码锁程序之欧阳与创编

基于单片机的电子密码锁程序之欧阳与创编

四个部分很简单的写法适合年夜部分人群!!!欢迎下载!//****************************无存储功能电子密码锁****************************************** //****************************头文件******************************************#include"reg52.h"#include"speak.h"#include"lcd_1602.h"#include"keysca.h"//******************************变量界说********************************************** ***unsigned int shurumima[6];//****************************主函数******************************************void main(){init_1602(); //初始化while(1){duoyu_1602();keyscan();}}、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、#include"reg52.h"#include"lcd_1602.h"//********************************************* *********************************sbit rw=P0^2;sbit rs=P0^3;sbit en=P0^1;unsigned char code yejing[]={'z','h','o','u','a','i','u','*'}; unsigned int mima_init[];extern unsigned int shurumima[6];//********************************写命令、数据********************************************* void write(unsigned char date,unsigned char k){rs=k;P2=date;delay1ms(5);en=1;delay1ms(5);en=0;}//******************************液晶初始化********************************************** **void init_1602(){en=0;rw=0;write(0x38,0);write(0x0c,0);write(0x06,0);write(0x01,0);}//******************************1ms延时函数********************************************** *void delay1ms(unsigned int z) //1ms延时{unsigned int x,y;for(x=z;x>0;x)for(y=120;y>0;y);}//******************************液晶过剩部分显示********************************************** *void duoyu_1602(){unsigned char i;write(0x80+0x40,0);write(yejing[7],1);write(0x80+0x41,0);for(i=0;i<4;i++) write(yejing[i],1);write(0x80+0x45,0);write(yejing[1],1); write(0x80+0x46,0); write(yejing[4],1); write(0x80+0x47,0); write(yejing[2],1); write(0x80+0x48,0); write(yejing[0],1); write(0x80+0x49,0); write(yejing[1],1); write(0x80+0x4a,0); write(yejing[5],1); write(0x80+0x4b,0); write(yejing[0],1); write(0x80+0x4c,0); write(yejing[6],1); write(0x80+0x4d,0); write(yejing[2],1); write(0x80+0x4e,0); write(yejing[7],1); write(0x80+0x4f,0); write(yejing[7],1);write(0x80,0);for(i=0;i<5;i++) write(yejing[7],1);write(0x80+0x0b,0);write(yejing[7],1);write(0x80+0x0c,0);write(yejing[7],1);write(0x80+0x08,0);for(i=1;i<4;i++) write(shurumima[i]+0x30,1);write(0x80+0x0d,0);for(i=1;i<4;i++) write(mima_init[i]+0x30,1);}、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、#include"reg52.h"#include"lcd_1602.h"#include"keysca.h"#include"speak.h"//********************************************* *********************unsigned int low,high,number,qout,j;unsigned charok,shuru,gaimi,gaimi_count,shuru_count,ok_count,succee d_flag,m,n;extern unsigned int shurumima[6];unsigned int mima_init[]={0,1,2,3};unsigned int code please[]={'p','l','e','a','s','e'};//please unsigned int code sr[]={'s','r'};//shuruunsigned int code gm[]={'g','m'};//gaimiunsigned int code ookk[]={'o','k'};//ok//********************************************* *********************void keyscan(){P1=0X0F;low=P1&0x0f;if(low!=0x0f){delay1ms(10);low=P1&0x0f;}P1=0XF0;high=P1&0xf0;if(high!=0xf0){delay1ms(10);high=P1&0xf0;number=low+high;switch(number){case(0x77):qout=0;write(0x80+0x07,0);write('0',1);break;case(0x7b):qout=1;write(0x80+0x07,0);write('1',1);break;case(0x7d):qout=2;write(0x80+0x07,0);write('2',1);break;case(0x7e):qout=3;write(0x80+0x07,0);write('3',1);break;case(0xb7):qout=4;write(0x80+0x07,0);write('4',1);break;case(0xbb):qout=5;write(0x80+0x07,0);write('5',1);break;case(0xbd):qout=6;write(0x80+0x07,0);write('6',1);break;case(0xbe):qout=7;write(0x80+0x07,0);write('7',1);break;case(0xd7):qout=8;write(0x80+0x07,0);write('8',1);break;case(0xdb):qout=9;write(0x80+0x07,0);write('9',1);break;case(0xdd): ;break;case(0xde): ;break;case(0xe7):shuru=1;write(0x80+0x05,0);for(j=0;j<2;j++)write(sr[j],1);break;case(0xeb):gaimi=1;write(0x80+0x05,0);for(j=0;j<2;j++)write(gm[j],1);break;case(0xed): ;break;case(0xee):ok=1;write(0x80+0x05,0);for(j=0;j<2;j++)write(ookk[j],1);break;}if(gaimi==1&&shuru==1) //改密码{mima_init[gaimi_count]=qout;gaimi_count++;}if(shuru==1&&gaimi==0) //输入密码{shurumima[shuru_count]=qout;shuru_count++;}if(ok==1){if(shuru==1&&gaimi==0)//输入密码确认{for(ok_count=1;ok_count<4;ok_count++){if(shurumima[ok_count]!=mima_init[ok_count]) {succeed_flag=2;break;}}if(succeed_flag!=2) succeed_flag=1;ok=0;shuru=0;shuru_count=0;}if(gaimi==1&&shuru==1) //修改密码确认{gaimi_count=0;gaimi=0;ok=0;}}while(P1!=0XF0);}if(succeed_flag==1){succeed();m++;if(m==10){succeed_flag=0;m=0;}}else if(succeed_flag==2){speak_led();n++;if(n==10){succeed_flag=0;n=0;}}}。

电子密码锁毕业论文之欧阳法创编

电子密码锁毕业论文之欧阳法创编

闽江学院本科毕业论文(设计)题目基于51单片机的电子密码锁学生姓名王颖丹学号3111101215系别计算机科学系年级级专业嵌入式应用指导教师郑明职称副教授完成日期526诚信承诺书本人郑重声明:兹提交的毕业论文(设计)《基于51单片机的电子密码锁》,是本人在指导老师郑明的指导下独立研究、撰写的成果;论文(设计)未剽窃、抄袭他人的学术观点、思想和成果,未篡改研究数据,论文(设计)中所引用的文字、研究成果均已在论文(设计)中以明确的方式标明;在毕业论文(设计)工作过程中,本人恪守学术规范,遵守学校有关规定,依法享有和承担由此论文(设计)产生的权利和责任。

声明人(签名):王颖丹3 月 1 日摘要本次毕业设计我选择的是基于51单片机的电子密码锁,所选芯片为AT89C51。

这个电子密码锁包括了5*4矩阵键盘模块,24C02存储模块,报警模块,1602液晶屏显示模块。

使用的编程工具是keil C51,画图工具是Protell 99 SE,烧写工具是STC479。

在本次毕业设计的制作过程中,我经过不断的调试,更改程序,来提高锁的使用性能,最后的调试结果,我还是比较满意的。

因为它基本实现了开题报告中所提到的功能:报警功能、开锁功能、掉电存储密码功能、显示功能、键盘输入功能等。

但是还是有一些遗留问题的,比如显示屏老是花屏,按键不够灵敏等。

关键词:单片机AT89C52;密码锁;5*4矩阵键盘;1602液晶屏AbstractThis graduation design I choose is based on the 51 singlechip electronic code lock, the selected chip AT89C51.the electronic password lock comprises a 5 * 4 matrix keyboard module, 24C02 memory module, alarm module, LCD display module. Using the programming tool is KEIL C51, drawing tools is protell 99 SE, the programming tool is STC479. In the making process of the graduation design, I through continuous debugging and change procedures, to improve the use performance of the lock and the debug result. I was satisfied, because it basically achieved mentioned in the proposal that the function: alarm function, lock function, electric storage password function, display function, keyboard input function. But there are still some problems left, such as the display is always flower screen, buttons and other key is not sensitive.Key words:SCM AT89C52; password lock; 5 * 4 matrixkeyboard; 1602 LCD screen; safety performance。

简易电子密码锁课程设计之欧阳学创编

简易电子密码锁课程设计之欧阳学创编

江西理工大学应用科学学院时间:2021.03.03 创作:欧阳学微机控制系统课程设计报告题目:简易电子密码锁姓名:学号:专业班级:指导教师:完成时间:设计报告综合测试平时总评格式(10分)内容(10分)图表(5分)功能测试(35分)答辩(20分)考勤(20分)指导教师签名:目录摘要1第一章系统概述2第二章基本功能设计32.1实验任务32.2基本设计要求32.2.1 基本要求32.2.2发挥部分32.3 主要元件介绍32.3.1 P89C51芯片32.4 系统框图5第三章硬件设计53.1 硬件电路的设计53.1.1 硬件工作接线口53.1.2 LED显示器结构与原理53.1.3 复位电路73.1.4 振荡电路73.1.5 按键设置83.1.6 报警器和发光二极管93.2硬件电路图9第四章软件设计114.1 系统软件设计114.1.1密码开锁功能12第五章系统PROTUSE仿真图13第六章设计总结16参考文献17附录18摘要随着人们生活水平的提高,如何实现家庭防盗这一问题也变得尤其的突出,传统的机械锁由于其构造的简单,被撬的事件也屡见不鲜,因此,人们在日常生活中越来越越离不开密码的使用。

在人们对安全的重视和科技的发展的同时,许多电子智能锁(指纹识别、IC 卡辨认)已相继问世,但这类产品是针对特定指纹或有效卡,只能适用于保密要求高且仅供个别人使用的箱、柜、房间等。

另外,卡片式的IC卡易丢失和损坏,加上其成本较高,在一定程度上限制了这类产品的普及和推广。

鉴于目前的技术水平和市场的接收程度,电子密码锁是这类电子防盗产品的主流。

基于以上思路,本次设计使用PHILIPS公司的P89C51实现——基于单片机的电子密码锁的设计。

关键字:P89C51 单片机密码电子锁with the improvement of people living standards, how to achieve security of this family also changed particularly prominent, the traditional mechanical lo ck because of its simple structure, the incident was nothing new. therefore, more and more people in th eir daily life is inseparable from the use of passw ords.as people attach importance to security and the development of technology, at the moment, many Elec tronic smart lock(fingerprint ,IC card identification)h as been published at home and abroad. However these products are characterized by specific and effective fingerprint cards, can only apply to the confidenti ality requirements of the box, counter, doors, and s o on. And fingerprint recognition knowledge for use in public places if there easily damaged machinery, C card there are still easily lost, damaged, and so on. Coupled with its high cost, to some extent, l imited the popularity of such products and promotion. Given the current level of technology and the mark et reception of electronic code lock is such a main stream electronic anti-theft products.Based on the above ideas, this design uses the P89C51 PHILIPS achieve an electronic passw ord—based SCM lock design.Key words: P89C51 SCM password electronic locks第一章系统概述本次设计使用P89C51单片机实现简易电子密码锁的设计,其主要具有如下功能:1.设8置位密码,密码通过键盘输入,此时黄灯亮,若密码正确则绿灯亮。

电子密码锁课程设计之欧阳体创编

电子密码锁课程设计之欧阳体创编

目录摘要 (2)1. 设计目的 (3)2. 设计要求 (3)3. 方案选择 (4)3.1 第一方案 555集成电路构成的密码锁电路 (4)3.2 第二方案基于74LS138译码器的电子密码锁设计 (4)3.3 第三方案基于8D锁存器74LS373的锁存密码电路 (4)4. 流程框图 (6)5. 原理电路图 (6)6. 单元电路的设计 (6)6.1 密码验证模块 (6)6.2 计时模块 (8)6.3 锁定输出 (8)6.4 逻辑组合模块 (9)7. 组装和调试 (10)8. 测试数据 (11)9. 总结 (13)10. 致谢 (15)附录一总电路图 (15)附录二元器件清单 (15)附录三仿真结果 (16)3.1 密码输入正确 (16)3.2 密码输入错误 (16)附录四实物作品 (17)参考文献 (17)摘要本次课程设计的题目是电子密码校验设计,由输入密码、设定密码、寄存电路、比较电路、显示电路、修改密码等模块组成。

该电子密码锁利用数字逻辑电路,实现对锁的电子控制,突破了传统的机械锁的单一性、保密性低、易撬性的缺点,数字电子密码锁具有保密性高、使用灵活性好、安全系数高的优点。

主要工作部分是将输入密码与正确密码进行比较,密码正确时绿色发光二极管亮,密码错误则红色发光二极管亮。

输入电路将6位密码并行输入,密码是否相等利用与非门将输入的密码和预定密码进行比较,当相等时便触发绿色发光二极管,不相等则作用到红色发光二极管和蜂鸣器。

1. 设计目的本课程为电子、通信类专业的独立实践课,该课程设计建立在电路基础、低频与高频电子线路等课程的基础上,主要让学生加深对电子线路理论知识的掌握,使学生能把所学的知识系统地、高效地贯穿到实践中来,避免理论与实践的脱离,同时提高学生的动手能力,并在实践中不断完善理论基础知识,有助于培养学生综合能力。

2. 设计要求1)要求电子器件设计制作密码锁的控制电路,使之在输入正确的代码时,输出信号以启动执行机构动作,并且用红、绿LED指示关锁、开锁状态。

基于FPGA的数字密码锁之欧阳科创编

基于FPGA的数字密码锁之欧阳科创编

CPLD/FPGA课程设计项目名称:基于FPGA的数字密码锁设计专业班级:学生学号:学生姓名:指导老师:2016年6月4日摘要本设计是基于现场可编程门阵列FPGA 器件的电子密码锁的设计。

通过Verilog 语言控制4位二进制数,组成数字排列,形成一个简单的数字密码锁,假设预设密码为4位数:0000,当输入正确时输出为1、输入错误时输出为0。

同时输出输入的次数,当3次以上输入错误时,输出一个报警信号,即使第四、五次输入正确也输出报警信号。

本设计利用Modelsim软件编写Verilog HDL硬件描述语言程序以实现输入密码、开锁、报警功能。

通过仿真调试,利用可编程器件FPGA的电子密码锁的设计基本达到了预期目的。

关键词:现场可编程门阵列;数字密码锁;Verilog HDL;AbstractThis design is the electronic code lock field programmable gate array FPGA devices based design. By Verilog language control 4-bit binary number, composed of figures arranged to form a simple digital lock, assuming that the default password is 4 digits: 0000, correct output when the input is 1, the output of the input error to zero. At the same time the number of input and output, and when more than three times the input error, an alarm signal is output, even if the fourth and fifth also enter the correct output alarm signal.This design uses Modelsim software write Verilog HDL hardware description language program to implement a password lock, alarm function. The simulation debugging, using the programmable device FPGA design basic electronic locks to achieve the desired purpose.Key words: FPGA;The digital combination lock;Verilog HDL;目录摘要IAbstractII第1章所选项目的研究意义11.1 概述11.2 数字密码锁的研究现状21.2.1 数字密码锁的应用31.2.2 数字密码锁的困难31.3 本文研究意义31.4 设计思路4第2章设计方案52.1 功能定义52.2 模块设计5第3章系统软件设计73.1 设计概括73.2 设计流程73.2.1 密码存储模块73.2.2 编码模块83.2.3 比较模块83.3 主要程序模块9第4章软件仿真144.1 仿真过程144.2 仿真结果154.3 仿真分析164.3.1 仿真过程17结论18参考文献19附录1 程序代码20项目创新及特色26第1章所选项目的研究意义1.1 概述数字密码锁是一个小型的数字系统,与普通机械锁相比, 具有许多独特的优点: 保密性好, 防盗性强, 可以不用钥匙, 记住密码即可开锁等。

51单片机简易密码锁之欧阳法创编

51单片机简易密码锁之欧阳法创编

学号:201114040215HEBEIUNITED UNIVERSITY单片机课程设计说明书设计题目:简易电子密码锁学生姓名:李红辉专业班级:测控技术及仪器2学院:电气工程学院指导教师:曹晓华2014年06月05日成绩评定表摘要在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。

若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。

随着科学技术的不断发展,人们对日常生活中的安全保险器件的要求越来越高。

为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。

密码锁具有安全性高、成本低、功耗低、易操作等优点。

在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。

随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码锁,它除具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。

本课程设计介绍了基于单片机电子密码锁的设计,该设计硬件主要由AT89C52最小系统、矩阵电路、1602LCD显示电路、电源电路和报警电路等几部分组成。

软件主要由C语言编程。

该密码锁由单片机技术,通过矩阵电路设置、修改密码、保护密码,并由LCD显示密码输入,从而实现对密码的设置、保护。

关键词:单片机,密码锁,1602,最小系统,矩阵键盘AbstractIn daily life and work, the department of housing and security, unit documents, financial statements and some personal information to save more in order to lock the ways to solve. If use the traditional mechanical key to open the lock, people often need to carry multiple keys, use very convenient, and the key missing after security is compromised. With the continuous development of science and technology, people in daily life the demand is higher and higher safety insurance device. To meet the requirements of people on the use of the lock, increase its safety, use the password instead of the key combination lock arises at the historic moment. Combination lock with high safety, low cost, low power consumption, easy operation, etc.In the field of security technology to guard against, with electronic combination lock anti-theft alarm function gradually replace the traditional mechanical combination lock, overcoming the mechanical combination lock password quantity is little, the shortcomings of poor safety performance, make the combination lock both in technology and step in performance are improved greatly. With the development of large scale integrated circuit technology, especially the single chip microcomputer, appeared with the intelligent combination of the microprocessor, it besides has the function of electronic combination lock, also introduced the intelligent management, expert analysis system, and other functions, so that the combination lock of high security, reliability, and increasingly widely used.The course design of electronic combination lock based on MCU is introduced, the design of the hardware is mainly composed ofAT89C52 minimum system, matrix circuit, 1602 LCD display circuit, power circuit and alarm circuit and so on several parts. Software is mainly composed of C language programming. The combination lock by the single chip microcomputer technology, through the matrix circuit setting, change passwords, password protection, and by the LCD display password input, so as to realize the password Settings, protection.Key words: single chip microcomputer, trick lock, the 1602, the smallest system, matrix keyboard目录摘要IABSTRACTII第1章绪论71.1电子密码锁的现状与发展71.1.1电子密码锁的现状71.1.2电子密码锁的发展71.2电子密码锁的特色7第2章电子密码锁的工作原理及总体设计....................................................... . (8)2.1电子密码锁的工作原理82.2总体结构的设计8第3章硬件系统设计93.1单片机最小系统和数据输入93.1.1单片机最小系统93.1.2矩阵键盘的设计与初始数据的输入113.2数据的输出与显示123.3报警电路163.4硬件电路图17第4章仿真与调试194.1 程序流程 (19)4.2 仿真结果 (20)总结23参考文献25附件第1章绪论1.1电子密码锁的现状和发展1.1.1电子密码锁的现状当今智能电子密码锁发展已经到了非常高的境界,由于电子元件特别是单片机应用在这几年得到空前发展,无论功能性,稳定性都比较全面,在保密方面已做到人眼识别,指纹识别,人声识别基本上电影上有的现实也有。

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

本科生学年论文(设计)欧阳光明(2021.03.07)(2011级)论文(设计)题目基于protues的电子密码锁设计作者姚晓强系专业电气信息工程班级电子1102指导教师(职称)孙亚萍(讲师)字数6280成果完成时间2013-12-26杭州师范大学钱江学院教学部制基于protues的电子密码锁设计电气信息专业1102班姚晓强指导教师孙亚萍摘要:本文以AT89C51单片机为核心器件,结合按键电路、LED数码管显示电路、报警指示电路和开锁机构,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性通过软件程序来控制整个系统实现电子密码锁的基本功能,其主要具有如下功能:●密码通过键盘输入,若密码正确,则将锁打开●密码输入错误,蜂鸣器将报警提示●用户可以自由设定密码本密码锁具有设计方法合理,简单易行成本低,安全实用等特点,具有一定的推广价值。

关键词:AT89C51;电子密码锁;功能The design ofelectronic lockon the ProtuesYao XiaoqiangInstructor:Sun YapingAbstract: Based on the AT89C51 single-chip microcomputer as thecore device, combining with the key circuit, LED digital tube display circuit, an alarm circuit and unlocking mechanism, design the whole system to achieve the basic functions of electronic cipher lock by its flexible programming , rich I / O port, and accuracy basing on the software program . With the following functions :●Input password through the keyboard, if the password is correct, lock will open●If the password is error, the buzzer will alarm●Users can freely set the passwordThe lock has some features like a reasonable design methods,simple to work,low cost and security,it also has some promotion value.Key words: AT89C51 ; Electronic lock ; Function目录基于protues的电子密码锁设计电子信息专业1102班姚晓强指导教师孙亚萍第一章引言1.1研究背景电子线路的设计需要经过设计方案提出、方案验证和修改三个阶段,有时甚至需要经过多次的反复。

传统的设计方法一般是采用搭接实验电路的方法进行,这种方法费时、费用高、效率低。

随着计算机技术水平的不断提高,电子线路设计仿真软件迅速发展起来,EDA[1](Electronic Design Automation 电子设计自动化)技术应运而起,功能日益强大,运行速度快,使得电子线路设计人员能在计算机上完成电路的功能设计、逻辑设计、性能分析等等。

Protues软件是英国Labcenter electronics公司出版的EDA工具软件。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前最好的仿真单片机及外围器件的工具。

虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

1.2应用现状现今常见的密码锁设计主要有两种方案,一种是中规模集成电路控制的方案,另一种是单片机控制的方案。

对于采用集成电路控制的方案,其中的编码电子锁电路分为编码电路、控制电路、复位电路、解码电路、防盗报警电路、门铃电路,而电子锁主要由输入元件、电路(包括电源)以及锁体三部分组成。

显然此种方案的物理实现结构较为复杂且重新设置密码、输入密码的操作过程也会给用户带来一定的不方便;而利用单片机控制的方案,由于单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加掉电存储、声光提示甚至添加遥控控制功能,但其也有一定的局限性,就在于其控制原理的复杂以及要求设计人员具有更加良好的程序设计能力,调试较为繁琐,否则程序一旦跑飞将造成意想不到的损失。

通过对这两种方案的优缺点比较,再考虑到本人自己对单片机设计具有一定的基础,所以此次选择利用单片机来进行密码锁的设计。

第二章Protues软件包介绍2.1Protues软件概述Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。

迄今为止是世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。

在编译方面,它也支持IAR、Keil和MATLAB等多种编译。

2.2 Protues软件的功能和特点Protues软件具有其它EDA工具软件(例:multisim)的功能。

这些功能是:(1)原理布图(2)PCB自动或人工布线(3)SPICE电路仿真第三章电子密码锁电路的设计3.1 电子密码锁的工作原理以AT89C51单片机为主控制单元,键盘为主要输入单元,结合开锁装置、报警器和显示器完成整个系统设计。

它的系统结构图如图.3.1所示:图.3.1系统结构图3.2系统的总体思路设计系统的运行过程大致如下:假设初始状态为闭锁,此时整个系统只等待按键输入,数码管也不显示。

先按除号键修改密码,每按下一个数据键(即每输入一个密码),数码管相应的显示一个“-”标志,当密码全部输入完成后,需按下确认键“ON/C”。

设置密码后,先按“+”复位,然后输入密码,输入完毕后按下确认键“ON/C”,此时系统判断密码是否正确,正确则开锁(仿真中以数码管显示全8、绿色LED灯亮为标志),错误则报警,此后数码管熄灭继续等待按键。

3.3主要元器件介绍3.3.1AT89C51介绍AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。

AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

图3.3.1.1AT89C51封装图图3.3.1.2 AT89C51引脚图AT89C51主要特性:1. 与MCS-51 兼容2. 4K字节可编程FLASH存储器3. 寿命:1000写/擦循环4. 数据保留时间:10年5. 全静态工作:0Hz-24MHz6. 三级程序存储器锁定7. 128×8位内部RAM8.32可编程I/O线9. 两个16位定时器/计数器10.5个中断源11.可编程串行通道12. 低功耗的闲置和掉电模式13. 片内振荡器和时钟电路AT89C51单片机引脚:VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P0口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为低八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

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

相关文档
最新文档