1、 电子工程设计课题论文电子密码 1 绪论11.1 引言11.2 电子密码锁的背景11.3 电子锁设计的意义的本设计特点22.系统设计32.1系统总设计结构图32.2开锁机构设计32.2.1主控芯片AT89C51单片机的简介43系统硬件设计53.1键盘设计53.2系统电路设计:63.2.1 晶振时钟电路63.2.2复位电路设计63.2.3串口引脚功能介绍63.2.4 其它引脚63.3电路图的绘制73.3.1 PROTEL 99 SE简介:73.4原器件采购74软件设计、84.1 系统软件设计整体思路84.2系统软件设计流程图95 程序调试95.1 程序调试用到的软件及工具95.2 KEIL C5
2、1简介106 设计总结与展望11II1. 绪论1.1引言电子密码锁是由电子电路控制锁体的新型锁具,它采用键盘方式输入开锁密码,操作方便。论文阐述一个基于单片机的液晶显示电子密码锁的设计与实现。系统采用美国Atmel公司的AT89S51单片机作为系统核心,液晶显示器LCD1602作为输出设备显示系统提示信息,3*4矩阵键盘作为输入设备,74ls20与非门组合芯片,配合蜂鸣器、发光二级管等电路构成整个系统硬件;系统软件采用汇编语言编写。设计的系统液晶显示,具有报警等功能,使用便捷简单,符合宅、办公用锁需求,具有一定的实用价值。12背景锁具是源流千古的社会性用品,主要用于日常生活和工作中,住宅与部门
3、的安全防范。当前门锁的主流是弹子锁,其保密性不强,钥匙容易被仿制和意外丢失;且有者需随时携带钥匙,使用不方便。保存贵重物件的保险箱主要用机械密码锁,其结构较为复杂,制造精度要求高,成本高昂,且易出现故障。随着科技、经济和社会的发展,当今社会公共安全防范系统对锁具的保密性、牢固性、可靠性、耐用性以及安装使用等提出了新的更高的要求。针对原有锁具的特点和缺陷,为满足人们对锁的使用需求,增加其安全性,用密码代替钥匙的电子密码锁应运而生。早期开发的电子密码锁由于电子器件所限,种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但不安全。后来多是基于EDA实现其电路结构复杂,电子元
4、件繁多,也有使用早先2051系列单片机来实现的,但密码简单,容易破解。随着电子元件的进一步发展,电子密码锁也出现了很多的种类,功能日强大,使用更加方便,保密安全性更强;由以前的单密码输入发展到现在密码加感应元件,实现了真正的电子加密。电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。电子密码锁的出现给人们带来了极大的方便,有很广阔的市场前景。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。 1.3特点(一)保密性好,编码量多。(二)
5、随机开锁成功率几乎为零。系统设置4位密码,密码通过键盘输入,若密码正确,则将锁打开。密码由用户自己设定,在开锁状态下,用户可自行修改密码。(三)误码输入保护。当输入密码多次错误时,报警系统自动启动。自动报警分现场报警和远程报警两种。现场报警由扬声器发出报警声。)两种情况下可报警:一是密码输入错误3次,则报警;二是非正常开门,如破门而入的情况,可通过系统的红外监视装置监测,同时报警,保证了系统的安全性。系统工作时,用户通过按键输入4位密码,单片机将输入密码与设定密码进行比较,若密码正确,则发出开锁信号,将门打开,系统不报警;若密码不正确,则有相应的指示灯闪动,并要求重新输入密码,重新输入密码的次
6、数不能超过3次,若3次输入的密码都不正确,则发出报警信号。(四)操作简单,一学就会。2.系统设计2.1系统总设计结构图数码管及LED灯显示单片机时钟电路单片机AT89C51密码输入设备开锁机构图2-1系统总设计结构图 本设计由主控芯片51单片机,单片机时钟电路,键盘,和开锁电路组成。单片负责控制整个系统的执行过程。3系统硬件设计3.1键盘设计为了使本电路更加简洁,本电子锁的密码锁采用简单易学但不为多数人知道的摩期码作为电路的密码输入。键盘硬件设备只需要一个按即可实现密码的输入与更改。关于摩斯码的介绍如下:摩斯密码是20世纪使用较为广泛的电报传输使用的一种编码。电报最早是由美国的摩尔斯在1844
7、年发明的,故也被叫做摩尔斯电码。它由一个输入按键在输入时按住的间隔时间长短组成来决定你的输入:短促的点信号 ,读 嘀 (Di);保持一定时间的长信号,读嗒 (Da)。间隔时间:嘀1t;嗒3t;滴嗒间1t;字母间3t;字间5t。表31字符摩斯码对照表字符摩斯码字符摩斯码字符摩斯码A. _M_ _ Y_ . _ _B_ . . .N_ .Z _ _ . .C_ . _ .O_ _ _1 . _ _ _ _D_ . .P. _ _ .2 . . _ _ E.Q_ _ . _ 3 . . . _ _F. . _ .R. _ .4 . . . . _G_ _ .S. . .5 . . . . .H. .
8、 . .T_ 6_ . . . .I. .U. . _7_ _ . . .J. _ _ _V. . . _ 8_ _ _ . .K_ . _ W. _ _9_ _ _ _ .L. _ . .X_ . . _0_ _ _ _ _ 注:摩斯码用在数字电路中“”表示1,“.”表示0,如0翻译成二进制数为11111H,十六进制数为1FH。本电路设计只取09数字作密码有效数字,如果输入其它字符则无效。表32 本设计用到的数字的摩斯码和二进制对照数字0123456789摩斯码111110111100111000110000100000100001100011100111102进制1111101111001
9、11000110000100000100001100011100111103.2系统电路设计:本系统电路主芯片AT89C51,晶振和两个电容组成的时钟脉冲,一个电阻和一个电解电容和一个按键组成的复位电路,一个8段数码管构成的密码显示器,一个蜂鸣器,5个LED,一个NPN三极管加上一个继电器组成的驱动电路构成了系统电路。3.2.1 晶振时钟电路单片机XIAL1和XIAL2分别接30PF的电容,中间再并个12MHZ的晶振,形成单片机的晶振电路。图31 晶振电路3.2.2复位电路设计图32 复位电路3.2.3串口引脚功能介绍 单片的P1口外接1位8段数码管,作为密码输入显示器;INT0外接蜂鸣器,当
10、INT0被置0时,蜂鸣器发出声音;P0口外接发光二极管用作系统工作状态提示。3.2.4 其它引脚 ALE引脚悬空,复位引脚接到复位电路、VCC接电源、VSS接地、EA接电源3.3电路图的绘制用PROTEL 99 SE绘制的完整电路图如下:图33 系统电路图八段数码管显示你的摩斯按键是否正确对应你要输入的数字密码。由于采取上电设置密码的编程方法复位键即密码修改键设置在门后,要打开门才能修改密码。设置密码后若输入密码不对的前两次5秒报警,最后一次10分钟报警,摩斯按发错误除外(但有两秒报警,并且须全部密码重新输入)。本电路设置四位密码,由于每位数字键均由五位摩斯码构成则要输入20次摩斯码键!p0.
11、0(绿色)“滴”显示,p0.2(黄色)“嗒”音显示,p0.4(红色)摩斯码按法错误或密码错误,p0.6(蓝色)表示该电路已设置了密码,等待输入密码进行比较。PROTEL绘制的PCB板:图34 系统PCB板PROTEL系统3D仿真:3.4元器件采购1.元器件清单表33 元器件清单原件名称备注单片机AT89C51电阻R1,R210K,100K各一只电解电容C3100F无极电容C1,C230VF数码管一只5V蜂鸣器一只晶振12MHZ三极管9014一个按健S1,S2各一个12V继电器一个LED D1,D2,D3,D4绿,黄,红,蓝各一个2极管40041只万能电路板1块经采购继电器没有买到,所以原电路的
12、输出电路3极管的继电器改为LED灯,只要电路IC经密码输入后能点亮LED灯则电路设计要求达到。3.5电路焊接 1.焊接所需工具工具名称数量焊烙铁50W1只带松香焊丝若干万用表一个表34焊接所需工具4.软件设计4.1 系统软件设计整体思路 一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。因此充分利用其内部丰富的硬件资源和软件资源,采用与C51系列单片机相对应的51汇编语言和
13、结构化程序设计方法进行软件边程。 程序设计语言有三种:机器语言、汇编语言和高级语言。机器语言是机器唯一能“懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(成为目标程序),计算机才能“看懂”,然后逐一执行4.2系统软件设计流程图糸统返回否是密码错误主人是否要修改密码开门输入正确密码保存后糸统返回输入新密码报警输入错误满3次输入错误未满3次密码比较开始系统唤醒上电密码输入完毕系统等待密码输入 图41 系统程序设计结构图5 程序调试把也写好的汇编语言程序的载入软件调试工具,检查软件是否有设法错误,再根据软件提示对本程序进行修改,直到没有错误再生成单片机能运行的
14、机器码,再用51开发板或其它单怎机写入工具把机器码写入单片机进行实际的程序调试,根据实际情况再对程序的不足加以修改,直到满足设计要求。5.1 程序调试用到的软件及工具调试本程序需要用到KEIL C51,及51开发板一块及其配套的下载烧录软件5.2 KEIL C51简介Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看
15、一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。 C51工具包的整体结构: uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex
16、文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。6 设计总结与展望实践是检验真理的唯一标准,当然也是检验学习成果的标准。在经过一段时间的学习之后,我们需要了解自己的所学应该如何应用在实践中,因为任何知识都源于实践,归于实践,所以要将所学的知识在实践中来检验。在做课程设计期间,在老师的指导下,通过自身的不断努力,无论是思想上,学习上,都取得了长足的发展和巨大的收获,现将工作总结如下:思想上,学会了用科学的精神去解决问题。很多事情看起来是很简单的问题,但实际做起来去会发现有许多奥妙!这是因为其中蕴含着许多科学的问题。运用科学的方法去解决问题,这是我这次实训给我带来的思想上的改变。学习上,使自已在大学所以的知识在这次得到实践,学到一些书本上无法学到的经验,对电子元件有了进一步的认识。电子锁是信息化时代发展的产物,应时而生,我相信随着科技的不断发展,将来的电子锁一定更加完美,更加人性化,更加便宜,更加安全。11