欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    毕业设计(论文)-基于AT89C51单片机的电子密码锁的设计.doc

    • 资源ID:3282726       资源大小:1.07MB        全文页数:27页
    • 资源格式: DOC        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    毕业设计(论文)-基于AT89C51单片机的电子密码锁的设计.doc

    四川托普信息技术职业学院 1 摘摘 要要 随着科技和人们的生活水平的提高,如何实现家庭防盗这一问题也变的尤 其的突出,传统机械锁由于构造简单,被撬事件屡见不鲜;电子锁由于其保密 性高,使用灵活性好,安全系数高,受到了广大用户的青睐。 电子锁是采取电子电路控制,以电磁铁或者卫星电机和锁体作为执行装置 的机电一体化锁具,相比传统的机械锁具,电子锁不使用金属钥匙,保密性、 精度都有很大提高。 电子锁的发明思路,源自古代发明的自动机械,例如古希腊数学家赫伦的 液压自动门,中国古代诸葛亮的木牛流马,它们以重力或蒸汽压力驱动,最广 泛的用途乃是用在古代墓道的地下机关。电子工业的诞生,使得以微小电量驱 动机械成为可能,于是有了电子锁一日千里的跃进。 本设计以单片机AT89C51作为密码锁监控装置的检测和控制核心,分为主机 控制和从机执行机构(本设重点介绍主机设计) ,实现钥匙信息在主机上的初步 认证注册、密码信息的加密、钥匙丢失报废等功能。根据51单片机之间的串行 通信原理,这便于对密码信息的随机加密和保护。而且采用键盘输入的电子密 码锁具有较高的优势。采用数字信号编码和二次调制方式,不仅可以实现多路 信息的控制,提高信号传输的抗干扰性,减少错误动作,而且功率消耗低;反 应速度快、传输效率高、工作稳定可靠等。软件设计采用自上而下的模块化设 计思想,以使系统朝着分布式、小型化方向发展,增强系统的可扩展性和运行 的稳定性。测试结果表明,本系统各项功能已达到本设计的所有要求。 基于以上思路,本次设计使用 ATMEL 公司的 AT89C51 实现一基于单片机 的电子密码锁的设计,其主要具有如下功能: (1) 设置 6 位密码,密码通过键盘输入,若密码正确,则将锁打开。 (2) 报警、锁定键盘功能。密码输入错误数码显示器会出现错误提示,若 密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。 电子密码锁的设计主要由三部分组成:4×4 矩阵键盘接口电路、密码锁的 控制电路、输出八段显示电路。另外系统还有 LED 提示灯,报警蜂鸣器等。 密码锁设计的关键问题是实现密码的输入、开锁、报警等功能。 关键词:单片机;密码锁;电子锁。 四川托普信息技术职业学院 2 目录目录 第第 1 1 章章 绪论绪论4 1.11.1 引言引言4 1.2 电子密码锁的背景.5 1.3 电子锁设计的意义的本设计特点.5 1.4 电子密码锁的发展趋势6 第第 2 2 章章 系统总体设计与原理系统总体设计与原理7 2.12.1 系统结构图系统结构图7 2.2 系统组成8 2.3 系统原理分析8 第第 3 3 章章 系统硬件电设计系统硬件电设计9 3.1 主控芯片 AT89C51 单片机的简介9 3.2 晶振时钟电路12 3.3 复位电路设计.12 3.4 4×4 矩阵键盘.12 3.5 发光二极管 LED.13 3.6 蜂鸣器14 3.7 串口引脚功能介绍.14 3.8 其它引脚.15 3.9 电路图的绘制15 图图 3 39 9 完整电路图完整电路图15 3.10PROTEL 99 SE 简介:.16 3.11 使用到的元器件列表17 第第 4 4 章章 软件程序设计软件程序设计18 4.2 软件设计流程图.18 4.2 具体功能软件实施19 第第 5 章章 系统调试系统调试20 5.1 程序调试用到的软件及工具20 5.2 KEIL C51 简介.20 5.3 调试过程21 第第 6 章章 心得体会心得体会23 第第 7 章章 参考文献参考文献24 附附 录录25 1.1 电子密码锁 PCB.25 1.2 源程序清单25 四川托普信息技术职业学院 3 第第 1 1 章章 绪论绪论 1.1 引言 随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出, 传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性 高,使用灵活性好,安全系数高,受到了广大用户的喜爱。锁是置于可启闭的 器物上,用以关住某个确定的空间范围或某种器具的,必须以钥匙或暗码打开的 扣件。锁具发展到现在已有若干年的历史了,人们对它的结构、机理也研究得 很透彻,因此,不用钥匙就能打开的方法和工具也层出不穷。现代人类文明社 会里,由于社会中各种矛盾冲突十分剧烈,人们的思想道德观念,价值观念, 文化修养水平等差异,群众中良莠不齐,善良的人们能够自觉规范自已的行为, “非礼不为” ,虽无钥匙亦不会乱闯。然而,那些毫无道德观念的盗贼却想方设 法利用高科技手段撬门开锁,使广大居民防不胜防。 为什么会出现这种情况呢?因为传统锁具都存在致命的弱点: 第一、 锁芯采用常见的铜、铝、锌等材料,抵抗不了强力破坏; 第二、 锁具制作工艺,技术落后,无法阻止技术手段的开启。 目前,市场上很多国内外的锁具,实际上都不具备真正的防盗功能。在惯 偷面前,两根钢丝或几件简单的工具就可以把这些锁打开,有的惯偷甚至公开 扬言:“没有我打不开的锁。 ”其实,不是他们多高明,而是一般锁具技术原理 太过简单。面对这一残酷的现状,新时代提出了锁具必须革命的迫切的要求。 1.2 电子密码锁的背景 随着社会科技的进步,锁已发展到了密码锁、磁性锁、电子锁、激光锁、 声控锁等等。在传统钥匙的基础上,加了一组或多组密码,不同声音,不同磁 场,不同声波,不同光束光波,不同图像。 (如指纹、眼底视网膜等)来控制锁 的开启。从而大大提高了锁的安全性,使不法之徒无从下手,人们也就能对自 身财产安全有了更多的保障。当今安全信息系统应用越来越广泛,特别在保护 机密、维护隐私和财产保护方面起到重大作用,而基于电子密码锁的安全系统 是其中的组成部分,因此研究它具有重大的现实意义。 四川托普信息技术职业学院 4 1.3 电子锁设计的意义的本设计特点 单片机,亦称单片微电脑或单片微型计算机。它是把中央处理器(CPU) 、 随机存取存储器(RAM) 、只读存储器(ROM) 、输入/输出端口 (I/0)等主要计 算机功能部件都集成在一块集成电路芯片上的微型计算机。 计算机的产生加快 了人类改造世界的步伐,但是它毕竟体积大。微计算机(单片机)在这种情况 下诞生了,它为我们改变了什么?纵观我们现在生活的各个领域,从导弹的导 航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业 自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能 IC 卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些东西也能做, 但是只能使用复杂的模拟电路,然而这样做出来的产品不仅体积大,而且成本 高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。 在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机 外围接一点简单的接口电路,核心部分只是由人为的写入程序来完成。这样产 品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了,且容易 升级改善。 电子锁可以在日常生活和现代办公中,住宅与办公室的安全防范、单位的 文件档案、财务报表以及一些个人资料的保存等多种场合使用。大大提高了主 人物资的安全性,安全可以代替老式机械锁。目前使用的密码锁种类繁多,各 具特色。本文从经济实用的角度出发,采用 AT89C2051 单机,研制了一款具有 防盗自动报警功能的电子密码锁。该密码锁设计方法合理,简单易行,成本低, 符合住宅、办公室用锁要求,具有一定的推广价值。 (1)系统设置 6 位密码,密码通过键盘输入,若密码正确,则将锁打开。 (2)密码由用户自己设定,在开锁状态下,指示灯被点亮。 (3)具有自动报警功能,报警由蜂鸣器发出报警声。 (4)两种情况下可报警:一是密码输入错误 3 次,则报警;二是非正常开门, 如破门而入的情况,可通过系统的红外监视装置监测,同时报警,保证了系统 的安全性。系统工作时,用户通过按键输入 6 位密码,单片机将输入密码与设 定密码进行比较,若密码正确,则发出开锁信号,将门打开,系统不报警;若 密码不正确,则有相应的指示灯不被点亮,并要求重新输入密码,重新输入密 四川托普信息技术职业学院 5 码的次数不能超过 3 次,若 3 次输入的密码都不正确,则发出报警信号。 1.4 电子密码锁的发展趋势 从目前的技术水准和市场认可程度看,使用最为广泛的是键盘式电子密码 锁,该产品主要应用于保险箱、保险柜和金库,还有一部分应用于保管箱和运 钞车。键盘式电子密码在键盘上输入,与打电话差不多,因而易于掌握,其突 出优点是“密码”是记在被授权人脑子里的数字和字符,既准确又可靠,不会丢 失(除了忘记),难以被窃(除非自己泄露)。但是密码不能太简单,太简单 了就容易被他人在键盘上试探出来,或者可能被旁观者窥测出来,造成保密性 不足。当然,密码又不能太复杂,太复杂了可能自己都胡涂了,或者输入密码 操作成功率低,造成使用不便。因此,为了发扬优点、克服弱点,键盘式电子 密码也在不断发展中,如“任意设定密码”技术使得被授权人可以根据自己的需 要或喜好设定密码,常用常新;而“自动更改密码”技术使得本次输入的密码将 自动更改成下次应输入的密码,更改的规律不为他人所知,因而不怕旁观者窥 测;独出心裁的“键盘乱序显示”技术使得键盘上的固定键位每次显示出的字符 不固定,并且显示的窄小角度只能由操作者正面看得到,因而即使旁观者看见 操作动作也难以窥测出密码;“多重密码设定”技术使得单组密码不一定有效, 适合多人分权使用,需要输入两组以上的密码才被认可,大大提高了保密性, 如果限定输入这些密码的先后顺序或时间区段,则保密性还可提高。在输入密 码的过程中,为了限制试探密码的企图,通常输入错误码若干次或若干时间内 输入不正确,即“封锁”键盘,不再接受输入操作。总之,尽管新式电子防盗锁 层出不穷,但键盘式电子密码防盗锁不仅在市场上居于主流地位,而且,还经 常作为其它类型电子防盗锁的辅助输入手段。 四川托普信息技术职业学院 6 第第 2 2 章章 系统总体设计与原理系统总体设计与原理 2.1 系统结构图 2.2 系统组成 如图 21 所示系统主要由 AT89C51(51 系列)、数码管、蜂鸣器、LED、4×4 矩阵键盘、复位电路等组成 2.3 系统原理分析 (1)系统工作原理分析:使用 AT59C51 单片机、4×4 矩阵键盘、LED、 蜂鸣器等。矩阵键盘分别为(S1-S9)1、2、3、4、5、6、7、8、9,S10 为数字 “0”,(S12S16)对应的按键值分别为 1216。 (2)根据按键值,指定每个按键对应的输入数字和信息。 数码管 电源 21 4x4 键盘 复位电路 LED AT98C51 振荡电路 蜂鸣器 四川托普信息技术职业学院 7 如图 23 所示为每个按键代表的数字和输入信息。当键盘扫描程序扫描到 S10 键被按下时,将其代表的按键值“0”通知 CPU,CPU 根据事先规定,就会 知道输入的数字是“0” (3)输入数字和密码对比。 先将设定的密码用一个数组保存,本例的密码 “123456”和“OK”确认信 息可用如下数组保存: Unsigned char D=1,2,3,4,5,6;/ 设定密码 在主程序接受到数字和信息后,通过逐位对比的方法进行判断。输入的数字 经对比正确时,程序才继续顺序执行,否则,程序拒绝执行。 系统开始显示“INPUT”提示输入密码;输入密码时,LED 显示电路显示 为“-”,当密码输入完毕按下 OK 键时,对输入密码与设定的密码进行比较, 若密码正确则发光二极管被点亮锁打开;若密码不正确,若连续 3 次输入不正 确,则发出警报声同时锁定键盘。 为了防止恶意尝试,系统才用若连续输入 3 次错误密码则发出报警声,且 锁定键盘,可以提高系统的安全系数,同时也能够保护合法用户的正常使用。 S4 S3 S2 S1 4 3 2 1 S8 S7 S6 S5 8 7 6 5 S12 S11 S10 S9 12 OK 0 9 S16 S15 S14 S13 16 15 14 13 图 23 矩阵键盘中每个按 键代表的数字和输入信息 四川托普信息技术职业学院 8 第第 3 3 章章 系统硬件电设计系统硬件电设计 3.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 三级程序存储器锁定 128×8 位内部 RAM 32 可编程 I/O 线 两个 16 位定时器/计数器 5 个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 管脚说明: VCC:供电电压。 四川托普信息技术职业学院 9 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 脚两个机器周期的 四川托普信息技术职业学院 10 高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存 地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可 用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据 存储器时,将跳过一个 ALE 脉冲。另外,该引脚被略微拉高。如果微处理器在 外部执行状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间, 每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的 /PSEN 信号将不出现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储器(0000H- FFFFH) ,不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3.2 晶振时钟电路 单片机 XIAL1 和 XIAL2 分别接 30PF 的电容,中间再并个 12MHZ 的晶振,形 成单片机的晶振电路。 图 32 晶振电路 四川托普信息技术职业学院 11 3.3 复位电路设计 图 33 复位电路 3.4 4×4 矩阵键盘 如图 32 所示,本系统采用 4×4 矩阵键盘,16 个按键分为输入数字键: 0、1、2、3、4、5、6、7、8、9、12、13、14、15、16;功能键 OK。矩阵键 盘。 图 34 4×4 矩阵键盘 四川托普信息技术职业学院 12 3.5发光二极管 LED 图 35 由于 LED 使用 P0 口驱动要加上上拉电阻如图 35。 3.6 蜂鸣器 图 36 由于蜂鸣器使用 P0 口驱动要加上上拉电阻如图 36。 四川托普信息技术职业学院 13 3.7 串口引脚功能介绍 单片的 P0 口外接数码管,作为密码输入显示器;RD 外接蜂鸣器,当 RD 被置 0 时,蜂鸣器发出声音;RXD 口外接发光二极管用作系统工作状态提示。 3.8 其它引脚 ALE 引脚悬空,复位引脚接到复位电路、VCC 接电源、VSS 接地、EA 接 电源 3.9 电路图的绘制 用PROTEL 99 SE绘制的完整电路图如下: P1.0 1 P1.2 2 P1.3 3 P1.4 4 P1.5 5 P1.6 6 P1.7 7 P1.8 8 RST 9 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.5/T1 15 P3.6/WR 16 P3.7/RD 17 XTAL2 18 XTAL1 19 GND 20 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 P2.7/A15 28 PSEN 29 ALE 30 EA 31 P0.7/AD7 32 P0.6/AD6 33 P0.5/AD5 34 P0.4/AD4 35 P0.3/AD3 36 P0.2/AD2 37 P0.1/AD1 38 P0.0/AD0 39 VCC 40 U1 U1 S1 SW-PB S5 SW-PB S6 SW-PB S7 SW-PB S2 SW-PB S8 SW-PB S9 SW-PB S10 SW-PB S3 SW-PB S11 SW-PB S12 SW-PB S13 SW-PB S4 SW-PB S14 SW-PB S15 SW-PB S16 SW-PB R1 RES2 Y1 CRYSTAL D1 LED +5V C1 CAP C2 CAP R2RES2 P26 C3 ELECTRO1 R4 RES2 VCC GND GND +5V LS1 SPEAKER GND Q2 PNP C4 CAP GND R3 RES2 VCC R5 RES2 P00 P01 P02 P03 P04 P05 P06 P00 P01 P02 P03 P04 P05 P06 1 2 JP1 HEADER 2 VCC GND GND Q1 PNP P26 P07 P07 VCC a bf c g d e DPY 1 2 3 4 5 6 7 a b c d e f g 8 dp dp 10 10 9 9 DS? DPY_7-SEG_DP 四川托普信息技术职业学院 14 图 39 完整电路图 3.10PROTEL 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图间允许双向交叉 查找元器件、引脚、网络 四川托普信息技术职业学院 15 既可以进行正向注释元器件标号(由原理图到PCB),也可以进行 反向注释(由PCB到原理图),以保持电气原理图和PCB在设计上的一致性; 满足国际化设计要求(包括国标标题栏输出,GB4728国标库); * 方便易用的数模混合仿真(兼容SPICE 3f5); 支持用CUPL语言和原理图设计PLD,生成标准的JED下载文件; * PCB可设计32个信号层,16个电源-地层和16个机加工层; 强大的“规则驱动”设计环境,符合在线的和批处理的设计规则 检查; 智能覆铜功能,覆铀可以自动重铺; 提供大量的工业化标准电路板做为设计模版; 放置汉字功能; 可以输入和输出DXF、DWG格式文件,实现和AutoCAD等软件的数据 交换; 智能封装导航(对于建立复杂的PGA、BGA封装很有用); 方便的打印预览功能,不用修改PCB文件就可以直接控制打印结果; 独特的3D显示可以在制板之前看到装配事物的效果; 强大的CAM处理使您轻松实现输出光绘文件、材料清单、钻孔文件、 贴片机文件、测试点报告等; 经过充分验证的传输线特性和仿真精确计算的算法,信号完整性 分析直接从PCB启动; 反射和串扰仿真的波形显示结果与便利的测量工具相结合。 注:由于资金和设备限制,以上PCB电路设计过程属于理论化,只作为电路板 设计的一个流程。本电路的实物模型,本人还是采用万用电路板来完成。 3.11 使用到的元器件列表 名称型号数量 电源插座两芯 1 蜂鸣器 1 1 位数码管(共阳) 1 四川托普信息技术职业学院 16 电源 5V1 发光二极管0805 红 1 发光二极管0805 绿 1 9013(NPN)1 9012(PNP) 2 电容 0.1uF08055 电阻 10K1 微动开关 12 自锁开关用于管理电源 1 单片机紧锁座 DIP401 晶振 11.0592MHZ1 电容 33pF08052 电容 10uF1 电阻 1K 8052 电阻 10K1 电阻 330R08051 电位器10K 改变输入电压,为可变电阻 1 STC89C52DIP401 图 310 第第 4 4 章章 软件程序设计软件程序设计 本系统程序部分使用 C 语言编写,C 语言是一种高级程序设计语言,它的 优点是简洁明了、可移植性高。 主要完成,开始时数码管显示提示“INPUT”输入密码。输入密码后按下 确认键,系统会将所输入与系统密码进行比对。若输入密码正确则显示 “PASS”开锁。然后可以选择上锁或者修改密码。 开锁后,按下上锁“LOCK”键,系统上锁并返回;选择修改密码则可以 对系统进行修改密码操作。在修改密码前要输入正确旧的密码。正确输入旧密 码之后,会有提示输入两次新密码,若两次密码一致,则修改成功。期间操作 出现失误,系统会返回初始状态,操作错误超过 3 次,系统会锁定键盘,并报 警用以防止恶意试探密码。 4.2 软件设计流程图 四川托普信息技术职业学院 17 主程序开始 正确 密码正确与 否 I/O 口初始化,LCD 初始 化 执行主控循环 ; 蜂鸣器产生响警示。指示灯 LED 亮。 错误 图 41 4.2 具体功能软件实施 ·4.2.1 开始等待流程 系统开始一直显示提示“INPUT”,并判断有否按键,当有键按下跳出等待。 四川托普信息技术职业学院 18 图 42 ·4.2.2 密码检查功能 本系统使用数组 PASSWORD6存储密码,系统初始化对数组负值 PASSWORD61,2,3,4,5,6相当于键盘上的 1,2,3,4,5,6。输入密码 的时候,先将输入的每一位密码分别放置在数组 check6中,然后再将 check6 与 PASSWORD6的每一位分别对照。若每一位都相等,密码检查通过。 四川托普信息技术职业学院 19 43 第第 5 5 章章 系统调试系统调试 5.1 程序调试用到的软件及工具 调试本程序需要用到 KEIL C51,及 51 开发板一块及其配套的下载烧录软 件 5.2 KEIL C51 简介 Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软 件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有 明显的优势,因而易学易用。用过汇编语言后再使用 C 来开发,体会更加深刻。 Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil 四川托普信息技术职业学院 20 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 文件写入单片机。 图 53 keil c51 调试介面 图 52 单片机烧录软件介面 四川托普信息技术职业学院 21 本次调试采用 Proeus 软件仿真。首先设计电子密码锁的源程序,源程序经过汇 编后,生成的目标文件经过仿真调试。 依次按下 1,2,3,4,5,6 后,按下 OK 键后,二极管亮,表示密码正确 开门。如图 51 图 51 密码正确开门 四川托普信息技术职业学院 22 第第 6 6 章章 心得体会心得体会 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题, 锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着 科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的 开发技术是十分重要的。 回顾起此次单片机课程设计,至今我仍感慨颇多,的确,从选题到定稿, 从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到 很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多 在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结 合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相 结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动 手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重, 这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现 了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固, 对单片机汇编语言掌握得不好,通过这次课程设计之后,一定把以前所学过的 知识重新温故。 这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,在老师和 同学的帮助下,终于游逆而解。非常感谢! 四川托普信息技术职业学院 23 第第 7 7 章章 参考文献参考文献 1单片机原理及及应用王迎旭编 机械工业出版社 2001 2单片机应用程序设计技术 周航慈 著 北京航空航天大学出版社 3 黄志君,高峰,王建.轮胎压力监测系统J.广西工学院学报.2006(4): 912. 4 单春贤,韩钧等. 一种集成度较高的轮胎压力监测系统设计J. 拖拉 机与农用运输车,2006(6):3338. 5张洪润 单片机应用技术教程 北京:清华大学出版社,1997 6沙占友 A Study of the Control System with Intelligent Temperature Sensors.ICEMI 第四届国际电子测量学术会议论文集,电子测量 与一起学报.第 13 卷,1998(8) ,ISTP 收录 7 The Intel Microprocessors Architecture,Programming,and Interfacing .高等教育出版社(影印版),2001 20-081201-05-01 8 JONATHAN D. NASH, DOUGLAS R. CALDWELL, MICHAEL J. ZELMAN, AND JAMES N. MOUM A Thermocouple Probe for High-Speed Temperature Measurement in the Ocean. Manuscript received 18 August 1997, in final form 9 November 1998:1447-1449. 9OMEGA Engineering Technical Reference.Thermocouple Home Page http:/www.omega.com/prodinfo/ThermocoupleSensor.html. 10 Using Thermocouple Sensors Cryogenic Control Systems, Inc. http:/www.cryocon.com/CCApplNotes/ThermoApps.pdf. 四川托普信息技术职业学院 24 附附 录录 1.1 电子密码锁 PCB 1.2 源程序清单 四川托普信息技术职业学院 25 矩阵式键盘实现的电子密码锁 #include /包含 51 单片机寄存器定义的头文件 sbit P14=P14; /将 P14 位定义为 P1.4 引脚 sbit P15=P15; /将 P15 位定义为 P1.5 引脚 sbit P16=P16; /将 P16 位定义为 P1.6 引脚 sbit P17=P17; /将 P17 位定义为 P1.7 引脚 sbit sound=P37; /将 sound 位定义为 P3.7 unsigned char keyval; /储存按键值 /* 函数功能:延时输出音频 */ void delay(void) unsigned char i; for(i=0;i200;i+) ; /* 函数功能:软件延时子程序 */ void delay20ms(void) unsigned char i,j; for(i=0;i100;i+) for(j=0;j60;j+) ; /* 函数功能:主函数 */ void main(void) unsigned char D =0,8,0,8,7,4,11; /设定密码 EA=1; /开总中断 ET0=1; /定时器 T0 中断允许 TMOD=0x01; /使用定时器 T0 的模式 1 TH0=(65536-500)/256; /定时器 T0 的高 8 位赋初值 TL0=(65536-500)%256; /定时器 T0 的高 8 位赋初值 TR0=1; /启动定时器 T0 keyval=0xff; /按键值初始化 while(keyval!=D0) /第一位密码输入不正确,等待 ; 四川托普信息技术职业学院 26 while(keyval!=D1) /第二位密码输入不正确,等待 ; while(keyval!=D2) /第三位密码输入不正确,等待 ; while(keyval!=D3) /第四位密码输入不正确,等待 ; while(keyval!=D4) /第五位密码输入不正确,等待 ; while(keyval!=D5) /第六位密码输入不正确,等待 ; while(keyval!=D6) /没有输入“OK” ,等待 ; P3=0xfe; /P3.0 引脚输出低电平,点亮 LED /* 函数功能:定时器 0 的中断服务子程序,进行键盘扫描,判断键位 */ void time0_interserve(void) interrupt 1 using 1 /定时器 T0 的中断编号为 1,使用第一 组寄存器 unsigned char i; TR0=0; /关闭定时器 T0 P1=0xf0; /所有行线置为低电平“0” ,所有列线置为高电平“1” if(P1 /延时一段时间、软件消抖 if(P1 /第一行置为低电平“0” (P1.0 输出低电平“0” ) if(P14=0) /如果检测到接 P1.4 引脚的列线为低电平“0” keyval=1; /可判断是 S1 键被按下 if(P15=0)

    注意事项

    本文(毕业设计(论文)-基于AT89C51单片机的电子密码锁的设计.doc)为本站会员(李主任)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开