AT89C52单片机驱动的简易电子密码锁设计详解

版权申诉
0 下载量 95 浏览量 更新于2024-06-27 1 收藏 187KB DOC 举报
本文档详细介绍了单片机电子密码锁的设计过程,包括系统功能要求、设计方案、硬件设计以及软件设计。首先,系统功能要求明确了密码锁应具备的基本特性,如键盘输入、LED数码管显示、开锁功能、超时报警和防误操作机制。设计采用AT89C52单片机为核心,利用其丰富的IO端口和精确控制能力来实现这些功能。 硬件方面,设计包括一个简单的行列键盘,用于用户输入密码,其中P1.0-P1.7对应数字键,P3.0和P3.4为特定字符键,P3.1和P3.2负责解锁和重输操作,P3.3为确认键,还有时间设定和音效控制功能。单片机系统部分,AT89C52被接到了LCD显示器和报警电路,确保信息显示和错误反馈。报警电路设计中,密码验证失败三次后会触发报警,包括蜂鸣器声音和红色指示灯亮起。 软件设计主要包括主程序、键盘扫描和开锁报警程序。主程序是核心逻辑控制,通过查询方式检测键盘输入。键盘扫描子程序负责响应按键操作,而开锁报警程序则根据预设的原始密码进行验证,并在输入错误达到三次后停止开锁并发出报警。 在调试阶段,文档强调了硬件和软件的双重调试,硬件方面要检查电路连接和LCD亮度,软件则在集成开发环境(IDE)中逐步进行编译和仿真。设计的优点在于高效利用单片机资源,提供简单易用且安全的锁定解决方案,同时强调理论知识与实践相结合的重要性,对于学生来说,这有助于深化对课本知识的理解和未来职业生涯的发展。 参考文献列举了多本关于单片机设计的教材,提供了理论学习和实践设计的基础支撑。总结部分指出,该电子密码锁设计具有良好的基础功能,进一步的智能化改进将提高系统的可靠性和安全性。
2023-02-27 上传
单片机的电子密码锁设计 1 电子密码锁的硬件设计 电子密码锁的硬件由核心处理模块、电源管理模块,执行模块和通信模块组成,其电路 结构如图l所示。 1.1 核心处理模块 核心处理模块是电子密码锁工作的核心,它不仅要对密码锁的信息进行处理,还要负责 调度各种程序稳定的运行并控制其他模块,其模块主要由单片机,键盘,存储器,显示 电路组成。其中,单片机是核心处理模块的核心部分,其主要任务是配合软件来完成信 息处理和记录、控制调度其他部分正常工作、电器的控制、密码校对和修改等工作。从 电子密码锁功能的需要、性价比、程序的数据量和接口电路等多方面综合考虑,本文选 用ATMEL公司的AT89S51单片机作为控制器的核心。键盘电路的设计采用4×4行列键盘的形 式,直接由AT89S51的Pl口的高、低字节构成。 电路中选用AT24C02作为密码和开锁信息的存储器,该存储器是一款具有I2C总线接口的 串行EEFROM,由于AT89S51单片机没有I2C总线接口,在电路上选用单片机的P2.2、P2. 3分别与AT24C02的SCL和SDA线相连,软件上实现模拟I2C总线接口。在该存储器中还保存 着用户修改后的一级、二级权限密码和最近20次开锁的具体时间,以及非法偷、套密码 的提示信息,用户通过按键可方便的实现查阅。存储器与单片机的连接如图2所示。鉴于 该系统在功能上要求实现密码输入提示、开锁信息的查阅、时间显示等信息,并从低成 本出发,故选用SMCl602A液晶显示模块作为显示电路,其电路结构如图3所示。 1.2 电源管理模块 该设计需要使用+5 V直流电源为整个电路供电。电路中采用一个稳压器将输入的直流电源电压转换成+5 V的电压。另外,如果仅仅依靠外接直流电源供电会出现因停电而无法开锁的问题,为了 解决这个问题,在设计电源管理模块时加入了自动切换电路的方案,使电池组供电和外 接直流电源供电这两种方式能够根据实际需要迅速自动切换,从而保证电子密码锁可以 长时间不间断工作。电源自动切换电路选用LTC- 4414器件。通过LTC4414对2个P沟道绝缘栅场效应管控制,实现2个电源高效"或"操作的 自动切换电路。 1.3 执行模块 执行电路通过单片机其中1个引脚线发出信号,经三极管放大后。由继电器驱动电磁阀动 作将锁打开的方案,电路结构如图4所示。另外,报警电路采用时基集成电路555及其辅 助元件构成,在联网的情况下,报警信号可通过串口扩展网络发给主控制器,提醒管理 人员注意。 1.4 通信模块 在通信电路设计中,采用MAX489进行全双工通信,MAX489的引脚R0为接收器输出,接TT L电平RXD信号;引脚DI为发送器输入,接TTL电平TXD信号;引脚- VT、引脚+VT为发送器输出,接发送传输线;引脚- VT,引脚+VT为接收器输入,接收传输线;引脚DE为发送使能端,接+5 V;引脚是接收使能端,接地,通信电路如图5所示。 2 电子密码锁的软件设计 电子密码锁的软件设计是整个电子密码锁可靠安全运行的关键,为了提高电子密码锁的 安全性能,该设计引入安全体系概念,即在设计时建立一般的指导原则和约束条件,为 电子密码锁提供了安全服务和安全机制,使其软件程序构成一个完整的安全体系结构。 安全体系主要是由4种安全服务和4种安全机制构成,其中安全服务包括:鉴别、访问控 制、信息机密性、信息完整性;安全机制包括:鉴别交互机制、访问控制机制、加密、 信息完整性。安全体系主要是通过软件设计来实现的。密码锁软件总体分为两部分:1) 控制程序,其中包括主程序、延时子程序、时间设置子程序、修改密码子程序、扫描键 盘输入子程序、报警子程序;2)网络管理程序,其中包括开锁信息查询子程序、串行通 信程序。软件设计中,引入了二层权限加密的技术,对输入的8位十进制基础密码进行判 别,如果输入密码正确,则可以直接开锁。如果不正确,并且3次以上输入不正确,则封 锁输入口并报警利用互联网通知管理人员,存储报警信息。如果要修改密码,则需要在 输入基础密码判别正确后,输入高级权限密码,通过系统确认后方可修改密码。电子密 码锁利用AT89S5l单片机软、硬件资源,从而使系统具有很高的可靠性和安全性。 该系统设计程序流程如图6所示,图7和图8给出人机交互界面和电子密码锁实物。 ----------------------- 单片机的电子密码锁设计全文共5页,当前为第1页。 单片机的电子密码锁设计全文共5页,当前为第2页。 单片机的电子密码锁设计全文共5页,当前为第3页。 单片机的电子密码锁设计全文共5页,当前为第4页。 单片机的电子密码锁设计全文共5页,当前为第5页。
2023-02-27 上传
基于单片机的电子密码锁的设计 通信工程 2014届学生:***** 学号:******** 指导教师: *** 摘要:单片机已经在家电领域中得到了广泛的应用,而且在安全密保方面,具有防盗报 警功能的电子密码锁逐渐取代了传统的机械密码锁,克服了机械密码锁密码过少的安全 性问题。本密码锁的主控芯片采用价格实惠而且容易购买的 STC89C52芯片。密码输入采用矩阵键盘及独立键盘,密码显示采用共阴极的八段显示数 码管。系统能完成密码输入、正确开锁、超次报警这些基本的密码锁的功能。系统的软 件实现采用功能强大且易于开发的KeilC51环境,且支持ISP下载。因此没使用编程器, 用C语言实现系统的软件部分。由于51单片机也有一些不足之处如断电后内部RAM储存的 数据会完全丢失,为了克服这一缺点,系统的外围加了掉电存储电路并且由AT24C02芯片 来实现。此设计具有安全性高、价格低廉便于实现、易于改进等优点。 关键词 电子密码锁 STC89C52 矩阵键盘 AT24C02 目 录 1 绪 论 1 1.1 单片机及其特点 1 1.2单片机的发展及应用 1 1.2.1 单片机的发展趋势 1 1.2.2单片机的应用 2 1.3 MCS-51系列单片机 3 2系统硬件设计 5 2.1 设计思路 5 2.2系统方案的选择 5 2.2.1 电子密码锁功能简述 6 2.2.2 系统的总体设计 6 2.3单元电路的设计 7 2.3.1主控芯片介绍 7 2.3.2 键盘输入电路 9 2.3.3 密码存储电路 10 2.3.4开锁电路 11 2.3.5报警电路 12 2.3.6 显示电路 12 2.3.7串口通信电路 14 2.3.8 晶振电路 15 3 系统软件设计 17 3.1 软件工具介绍 17 3.1.1. Keil C51概述 17 3.1.2. Keil C51单片机软件开发系统的整体结构 17 3.1.3下载工具STC-ISP 18 3.2程序设计 18 4 硬件电路调试 20 4.1单元功能电路调试 20 4.2联机调试 20 5 改进方法 23 5.1 电路方面的改进 23 5.2 软件方面的改进 23 致 谢 25 附录一 程序 26 附录二 数码管显示电路 32 附录三 总设计图 33 参考文献 36 1 绪 论 2系统硬件设计 2.1 设计思路 硬件设计是整个系统的基础,要考虑的方面很多,除了实现此设计的基本功能以外, 主要还要考虑如下几个因素: 系统稳定度; 器件的通用性或易选购性; 软件编程的易实现性; 系统其它功能及性能指标;因此硬件设计至关重要。现从各功能 模块的实现逐个进行分析探讨。 2.2系统方案的选择 方案一:用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,共设 了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰 键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码 的时间超过10秒(一般情况下,用户不会超过10秒,若用户觉得不便,还可以修改)电 路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作。采 用数字电路设计的方案好处就是设计简单但控制的准确性和灵活性差,故不采用。 方案二:选用单片机STC89C52作为本设计的核心元件,利用单片机灵活的编程设计和 丰富的I/O端口,及其控制的准确性,实现基本的密码锁功能。在单片机的外围电路外接 输入键盘用于密码的输入和一些功能的控制,外接AT24C02芯片用于密码的存储,外接八 段数码管用于显示作用。当用户需要开锁时,先按键盘开锁键之后按键盘的数字键0-9 输入密码。密码输完后按下确认键,如果密码输入正确则开锁,不正确显示密码错误重 新输入密码,当三次密码错误则发出报警;当用户需要修改密码时,先按下键盘设置键 后可以设置新密码。新密码输入无误后按确认键使新密码将得到存储,密码修改成功。 综上分析:方案一虽然设计简单但它的实用性不是很强。而方案二设计复杂,但是 安全性好,功耗低,成本低,而且容易操作保密性强。 2.2.1 电子密码锁功能简述 在本设计中用户通过键盘输入密码,确认后系统调用密码比较判断函数,如果密码在 规定的时间内输入正确,单片机输出开门信号开锁。如果在规定的时间内没完成密码的 输入,系统则自动清除所输入的密码,并提示重新输入。用户发现错误时,可以清除重 输。密码输入后,通过验证和多位校验后了,如果密码错误则启动报警系统,当密码错 误次数达到3次时,系统将锁定一定的时间,时间到后系统则启动键盘输入。初始密码由 系统设定,用户可根据自己的要求设定密码,修改密码时首先需要与旧密码匹配,如果 输入旧密码错误则系统报警并自动退出密码修改系统。旧密码正确则可以输入新密码, 新密码