毕业设计20北京邮电大学单片机小学期实验报告-电子密码锁.doc
毕业设计20北京邮电大学单片机小学期实验报告-电子密码锁
收藏
资源目录
压缩包内文档预览:
编号:546313
类型:共享资源
大小:123.66KB
格式:ZIP
上传时间:2015-12-01
上传人:QQ28****1120
认证信息
个人认证
孙**(实名认证)
辽宁
IP属地:辽宁
6
积分
- 关 键 词:
-
电气电子毕业设计论文
- 资源描述:
-
毕业设计20北京邮电大学单片机小学期实验报告-电子密码锁,电气电子毕业设计论文
- 内容简介:
-
电子密码锁 07 小小 学学 期期 单单 片片 机机 实实 验验 设设 计计 报报 告告 基于单片机的电子密码锁 nts电子密码锁 引言 随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲 睐。 实验 摘要 本系统由单片机系统、矩阵键盘、 LCD 显示和报警系统组成。系统能完成开锁、超次锁定、超次报警、修改用户密码基本的密码锁的功能。除上述基本的密码锁功能外,还具有掉电存储、声光提示等功能,依据实际的情况还可以添加遥控功能。本系统成本低廉,功能实用 。 关键词: 单片机, 16F877,电子密码锁, EEPROM Abstract This paper introduces the features of PIC16F877 single-chip-computer and its application in electronic secure-lock. This system bases on PIC16F877 as a micro-controller and consists of input and output modules. The functions of this system include locking-unlocking, alarming when excess of entering, reentering password, locking keyboard when excess of entering. The characteristic of this experiment is making the best of the EEPROM module in the PIC16F877 to carry out the function of the electronic code lock. The code kept in the EEPROM will not be lost after cutting the power. Key words: Single-chip-computer; PIC16F877; Secure-lock; EEPROM 一一 .实实 验验 方方 案案 论论 证证 与与 比比 较较 nts电子密码锁 本次实验的方案我是按照宾馆里面为客人提供的存放贵重物品的密码箱来设计的,它便于操作,使用方便,安全可靠并且有着很广泛的应用。 最初的设计:密码位数由用户定义, 输入错误可删除错误字符,有一个超级管理员在用户忘记密码的情况下可以打开密码箱,密码输入 3 次错误之后锁键盘,禁止输入 3 分钟。初始密码存在寄存器中,但是后来发现重新启动之后新密码又被初始密码取代,因此在进入之程序之前应该先 将初始密码存如特定寄存器 最终的方案:密码设定为四位密码,用户必须输入四位有效字符,设有一个初试密码,通过某种手段可以恢复原场设置,用户的新密码存在 EEPROM 里面,以防掉电密码丢失。只有在开锁状态才能设置新密码。 3 次错误以后显示屏有语言提示,霹雳灯闪烁,喇叭报警。锁闭之后密码锁进入睡眠模式,以节省电耗,安开启建后激活可以输入密码开锁。 用单片机来实现电子密码锁可以 有较大的活动空间,不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级,所以我们采用后一种方案。 二二 .硬硬 件件 系系 统统 设设 计计 1.系统总体设计 2.各各 个个 模模 块块 的的 功功 能能 nts电子密码锁 输入模块 4*4 键盘 用于输入密码实现开锁闭锁功能 输出模块 LCD 液晶显示器 用于输出提示语言,显示输入密码 LED 状态指示灯 显示开锁闭锁,报警功能 喇叭 接受高低点平发出警报信号 存储模块 ROM RAM 暂存密码 EEPROM 存储密码,掉电存储 以及安全 特点 核心模块 PIC16F877 实现电子密码锁核心模块 3.各模块原理图 LCD显示模块 键盘输入模块 nts电子密码锁 LED发发 光光 管管 喇喇 叭叭 报报 警警 模模 块块 nts电子密码锁 三三 .实实 验验 内内 容容 按键设置 密码锁操作流程: 密码锁关闭状态, LED 亮黄灯,按 F 输入四位密码,按 E 比较密码,比较错误锁维持锁闭, 3 次错误后霹雳灯闪,喇叭报警;比较正确 LED 灯全亮锁开,按 C 键输入新密码,按 E 键确认,再次输入密码,按 E 键比较两次输入,比较正确存入EEPROM;比较错误重新设定密码。设定完毕按 D 键进入休眠状态锁闭亮黄灯 三 软件流程图 密码建 0 9 A F 输入四位密码 功能键 F 输入密码 E 确认输入比较密码 C 输入新密码 D 进入睡眠状态 nts电子密码锁 主程序流程 密码比较 流程 N 开始 调用初始化子程序 输入 4 位密码 与原密码相同? 开锁 改密码? 输入新密 码 再次 输入新密码 两次一致? 更改密码到 EEPROM 上锁 睡眠 Y N N Y Y 调用键盘扫描子程序 将键盘输入内容存入寄存器内 开始 nts电子密码锁 新 密码修改 流程 液晶初始化流程 键盘扫描翻译流程 重新输入 按下 C 输入新密码 存入暂存器 1 再输入一次 存入暂存器 2 比较密码 存 入 EEPROM 按下 D退出 电子锁关闭休眠 Y N 开始 关显示 设置 D E 为输出端 输入方式 清屏 送三次 30h 开始 调用键盘扫描程序 设置 B 低 D 高为输出端 调用键值翻译程序 RAM 中建立位置码表 RETURN nts电子密码锁 四四 .硬硬 件件 实实 验验 题题 目目 : 焊焊 接接 单单 片片 机机 最最 小小 系系 统统 要要 求求 : 焊焊 点点 牢牢 固固 美美 观观 , 布布 局局 整整 洁洁 合合 理理 材材 料料 : 16F877单单 片片 机机 , LED发发 光光 二二 极极 管管 , 晶晶 振振 , 电电 源源 借借 口口 , 电电 阻阻 导导 线线 若若 干干 完完 成成 情情 况况 : 一一 天天 内内 完完 成成 电电 源源 设设 计计 , 排排 版版 与与 焊焊 接接 电电 路路 板板 工工 作作 , 基基 本本 符符 合合 要要 求求 把把 霹霹 雳雳灯灯 程程 序序 下下 载载 到到 最最 小小 系系 统统 中中 能能 够够 按按 照照 预预 想想 结结 果果 闪闪 烁烁 , 成成 功功 完完 成成 , 并并 且且 没没有有 损损 坏坏 工工 具具 与与 元元 器器 件件 。 五五 .遇遇 到到 的的 问问 题题 与与 解解 决决 报警程序的霹雳灯设定时起初进入这个子程序以后就无法跳出了,造成了一个死循环 8只二极管连续不断的闪烁,从而是程序无法继续运行。后来在外层循环加入了一个用于计数的寄存器,计数 1500次之后自动跳出返回主程序,并且不断修改这个参量使得霹雳灯闪烁的时间与喇叭报警时间大概一直,完善了报警系统。 液晶进行初始化,按照液晶说明书自己写了一遍,但是还是读不进指令,后来发现在 EN端置一与清零之间需要有一段延时,不然可能导致下降延不明显,加上之后就非常顺利的进行了初始化。 液晶初始 化完毕之后,进入提示语言显示模块,编写程学不难,但是在下载到单片机之后显示时经常出现乱码,字符无法显示,程序时不时会有跑飞现象。最后调试的时候 打开特殊功能寄存器察看 PCL的nts电子密码锁 运行,发现 PCL在超过 255重新进行计数时,一般的顺序执行语句没问题,但一旦进入了查表程序,就跑飞回开头的程序单元内进行运行。 我起初是把与液晶有关的所有程序都放入了总程序的最后,以便于管理,经过修改后 把所有的查表表格放在了开头,从而所有的 显示字程序在调用 查表程序 的时候都没在出现乱码,无法显示,跑飞等错误情况。 认真地阅读了提高篇的第一张关 于 EEPROM 的读取与写入之后 ,原以为EEPROM 的读取和存储不会有太大的问题,因为读写程序和一些例子书中已经给出,照着打出来就行了。 但测试发现密码经存储后发生了变化,监控工作寄存器,发现密码由暂存寄存器往工作寄存器中转移时,数值发生了变化,这个问题很是想不通。后来发现可能是体的问题,可是书中这一块使用的也是类似的体区域。又经过一遍认真的看书,才发现体 1 的 70H 到 7FH 在其它 3 个体都有映射,在 4个体都能寻址。 直接对 EEPROM 进行读写操作并不困难,除了书上的“ 5 指令序列”不能改变外,其他的操作还是相当简单的 。除了需要改写一下体的位置外,触发沿都不用管,而且由于我们涉及的存储字单位较少,没有利用间接寻址方式循环读写数据,只是在进行加减法操作完了之后简单的读入 /写入命令即可。 在所有基本功能完成了以后,我们还想到了应该让电子锁进入节电模式,所谓节电也无非就是让电子锁进入睡眠状态,一条 sleep 语句足以。但是如何唤醒呢, 由于这个题目用到的中断不多出了喇叭的计时 TMRO 以外没有其他的了,所以我也没怎么认真研读中断章节,最后经过努力 ,用外部中断 INT/RB0 口进行唤醒控制,再进入主程序。将程序进行了认真的整理,才实现了 这个功能。 六六 .实实 验验 心心 得得 与与 体体 会会 刚刚放假就马上登陆 实验选课网站选了单片机实验,原因有三:第一听说学习这个实验对大三第一学期的微机原理很有用,其二感觉上大学以来自己就没有怎么认真动手做过像样的实验,想锻炼一下自己的操作能力和自学能力,最后一直认为自己编程不太好所以想借这个宝贵的机会好好的学习学习,成功了能让自己在以后的编程学习中有信心。 因为报的是第二批小学期实验,所以一放假就去旅游了,然后上了一个月的nts电子密码锁 新东方,已经基本把 小学期的事情抛在脑后了。知道 8 月 27 号第一天上课我书包里还只放着一本 GRE 的单词书,完全对什么是单片机没有一点儿概念。那天上完一次课我才知道原来就是微型处理芯片,以前对电脑比较感兴趣所以感觉略知一二了。当天就拿到了两本厚厚的书,基础篇和提高篇,在翻了几页以后我才意识到小学期已经开始了!更重要的是此小学期非彼小学期啊!难怪好多同学都说单片机很难,所以选择了另外一个实验呢。 掂着厚重的书,看着繁琐的代码,默念着各种寄存器,思索着自己的题目我意识到一个上大学以来最具有挑战性的小学期已经来临了,只有放下手中的单词书全心全意地投入进来才能够在短短的三个星期里从无到有,从不会到掌握,做出一个题目出来。 这个小学期遇到的第一个困难就是自学,老师基本不教授细节知识,只是有一个统领,而我们要用到的所有内容以及各反面的知识都只能自己从书本中汲取,或者在网络上搜寻相关信息。其实我看完第一遍书还是一头雾水,虽然已经想出了做什么题目但是心里还是没底,除了有一个大概的思路,但是细节部分脑子里面简直是一片空白 。 第一周在看书中渡过,我开始有点儿后悔报这单片机了,每天 8 个小时基本都抱着书在看,但是可以说是看完就忘, 而且有些地方看完了根本 不明白在说什么, 感慨自己的自学能力的确不行啊。 第二周开始敲程序调适,打开寄存器观测窗口,密密麻麻的二进制数和无数个寄存器让我眼花潦乱不知道 应该观察哪个,不明白的地方重新看书发现好像明白一些了,可能已经算是入门了吧,呵呵。周中作了一次课题介绍和进度描述,那时候我刚开始做液晶初始化和显示字符程序,看了三天终于明白了说明书想表达什么意思,可是对于汇编语言有没有接触过,一个简单的附值竟然要用到三条语句,粗心大意的我经常会犯一些逻辑错误,还有在指令寄存器和数据寄存器的选择会忘记还原导致了一系列现在看来非常可笑的错误 。老师说我们的进度有点儿慢,于是加班加点按照计划在周末之前液晶和键盘连上了,一般功劳得归功于我的搭档,我负责液晶他负责键盘扫描 。液晶的过程我之前已经说过了,并不难但是一定要认真阅读说明书,我把那本小册子都翻脱页了,呵呵。键盘在看着同组编程时候也有所了解,用了反转的方法,只扫描一次。 nts电子密码锁 第三是真正开始工作的时候了,我们也已经对单片机有了更深入了解,我心中也有了一个程序的框架,我们的任务就是把程序分成模块,也就是各个子程序并把它们填入主程序中。想着成功在即我的心里不免有些高兴,工作一直进行的很顺利,我们想实现的功 能正在一个一个地 显现出来,笑容满面。可就在我们以为要大功告成的时候,一个小小的错误却让我们有跌入的谷地,真正的体会到第一次课老师所说的那种极其郁闷的心情。我们只不过想加一个退格键以便于修改密码,但是加了之后由于没有设定退格计数,新密码经常会存入其他寄存器中导致整个程序进入了混乱的状态,只有在按照规定操作的情况下才能正常运行。但是这个程序就无健壮性可言了。于是我们不断地对此程序作修改,但是不幸的是并没有做好备份,程序越写越多最后不知道自己改的是哪里之前的努力算是白费了,为此郁闷了一天。就算吃一堑长一智吧,之后 我们重新在框架中填写功能模块做好了保存工作,错了就从最新的备份开始修改事半功倍的效果阿,最后经过不断的完善我们的电子锁终于出炉了。 程序验收时我们怀着忐忑不安的心情,但是当老师问到种种问题我们都可以对答如流的时候这种性情被自信所替代了,顺利地答辩完成,我们高兴得走出了实验室,这 3 个多星期里我们过着充实的生活 ,喜悦痛苦郁
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
2:不支持迅雷下载,请使用浏览器下载
3:不支持QQ浏览器下载,请用其他浏览器
4:下载后的文档和图纸-无水印
5:文档经过压缩,下载后原文更清晰
|