单片机课程设计报告-基于AT89C52单片机的电子密码锁设计

上传人:aa****6 文档编号:29985882 上传时间:2018-01-26 格式:DOC 页数:18 大小:271.50KB
返回 下载 相关 举报
单片机课程设计报告-基于AT89C52单片机的电子密码锁设计_第1页
第1页 / 共18页
单片机课程设计报告-基于AT89C52单片机的电子密码锁设计_第2页
第2页 / 共18页
单片机课程设计报告-基于AT89C52单片机的电子密码锁设计_第3页
第3页 / 共18页
单片机课程设计报告-基于AT89C52单片机的电子密码锁设计_第4页
第4页 / 共18页
单片机课程设计报告-基于AT89C52单片机的电子密码锁设计_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《单片机课程设计报告-基于AT89C52单片机的电子密码锁设计》由会员分享,可在线阅读,更多相关《单片机课程设计报告-基于AT89C52单片机的电子密码锁设计(18页珍藏版)》请在金锄头文库上搜索。

1、沈阳理工大学课程设计专用纸.1沈阳理工大学摘 要随着社会的发展进步,密码锁逐渐成为我们生活中很重要的一部分,密码锁是安全的一个很好的保障措施。本论文设计一个基于单片机和存储器的,能够进行开锁,上锁,修改密码的电子密码锁。电子密码锁是现代电子科技与安全结合的产物。它在现代锁业扮演着重要的角色,本文的主要内容是用 AT89c52 单片机为核心控制元件,用存储器 24c04 进行存储密码锁的密码,当用户输入的密码与存储器储存的密码相同时,即可开锁成功,并也可以修改密码,若不相同,则不能开锁,并提示密码错误。关键词:AT89C52 单片机 密码锁 LCD 矩阵键盘 沈阳理工大学课程设计专用纸.2沈阳理

2、工大学目 录摘 要 .1目 录 .21.引 言 .32. 总体设计 .42.1 基本原理 .42.2 系统总体框图及设计思路 .43.详细设计 .53.1 硬件设计 .53.2 软件设计. .83.2.1 程序设计思路 .83.2.2 程序流程图 .83.2.3 程序代码 .94. 系统调试及分析 .155.心得体会 .17参考文献 .18沈阳理工大学课程设计专用纸.3沈阳理工大学1.引 言单 片 机 又 称 单 片 微 控 制 器 ,它 不 是 完 成 某 一 个 逻 辑 功 能 的 芯 片 ,而 是 把 一 个 计算 机 系 统 集 成 到 一 个 芯 片 上 。 相 当 于 一 个 微

3、型 的 计 算 机 , 和 计 算 机 相 比 , 单 片 机 只缺 少 了 I/O 设 备 。 概 括 的 讲 : 一 块 芯 片 就 成 了 一 台 计 算 机 。 它 的 体 积 小 、 质 量 轻 、价 格 便 宜 、 为 学 习 、 应 用 和 开 发 提 供 了 便 利 条 件 。 同 时 , 学 习 使 用 单 片 机 是 了 解 计算 机 原 理 与 结 构 的 最 佳 选 择 。 密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的数字密码锁是以芯片

4、为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。其特点是保密性好,随机开锁成功率几乎为零。密码可变,用户可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。无活动零件,不会磨损,寿命长。使用灵活性好,不像机械锁必须佩带钥匙才能开锁。数字密码锁操作简单易行,一学就会。沈阳理工大学课程设计专用纸.4沈阳理工大学2. 总体设计2.1 基本原理电子密码锁是才用存储芯片24C04进行存放密码,单片机可以对24C04进行读取密码和写入密码,本密码锁是事先吧初始密码写入24C04中,用户输入密码后,通过对用户输入的密码和24C04中的密码进行比较,若比较相同则提示开锁称成

5、功,开锁后,用户可以修改密码,即把用户输入的新密码写入到24C04当中,并清除之前的密码,按下保存键后,继成功修改密码。其中24C04的原理如下:AT24C04是美国Atmel公司的低功耗CMOS型E2PROM,内含2568位存储空间,具有工作电压宽(2.55.5 V)、擦写次数多(大于10000次)、写入速度快(小于10 ms)、抗干扰能力强、数据不易丢失、体积小等特点。而且他是采用了I2C总线式进行数据读写的串行器件,占用很少的资源和IO线,并且支持在线编程,进行数据实时的存取十分方便。AT24C04中带有的片内地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存

6、储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。I2C总线是一种用于IC器件之间连接的二线制总线。他通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件。 AT24C02正是运用了I2C规程,使用主从机双向通信,主机(通常为单片机)和从机(AT24C04)均可工作于接收器和发送器状态。主机产生串行时钟信号(通过SCL引脚)并发出控制字,控制总线的传送方向,并产生开始和停止的条件。无论是主机还是从机,接收到一个字节后必须发出一个确认信号ACK。AT24C04的控制字由8位二进制数构成,在开始信

7、号发出以后,主机便会发出控制字,以选择从机并控制总线传送的方向。2.2 系统总体框图及设计思路电子密码锁24C04 存储密码 矩阵键盘进行输入 LCD 显示提示信息总体设计思路:本设计利用单片机灵活的编程设计和丰富的 IO 端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加掉电存储。其中,0-9 为用户可以输入密码可选择的数字,10 号功能为开锁键,11 号功能为上锁,12 号功能为输入修改后的密码,13 号沈阳理工大学课程设计专用纸.5沈阳理工大学功能为保存密码,14 号功能为重新输入。利用 LCD 来显示提示信息,用 LED 来提示密码锁的状态。3.详细设计3.1 硬件设计1芯片

8、及原理介绍(一)AT89C52AT89C52 与 MCS-51 单片机产品兼容 、8K 字节在系统可编程 Flash 存储器、 1000次擦写周期、 全静态操作:0Hz33MHz 、 三级加密程序存储器 、 32 个可编程 I/O口线 、三个 16 位定时器/计数器 八个中断源 、全双工 UART 串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、看门狗定时器 、双数据指针 、掉电标识符 。 AT89C52 的一些特殊功能口,如下表所示:(二)矩阵键盘使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的 I/O 线的数目,在按键比较多的时候,通常采用这样方法。

9、其原理如图。本设计中矩阵键盘接在单片机的 P1 口。P1 口引脚 特殊功能P1.0 T2(定时器 T2 外部输入)P3 口引脚P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 (外部中断 0)P3.3 (外部中断 1)P3.4 T0(定时器 0 外部输入)P3.5 T1(定时器 1 外部输入)P3.6 WR(外部数据存储器写选通)P3.7 RD(外部数据存储器读先通)沈阳理工大学课程设计专用纸.6沈阳理工大学每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要 N 条行线和 M 条列线,即可组成具有 NM 个按键的键盘。在这

10、种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。(三)LCD1602本系统设计的显示电路是为了给使用者以提示而设置的。本系统的显示采用了LCD1602作为显示模块,其能 够 同 时 显 示 16x02即 32个 字 符 。LCD 在系统中,其 D0-D7引脚分别接单片机的 P0口、VSS 和 VDD 分别接电源和地线、VEE 为液晶亮度调节按钮(可接电位器) 、RS 为数据或命令的选择端接 P2.0、RW 为读写的

11、选择端接 P2.1、E 为使能信号接 P2.2。如图所示。(四)24C04本设计中为了在系统掉电时能够保存系统的设置密码,使用了具有 I2C 总线接口的E2PROM 的 24C04 芯片来保存密码锁的密码。沈阳理工大学课程设计专用纸.7沈阳理工大学SCL 串 行 时 钟 AT24C02 串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,这是一个输入管脚。 SDA 串 行 数 据 /地 址 AT24C02 双向串行数据/ 地址管脚用于器件所有数据的发送或接收,SDA 是一个开漏输出管脚,可与其它开漏输出或集电极开路输出进行线或(wire-OR) 。 A0、 A1、 A2 器 件 地 址 输

12、入 端 这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空时默认值为 0。当使用 AT24C02 时最大可级联 8 个器件。如果只有一个 AT24C02 被总线寻址,这三个地址输入脚(A0 、A1 、A2 )可悬空或连接到Vss,如果只有一个 AT24C02 被总线寻址这三个地址输入脚( A0、A1、A2 )必须连接到 Vss。 WP 写 保 护 如果 WP 管脚连接到 Vcc,所有的内容都被写保护只能读。当WP 管脚连接到 Vss 或悬空允许器件进行正常的读 /写操作2.硬件原理图P1 口通过连接 1 个矩阵键盘,作为密码输入和功能选择按键;P0 口接 LCD1602的 8 位数据通信线

13、;P2.0,P2.1 ,P2.2 接 LCD 控制端;P3.2 和 P3.3 接 24C04。 沈阳理工大学课程设计专用纸.8沈阳理工大学3.2 软件设计. 3.2.1 程序设计思路电子密码锁工作的主要过程是 LCD 提示开始选择操作功能(选择开锁还是更改密码) ,通过 10 号键盘开锁,13 号 14 号进行密码的修改与保存。当用户选择开锁时,通过键盘输入开锁密码。如果密码输入正确,则 LCD 提示密码正确、LED 灯亮表示开锁。如果密码输入错误则 LCD 提示密码错误。当用户选择更改密码功能时,要求用户先输入当前密码。当密码正确时 LCD 提示用户进一步操作。单片机向 24C04 写入新密

14、码,否则提示错误并返回初状态。3.2.1 程序流程图功能键盘扫描检测子程序提示输入旧密码输入开锁还是改密码?判断旧密码是否正确?判断输入的密码是正确?结束调用存于24C04 的密码与其比较?提示密码错误提示输入新密码提示出错将新密码写入 AT24C02提示密码修改成功开始LCD 用*动态提示已输入数字提示输入开锁密码将已输入的数字暂存与单片机 RAM第一个LED 亮清单片机 RAM 密码暂存区NNNYYY沈阳理工大学课程设计专用纸.9沈阳理工大学3.2.3 程序代码1、预定义部分#include#include#include#include #include #include #define uchar

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号