毕业设计(论文)-基于51单片机电子密码锁设计.doc_第1页
毕业设计(论文)-基于51单片机电子密码锁设计.doc_第2页
毕业设计(论文)-基于51单片机电子密码锁设计.doc_第3页
毕业设计(论文)-基于51单片机电子密码锁设计.doc_第4页
毕业设计(论文)-基于51单片机电子密码锁设计.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计论文基于51单片机的电子锁设计系 别: 信息学院专业名称: 自动化08学 号: 学生姓名:指导教师:指导单位: 电子科技大学中山学院机电工程系完成时间: 2010年5月电子科技大学中山学院教务处制发V电子科技大学中山学院毕业设计(论文)任务书题目名称基于51单片机的电子锁设计设计(撰写)内容随着信息化时代也进入我们的家庭,人类文明的不断提高,人们对家居、文件资料及各种私人隐私的安全要求不断提高,传统的机械锁也不能满足人们的要求,针对此现况,设计一款安全可靠廉价的电子锁有着重大的意义。本设计以AT89C51为主控芯片,带有一个密码输入键盘、外围时钟复位电路、电磁阀等实现电子锁的锁闭和打开。该锁要求结构简单,成本低,安全性高,易于主人随时更新密码,在一定程度上具有较大的市场竞争力。 要求完成电子锁的控制系统的实物演示模型。预期目标通过这次毕业设计,学生可以掌握并利用单片机的软件编程技术,能够选择合适的算法,运用所学的电路知识完成基本的电路设计,利用PROTEL软件绘制电路图,并制作实际的模型电子锁的基本功能,完成整套电子密码锁的设计,从而达到并熟悉一个产品完整的开发流程和具体内容,增强实践应用能力。成果形式1、毕业设计论文;2、实物模型;3、单片机源程序和可执行程序。设计(撰写)地点电子科技大学中山学院起止时间2009年10月18日 至 2010年5月8日指导单位电子科技大学中山学院机电工程系指导教师刘保军 2009年10月20日审核意见审核签名 年 月 日电子科技大学中山学院毕业设计(论文)成绩评定表设计(撰写)过程评语: 指导教师: 年 月 日成绩论文评阅评语: 评阅教师: 年 月 日成绩论文答辩评语: 答辩组长: 年 月 日成绩总分审核人: 年 月 日基于51单片机电子锁设计摘 要随着科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统机械锁由于构造简单,被撬事件屡见不鲜;电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的青睐。本设计以单片机AT89C51作为密码锁监控装置的检测和控制核心,分为主机控制和从机执行机构(本设重点介绍主机设计),实现钥匙信息在主机上的初步认证注册、密码信息的加密、钥匙丢失报废等功能。根据51单片机之间的串行通信原理,这便于对密码信息的随机加密和保护。而且采用键盘输入的电子密码锁具有较高的优势。采用数字信号编码和二次调制方式,不仅可以实现多路信息的控制,提高信号传输的抗干扰性,减少错误动作,而且功率消耗低;反应速度快、传输效率高、工作稳定可靠等。软件设计采用自上而下的模块化设计思想,以使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行的稳定性。测试结果表明,本系统各项功能已达到本设计的所有要求。关键词:单片机;密码锁;单片机设计,电子锁。Electronic Lock Design with 51 Serires Single Chip ControllerAbstractAlong with the exaltation of social science and the living level of people, how carry out the family to guard against theft, this problem also change particularly outstanding.Because of the simple construct of traditional machine lock,the affairs of theft is hackneyed.the electronics lock is safer because of its confidentiality, using the vivid good, the safe coefficient is high, being subjected to the large customer close.It can carry out the key information to register in the main on board initial attestation, the password information encrypt etc. Go to correspond by letter the principle according to the string between 51 machines, this is easy to encrypt and protect to the passwords information random. Adopt the numerical signal codes,not only can carry out many controls of the road information, raise the anti- interference that signal deliver, reduce the mistake action,but also the power consume is low, Respond quickly,the efficiency deliver is high, work stable credibility etc. The software design adoption the design thought from top to bottom, to make the system toward wear distribute type,turn to the direction development of small, strengthen the system and can expand the stability and circulate.Test the result enunciation, various functions of this system are already all request of this design.keyword:singlechip;cryptogram lock;singlechip design; electronics lock.目录1 绪论11.1 引言11.2 电子密码锁的背景11.3 电子锁设计的意义的本设计特点22.系统设计32.1系统总设计结构图32.2开锁机构设计32.2.1主控芯片AT89C51单片机的简介43系统硬件设计73.1键盘设计73.2系统电路设计:83.2.1 晶振时钟电路83.2.2复位电路设计93.2.3串口引脚功能介绍93.2.4 其它引脚93.3电路图的绘制93.3.1 PROTEL 99 SE简介:123.4原器件采购143.5电路焊接144.软件设计174.1 系统软件设计整体思路174.2系统软件设计流程图185 程序调试195.1 程序调试用到的软件及工具195.2 KEIL C51简介195.3 调试过程196 设计总结与展望22致 谢23参考文献24附录251 绪论1.1 引言随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的喜爱。锁是置于可启闭的器物上,用以关住某个确定的空间范围或某种器具的,必须以钥匙或暗码打开的扣件。锁具发展到现在已有若干年的历史了,人们对它的结构、机理也研究得很透彻,因此,不用钥匙就能打开的方法和工具也层出不穷。现代人类文明社会里,由于社会中各种矛盾冲突十分剧烈,人们的思想道德观念,价值观念,文化修养水平等差异,群众中良莠不齐,善良的人们能够自觉规范自已的行为,“非礼不为”,虽无钥匙亦不会乱闯。然而,那些毫无道德观念的盗贼却想方设法利用高科技手段撬门开锁,使广大居民防不胜防。为什么会出现这种情况呢?因为传统锁具都存在致命的弱点:第一、 锁芯采用常见的铜、铝、锌等材料,抵抗不了强力破坏;第二、 锁具制作工艺,技术落后,无法阻止技术手段的开启。目前,市场上很多国内外的锁具,实际上都不具备真正的防盗功能。在惯偷面前,两根钢丝或几件简单的工具就可以把这些锁打开,有的惯偷甚至公开扬言:“没有我打不开的锁。”其实,不是他们多高明,而是一般锁具技术原理太过简单。面对这一残酷的现状,新时代提出了锁具必须革命的迫切的要求。1.2 电子密码锁的背景随着社会科技的进步,锁已发展到了密码锁、磁性锁、电子锁、激光锁、声控锁等等。在传统钥匙的基础上,加了一组或多组密码,不同声音,不同磁场,不同声波,不同光束光波,不同图像。(如指纹、眼底视网膜等)来控制锁的开启。从而大大提高了锁的安全性,使不法之徒无从下手,人们也就能对自身财产安全有了更多的保障。当今安全信息系统应用越来越广泛,特别在保护机密、维护隐私和财产保护方面起到重大作用,而基于电子密码锁的安全系统是其中的组成部分,因此研究它具有重大的现实意义。1.3 电子锁设计的意义的本设计特点单片机,亦称单片微电脑或单片微型计算机。它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口 (I/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。 计算机的产生加快了人类改造世界的步伐,但是它毕竟体积大。微计算机(单片机)在这种情况下诞生了,它为我们改变了什么?纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC 卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些东西也能做,但是只能使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了,且容易升级改善。 电子锁可以在日常生活和现代办公中,住宅与办公室的安全防范、单位的文件档案、财务报表以及一些个人资料的保存等多种场合使用。大大提高了主人物资的安全性,安全可以代替老式机械锁。目前使用的密码锁种类繁多,各具特色。本文从经济实用的角度出发,采用AT89C2051单机,研制了一款具有防盗自动报警功能的电子密码锁。该密码锁设计方法合理,简单易行,成本低,符合住宅、办公室用锁要求,具有一定的推广价值。(1)系统设置4位密码,密码通过键盘输入,若密码正确,则将锁打开。(2)密码由用户自己设定,在开锁状态下,用户可自行修改密码。(3)具有自动报警功能。自动报警分现场报警和远程报警两种。现场报警由扬声器发出报警声。(4)两种情况下可报警:一是密码输入错误3次,则报警;二是非正常开门,如破门而入的情况,可通过系统的红外监视装置监测,同时报警,保证了系统的安全性。系统工作时,用户通过按键输入4位密码,单片机将输入密码与设定密码进行比较,若密码正确,则发出开锁信号,将门打开,系统不报警;若密码不正确,则有相应的指示灯闪动,并要求重新输入密码,重新输入密码的次数不能超过3次,若3次输入的密码都不正确,则发出报警信号。2.系统设计2.1系统总设计结构图数码管及LED灯显示单片机时钟电路单片机AT89C51密码输入设备开锁机构图2-1系统总设计结构图 本设计由主控芯片51单片机,单片机时钟电路,键盘,和开锁电路组成。单片负责控制整个系统的执行过程。2.2开锁机构设计通过单片机送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。本设计通过P3.0接一个3极管驱动继电器打开电磁阀线圈实现开关门。AT89C51电磁阀开锁驱动电路密码正确图22 密码锁开锁机构示意图当用户输入的密码正确而且是在规定的时间及次数输入之内,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。2.2.1主控芯片AT89C51单片机的简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。主要特性: 与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环 数据保留时间:10年 全静态工作:0Hz-24MHz 三级程序存储器锁定 1288位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。 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禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。图2-3 AT89C51芯片图3系统硬件设计3.1键盘设计为了使本电路更加简洁,本电子锁的密码锁采用简单易学但不为多数人知道的摩期码作为电路的密码输入。键盘硬件设备只需要一个按即可实现密码的输入与更改。关于摩斯码的介绍如下:摩斯密码是20世纪使用较为广泛的电报传输使用的一种编码。电报最早是由美国的摩尔斯在1844年发明的,故也被叫做摩尔斯电码。它由一个输入按键在输入时按住的间隔时间长短组成来决定你的输入:短促的点信号 ,读 嘀 (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. . . .T_ 6_ . . . .I. .U. . _7_ _ . . .J. _ _ _V. . . _ 8_ _ _ . .K_ . _ W. _ _9_ _ _ _ .L. _ . .X_ . . _0_ _ _ _ _ 注:摩斯码用在数字电路中“”表示1,“.”表示0,如0翻译成二进制数为11111H,十六进制数为1FH。本电路设计只取09数字作密码有效数字,如果输入其它字符则无效。表32 本设计用到的数字的摩斯码和二进制对照数字0123456789摩斯码111110111100111000110000100000100001100011100111102进制111110111100111000110000100000100001100011100111103.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外接蜂鸣器,当INT0被置0时,蜂鸣器发出声音;P0口外接发光二极管用作系统工作状态提示。3.2.4 其它引脚 ALE引脚悬空,复位引脚接到复位电路、VCC接电源、VSS接地、EA接电源3.3电路图的绘制用PROTEL 99 SE绘制的完整电路图如下:图33 系统电路图八段数码管显示你的摩斯按键是否正确对应你要输入的数字密码。由于采取上电设置密码的编程方法复位键即密码修改键设置在门后,要打开门才能修改密码。设置密码后若输入密码不对的前两次5秒报警,最后一次10分钟报警,摩斯按发错误除外(但有两秒报警,并且须全部密码重新输入)。本电路设置四位密码,由于每位数字键均由五位摩斯码构成则要输入20次摩斯码键!p0.0(绿色)“滴”显示,p0.2(黄色)“嗒”音显示,p0.4(红色)摩斯码按法错误或密码错误,p0.6(蓝色)表示该电路已设置了密码,等待输入密码进行比较。PROTEL绘制的PCB板:图34 系统PCB板PROTEL系统3D仿真:图35 系统3D仿真模型3.3.1 PROTEL 99 SE简介:Protel99SE是Protel公司近10年来致力于Windows平台开发的最新结晶,能实现从电学概念设计到输出物理生产数据,以及这之间的所有分析、验证和设计数据管理。因而今天的Protel最新产品已不是单纯 的PCB(印制电路板)设计工具,而是一个系统工具,覆盖了以PCB为核心的整个物理设计。 最新版本的Protel软件可以毫无障碍地读Orcad、Pads、Accel(PCAD)等知名EDA公司设计文件,以便用户顺利过渡到新的EDA平台。Protel99 SE共分5个模块,分别是原理图设计、PCB设计(包含信号完整性分析)、自动布线器、原理图混合信号仿真、PLD设计。 以下介绍一些Protel99SE的部分最新功能:可生成30多种格式的电气连接网络表;强大的全局编辑功能;在原理图中选择一级器件,PCB中同样的器件也将被选中; 同时运行原理图和PCB,在打开的原理图和PCB图间允许双向交叉查找元器件、引脚、网络既可以进行正向注释元器件标号(由原理图到PCB),也可以进行反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性;满足国际化设计要求(包括国标标题栏输出,GB4728国标库); * 方便易用的数模混合仿真(兼容SPICE 3f5);支持用CUPL语言和原理图设计PLD,生成标准的JED下载文件; * PCB可设计32个信号层,16个电源-地层和16个机加工层;强大的“规则驱动”设计环境,符合在线的和批处理的设计规则检查; 智能覆铜功能,覆铀可以自动重铺; 提供大量的工业化标准电路板做为设计模版; 放置汉字功能; 可以输入和输出DXF、DWG格式文件,实现和AutoCAD等软件的数据交换; 智能封装导航(对于建立复杂的PGA、BGA封装很有用); 方便的打印预览功能,不用修改PCB文件就可以直接控制打印结果; 独特的3D显示可以在制板之前看到装配事物的效果; 强大的CAM处理使您轻松实现输出光绘文件、材料清单、钻孔文件、贴片机文件、测试点报告等; 经过充分验证的传输线特性和仿真精确计算的算法,信号完整性分析直接从PCB启动; 反射和串扰仿真的波形显示结果与便利的测量工具相结合。注:由于资金和设备限制,以上PCB电路设计过程属于理论化,只作为电路板设计的一个流程。本电路的实物模型,本人还是采用万用电路板来完成。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块经采购继电器没有买到,所以原电路的输出电路3极管的继电器改为LED灯,只要电路IC经密码输入后能点亮LED灯则电路设计要求达到。3.5电路焊接 1.焊接所需工具工具名称数量焊烙铁50W1只带松香焊丝若干万用表一个表34焊接所需工具电路焊接实物图如下:图36 电路正面接线实物图图37 电路背面接线实物图4.软件设计4.1 系统软件设计整体思路一个应用系统要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。甚至有些必须采用很复杂的硬件电路才能完成的工作,用软件编程有时会变得很简单,如数字滤波,信号处理等。因此充分利用其内部丰富的硬件资源和软件资源,采用与C51系列单片机相对应的51汇编语言和结构化程序设计方法进行软件编程。程序设计语言有三种:机器语言、汇编语言和高级语言。机器语言是机器唯一能“懂”的语言,用汇编语言或高级语言编写的程序(称为源程序)最终都必须翻译成机器语言的程序(成为目标程序),计算机才能“看懂”,然后逐一执行。高级语言是面向问题和计算过程的语言,它可通过于各种不同的计算机,用户编程时不必仔细了解所用的计算机的具体性能与指令系统,而且语句的功能强,常常一个语句已相当于很多条计算机指令,于是用高级语言编制程序的速度比较快,也便于学习和交流,但是本系统却选用了汇编语言。原因在于,本系统是编制程序工作量不大、规模较小的单片机微控制系统,使用汇编语言可以不用像高级语言那样占用较多的存储空间,适合于存储容量较小的系统。4.2系统软件设计流程图糸统返回否是密码错误主人是否要修改密码开门输入正确密码保存后糸统返回输入新密码报警输入错误满3次输入错误未满3次密码比较开始系统唤醒上电密码输入完毕系统等待密码输入 图41 系统程序设计结构图5 程序调试把也写好的汇编语言程序的载入软件调试工具,检查软件是否有设法错误,再根据软件提示对本程序进行修改,直到没有错误再生成单片机能运行的机器码,再用51开发板或其它单怎机写入工具把机器码写入单片机进行实际的程序调试,根据实际情况再对程序的不足加以修改,直到满足设计要求。5.1 程序调试用到的软件及工具调试本程序需要用到KEIL C51,及51开发板一块及其配套的下载烧录软件5.2 KEIL C51简介Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C来开发,体会更加深刻。Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。 C51工具包的整体结构: uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。5.3 调试过程 首先打开KEIL C51主程序,新建工程,新建文本框写入程序,保存,检查是否有语法错误,经反复检查无误后汇编,生成51单片机可执行的HEX文件。然后用51开发板相匹配的烧录软件把HEX文件写入单片机。图51 keil c51调试介面图52 单片机烧录软件介面6 设计总结与展望实践是检验真理的唯一标准,当然也是检验学习成果的标准。在经过一段时间的学习之后,我们需要了解自己的所学应该如何应用在实践中,因为任何知识都源于实践,归于实践,所以要将所学的知识在实践中来检验。在做毕业设计期间,在老师的指导下,通过自身的不断努力,无论是思想上,学习上,都取得了长足的发展和巨大的收获,现将工作总结如下:思想上,学会了用科学的精神去解决问题。很多事情看起来是很简单的问题,但实际做起来去会发现有许多奥妙!这是因为其中蕴含着许多科学的问题。运用科学的方法去解决问题,这是我这次实训给我带来的思想上的改变。学习上,使自已在大学所以的知识在这次得到实践,学到一些书本上无法学到的经验,对电子元件有了进一步的认识。电子锁是信息化时代发展的产物,应时而生,我相信随着科技的不断发展,将来的电子锁一定更加完美,更加人性化,更加便宜,更加安全。致 谢在本次论文设计过程中,刘老师对该论文从选题,构思到最后定稿的各个环节给予细心指引与教导,使我得以最终完成毕业论文设计,在此表示衷心的感谢。此外在学习中,老师严谨的治学态度、丰富渊博的知识、敏锐的学术思维、精益求精的工作态度以及侮人不倦的师者风范是我终生学习的楷模。另外在完成毕业设计的过程中,还得到众多朋友的关心支持和帮助,在此,谨向老师同学和朋友致以衷心的感谢和崇高的敬意!最后,我要向百忙之中抽时间对本文进行审阅,评议和参与本人论文答辩的各位老师表示感谢参考文献1 李朝青.单片机原理及接口技术(简明修订版)M.北京:北京航空航天大学出版社,19982 李全利.单片机原理及接口技术M.高等教育出版社,20033 PROTEL99 SE电路设计与制板M.机械工业出版社,20074 杨将新,李华军,刘到骏等.单片机程序设计及应用(从基础到实践)J电子工业出版社,20065 Steven F.Barrett.Daneil J.Pack.Embedded SystemM.北京:电子工业出版社,20066 周立功.LPC900系列Flash单片机应用技术J.北京航空航天大学出版社, 20047 黄智伟.全国大学生电子设计竞赛训练教程M.北京:电子工业出版社, 2005附录本设计的程序:hc0 equ 4ah ;延时缓存区hc1 equ 4bhhc2 equ 4chhc3 equ 4dhhc4 equ 4ehxs_0 equ 50h ;显示缓存区xs_1 equ 51hxs_2 equ 52hxs_3 equ 53hxs_4 equ 54hxs_5 equ 55hxs_6 equ 56hxs_7 equ 57hxs_8 equ 58hxs_9 equ 59hps1 equ 5ah ;设置密码缓存区ps2 equ 5bhps3 equ 5chps4 equ 5dhmmbz equ 5fh ;密码输入次数at1 equ 60h ;输入密码缓存区at2 equ 61hat3 equ 62hat4 equ 63h ;初始化org 00hajmp main1org 30hmain1: mov ps1 ,#00h mov ps2 ,#00h mov ps3 ,#00h mov ps4 ,#00h mov at1 ,#00h mov at2 ,#00h mov at3 ,#00h mov at4 ,#00hmain:mov xs_0 ,#1fh ;显示0的摩斯值 mov xs_1 ,#0fh ;显示1的摩斯值 mov xs_2 ,#07h ;显示2的摩斯值 mov xs_3 ,#03h ;显示3的摩斯值 mov xs_4 ,#01h ;显示4的摩斯值 mov xs_5 ,#00h ;显示5的摩斯值 mov xs_6 ,#10h ;显示6的摩斯值 mov xs_7 ,#18h ;显示7的摩斯值 mov xs_8 ,#1ch ;显示8的摩斯值 mov xs_9 ,#1eh ;显示9的摩斯值 clr p3.0 ;RXD置0 mov a ,#00h ;密码缓存 mov r2 ,#04h ;四位密码 mov r1 ,#00h mov r0 ,#ps1 mov r7 ,#05h ;摩斯次数,由于数字为5次 clr p2.7start:mov p0 ,#0ffh mov p1 ,#0ffh setb p2.4 ;按键位 jb p2.4 ,start ;2.4为1转start lcall delay500ms jb p2.4 ,startok: ;嘀的音 clr p0.0 lcall delay500ms jnb p2.4 ,daa ;是否去嗒音cun: ; setb p0.2 setb p0.0 rl a add a ,r1 ;存入一位摩斯码 djnz r7 ,yanshi ;是否够五位摩斯码 ajmp xianshiyanshi: ;输入一位摩斯码停顿1t lcall delay500ms jb p2.4 ,main ajmp okdaa: ;嗒的音 lcall delay500ms jb p2.4 ,stop setb p0.0 clr p0.2 lcall delay500ms setb p0.2 jnb p2.4 ,stop mov r1 ,#01h ajmp cunstop: ;摩斯输入错误 clr p0.4 lcall delay2s setb p0.4 ajmp maincunchu:mov r0 ,a inc r0 mov a ,#00h mov r1 ,#00h mov r7 ,#05h djnz r2 ,yanshi clr p0.6 lcall delay2s setb p0.6 ajmp shuruxianshi:cjne a ,xs_0 ,next1 ;够五位摩斯码显示0 mov p1 ,#0c0h clr p3.2 ;报警器 lcall delay1s setb p3.2 ;报警器 mov p1 ,#0ffh ajmp cunchunext1:cjne a ,xs_1 ,next2 ;够五位摩斯码显示1 mov p1 ,#0f9h clr p3.2 lcall delay1s setb p3.2 mov p0 ,#0ffh ajmp cunchunext2:cjne a ,xs_2 ,next3 ;够五位摩斯码显示2 mov p1 ,#0a4h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext3: cjne a ,xs_3 ,next4 ;够五位摩斯码显示3 mov p1 ,#0b0h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext4: cjne a ,xs_4 ,next5 ;够五位摩斯码显示4 mov p1 ,#99h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext5: cjne a ,xs_5 ,next6 ;够五位摩斯码显示5 mov p1 ,#92h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext6: cjne a ,xs_6 ,next7 ;够五位摩斯码显示6 mov p1 ,#7dh clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext7: cjne a ,xs_7 ,next8 ;够五位摩斯码显示7 mov p1 ,#0f8h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajmp cunchunext8: cjne a ,xs_8 ,next9 ;够五位摩斯码显示8 mov p1 ,#080h clr p3.2 lcall delay1s setb p3.2 mov p1 ,#0ffh ajm

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论