电子锁Word文件下载.docx
- 文档编号:21876545
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:21
- 大小:975.27KB
电子锁Word文件下载.docx
《电子锁Word文件下载.docx》由会员分享,可在线阅读,更多相关《电子锁Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
4、年月日,上交课程设计成果及报告,同时进行答辩。
指导教师签名:
年月日
系主任(或责任教师)签名:
年月日
摘要I
AbstractII
1方案对比分析1
1.1待选方案1
1.1.1方案一1
1.1.2方案二2
1.1.3方案三3
1.2方案对比3
2.设计思路5
2.1总体思路5
2.2各部分思路5
2.2.1密码读取5
2.2.2密码设置6
2.2.3密码比较6
2.2.4锁体和报警电路7
3单元电路设计8
3.1单片机最小系统8
3.1矩阵键盘模块9
3.2LCD1602液晶显示模块9
3.3复位模块9
3.4报警电路模块10
4仿真及分析11
4.1设计总原理图11
4.2Proteus仿真软件介绍11
4.3仿真过程及结果分析12
5实物安装与调试16
5.1实物的制作16
5.2软件代码排查16
5.3综合调试16
6心得与体会18
7元件清单19
8参考文献20
附录Ⅰ21
附录Ⅱ22
摘要
本次数字式电子锁的设计以STC89C52RC最小系统为核心,在外围加入LCD1602、4*4矩阵键盘、报警系统这三个模块,以+5V直流电压供电,采用Proteus仿真。
电子锁能完成设置用户密码,8位二进制密码串行输入,超次锁定,异常报警,报警动作响1分钟,停10秒,初始化系统等基本的密码锁的功能。
除上述基本的密码锁功能外,依据实际的情况还可以实现用液晶显示密码和提示,密码可为任意位(小于九位),清除输入和退位清数等功能。
该设计成本不高,设计相对容易,性价比高。
关键词:
电子密码锁,STC89C52RC,液晶显示,异常报警
Abstract
MydigitalelectroniclockiscenteredwithSTC89C52RCmicrocomputerminimumsystem,combinedwiththreemodulesincludingLCD1602,4*4matrixkeyboardandalarmsystem,poweredby+5vDCvoltage,andusingProteustosimulate.Myelectroniclockcanmeettherequirementsincludingsettingpasswords,8-bitbinarycodeserialinput,exceptiontimelocking,supertimealarm,alarmringing1minute,stopping10seconds,initializingthesystemandotherbasiccombinationlockfunction.Inadditiontotheabovebasiccombinationlockfunction,itcanalsorealizedfollowingfunctions:
liquidcrystaldisplayspasswords,thepasswordscanbeofanybit(lessthanninebits),removetheinput,etc.Thedesignofmineisoflowcostandthedesignisrelativelyeasyandcost-effective.
Keywords:
digitalelectroniclock,STC89C52RC,liquidcrystaldisplay,exceptionalerts
1方案对比分析
1.1待选方案
1.1.1方案一
1.1.1.1原理框图
图1.1方案一的系统框图
1.1.1.2设计原理
利用74194做移位寄存器,实现8位二进制码串行输入。
利用7485比较器对预设置好的密码与输入的密码进行比较。
若密码正确则开锁电路实现开锁功能;
若密码不正确,则报警。
利用74161芯片设计十八进制计数器,控制报警时间为60s,停10s之后循环;
同时该报警系统可兼作门铃使用,利用74LS290设计十进制计数器来控制门铃的响铃时间为60s。
数字60、10分别通过数码显示管显示出来。
1.1.1.3优缺点
该方案由纯硬件电路搭出的数字式电子锁,电路复杂,计算复杂,但电路为纯硬件电路不需要编程。
1.1.2方案二
1.1.2.1原理框图
图1.2方案二原理图
1.1.2.2设计原理
利用数字逻辑电路,实现对门的电子控制,并且有各种附加电路保证电路能够安全工作,具有极高的安全系数。
该系统主要由密码存储电路,比较电路,开锁输入,报警电路,锁体组成。
密码存储电路与比较电路主要由开关和非门构成,开锁输入主要由74LS194移位寄存器构成,报警电路主要由74LS192和报警灯构成。
1.1.2.3优缺点
1.1.3方案三
1.1.3.1原理框图
图1.3方案三原理框图
1.1.3.2设计原理
以STC89C52单片机最小系统为核心,结合矩阵键盘、1602LCD和报警系统组成。
系统能完成锁闭状态显示、密码输入错误超次(大于三次)异常,系统锁定声光告警、初始化设置用户密码等基本的密码锁的功能。
除上述基本的密码锁功能外,依据实际的情况还可以添加通过超级密码重置密码、键盘背光与通过背光显示密码、系统产生随机密码等扩展空间。
1.1.3.3优缺点
该方案通过单片编程实现数字频率计的设计,电路简单,但要涉及到单片机编程。
1.2方案对比
方案一,方案二都用单步脉冲二进制密码一位位输入双向通用移位寄存器74LS194中,当输入完8次后,移位寄存器并行将之输出。
在密码比较部分,方案一采用了7485比较器,方案二用开关及门电路。
在报警电路部分方案一利用两片74161芯片采用异步清零法设计成十八进制计数器,计数器的脉冲由555定时器制成的秒脉冲来驱动,而方案二采用四个74LS192计数器分别构成由输入三次错误,报警60秒停10秒连续三次的报警电路,灯泡亮表示报警,报警再加反馈回路实现对前面电路的控制。
方案一,方案二均由纯硬件电路搭出的数字式电子锁,由各种逻辑器件和计数器,寄存器搭建电路以实现要求的逻辑功能,电路比较,连线较多,容易出错,但电路为纯硬件电路不需要编程。
方案三以STC89C52单片机最小系统为核心,结合矩阵键盘、1602LCD和报警系统组成。
系统能完成功能。
它利用程序去实现那些逻辑功能,更加直观,更加清楚明了,除能完成方案一,方案二基本的密码锁功能外,依据实际的情况还可以添加通过超级密码重置密码、键盘背光与通过背光显示密码、系统产生随机密码等扩展空间。
功能比前两个方案强大很多倍。
经过反复研究揣摩,结合实验要求,我最终选择方案三,该方案电路相对容易搭建,编程使逻辑关系清楚明了,而且能够实现更强大的功能。
前两个方案不用的原因主要是考虑到实际电路中信号经过逻辑门电路都需要一定时间,这种延迟会使电路产生诸如竞争冒险之类的一系列问题。
还有这两种方案连线较多,焊接困难,且功能没有方案三强大,综合考虑,弃之不用。
2.设计思路
2.1总体思路
采用以单片机为核心的控制方案由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。
一般来说在选取单片机时从下面几个方面考虑:
性能、存储器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些的还有一些最基本的比如:
中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。
基于以上因素,结合本次设计任务的特点,本设计选用单片机STC89C52作为本设计的核心元件,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码锁信号判断、状态保存、电平控制的功能。
设计从总体可以分为硬件与软件两个部分。
在硬件部分中,由单片机最小系统、矩阵键盘、1602液晶显示、声光显示这几个部分,其相关控制关系如图2-2-1.;
在软件部分中,由矩阵键盘键值读取、1602液晶显示函数、延时模块、密码读取模块、密码设置模块、密码比较模块、声光状态模块,等几部分组成。
2.2各部分思路
2.2.1密码读取
首先预读入密码的字符数组清零,显示位置清空,然后读取键值。
先判断此时是否是在第九个键值输入了数字键值,如果是不响应重新读入,这样可以防止读入字符串溢出,造成密码读取错误。
然后通过switch语句5处理键值(字母键值),并将读取位置、显示位置进行相关调整;
如果输入的是数字有效键值,存入当前指向的字符数组空间,其后将键值变量清零准备读取下一个键值。
进行循环读取,直到成功读取8位密码或者因为输入了确定键提前完成读取工作。
2.2.2密码设置
在系统进行初始化时,要求设置密码。
整体思路是要求读取一组密码,保存在临时空间,然后再次读取密码,如果相同,证明设置成功,将新密码覆盖进标准密码数组里,如果两次的密码不同,显示错误信息,要求重新输入。
图2.1密码设置模块
2.2.3密码比较
该模块将输入密码字符串与设定密码字符串比较。
如果相同,执行开锁动作并将输入错误次数清零;
如果不同,累计错误次数,如果是第三次输入错误,系统锁死并发出声光告警;
如果小于三次,显示密码错误信息,返回密码输入环节。
逻辑框图如4.6.1。
图2.2密码比较模块
2.2.4锁体和报警电路
本模块通过读取相关控制变量,控制声光部件的状态。
当闭锁状态点亮红灯,开锁状态点亮绿灯;
当需要进行异常告警时,利用延时函数周期性的变换蜂鸣器的响静。
鸣响状态下,响250ms,停250ms;
鸣响状态保持50s后,静止10s,后继续进入鸣响状态,如此反复。
3单元电路设计
3.1单片机最小系统
一个单片机最小系统,其有P0~P3四组I/O口,可以进行相关的电平状态读取与控制操作。
开关SW_RST为复位开关,当其接通,单片机RST9复位端至于高电位,满足一定时长后,单片机会进行复位操作,重新开始工作。
Y1、C1.2、C1.3组成了单片机的振荡电路,为单片机系统提供稳定可靠地时钟信号,协助单片机完成相关操作。
Header9为一组排阻,座位上拉电阻。
图3-3-2为单片机的程序烧录串口电路。
由于STC89C52使用串口方式下载程序,因此需要使用MAX232完成程序下载的处理工作。
图3.1单片机最小系统
3.1矩阵键盘模块
矩阵键盘接P1口,行接低4位,列接高4为。
先让行为高,列为低,若有键按下,则所在行为低,得到按键的所在行数,之后令P1口,行为低,列为高,运用相似的方法得到所按键的所在列数,及确定按键位置,返回键值。
由于机械键盘会出现信号抖动的情况,固在发现有按键后延时5毫秒再次确定,若让有按键,证明按键稳定,否则认为接收到的是抖动信号,不予处理。
图3.24*4矩阵键盘
3.2LCD1602液晶显示模块
图2-2密码比较模块
1602具有三个工作状态控制端,调节他们的高低变化配合数据口的信息,可以显示2×
16的字母或者数字,通过子函数可以实现检测初始化LCD、写指令到LCD、LCD状态、LCD清屏、输入一个字节数据到LCD、LCD光标定位到x处、LCD光标归位、输入一个字符到LCD、输入一个字符串到LCD等功能。
3.3复位模块
单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC=0000H,使单片机从第—个单元取指令。
无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。
在复位期间(即RST为高电平期间),P0口为高组态,P1-P3口输出高电平;
外部程序存储器读选通信号PSEN无效。
地址锁存信号ALE也为高电平。
根据实际情况选择如图3-2-1所示的复位电路。
该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C1上的电压很小,复位下拉电阻
上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于
某一数值后,CPU脱离复位状态,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。
增加手动复位按键是为了避免死机时无法可靠复位。
当复位按键按下后电容C1通过R5放电。
当电容C1放电结束后,RST端的电位由R5与R6分压比决定。
由于R5<
<
R6因此RST为高电平,CPU处于复位状态,松手后,电容C1充电,RST端电位下降,CPU脱离复位状态。
R5的作用在于限制按键按下瞬间电容C1的放电电流,避免产生火花,以保护按键触电。
图2-3复位电路原理图
3.4报警电路模块
报警部分由陶瓷压电发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声,每按一下,发声一次,密码正确时,不发声直接开锁,当密码输入错误时,单片机的P3.7引脚为低电平,三极管T3导通轰鸣器发出噪鸣声报警。
如图4-9所示:
图2-4报警电路原理图
4仿真及分析
4.1设计总原理图
图4.1实验总原理图
4.2Proteus仿真软件介绍
Proteus软件是英国Labcenterelectronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片图4.2proteus软件
机教学的教师、致力于单片机开发应用的科技工作者的青睐。
在PROTEUS绘制好原理图后,调入已编译好的目标代码文件:
*.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。
PROTEUS不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。
前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。
4.3仿真过程及结果分析
打开proterus仿真软件,在元件库找到相应元件加入到元件列表里,按照实验原理图在原理图编辑窗口里摆放元件,芯片,并连线。
电子锁.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。
载入程序后,运行。
结果如下:
1.初始界面
图4.3初始液晶显示
刚接通电源或者按下复位键,LCD1602显示初始画面”keepongoingnevergiveup”,该部分显示正常说明复位模块工作正常,液晶显示正常。
2设置密码
图4.4设置密码界面
按下”enter”键(4*4矩阵键盘右下角那个键),LCD1602界面显示设置密码的提示,第一行显示提示语,第二行现实一条横线。
3确认密码
图4.5再次输入密码
第一次输入密码后,连续两次按下enter键,出现再次输入密码的界面。
这部分功能正常说明4*4矩阵键盘接线正常。
图4.6密码设置成功图4.7密码设置失败
两次输入的密码一致就会出现左图的提示语,不一致就会出现右图的提示语。
4密码输入
图4.8密码输入界面
密码设置成功后任意按键出现密码输入界面。
5密码验证
1密码正确
图4.9输入密码正确界面图4.10绿灯亮
密码输入正确则会出现左图的提示语,并且绿灯亮,红灯灭。
2密码错误
图4.11输入密码错误界面图4.12红灯亮
密码输入错误则会出现左图的提示语,并且红灯亮,绿灯灭。
4报警
图4.133次密码输入错误报警界面图4.14蜂鸣器鸣响
当三次密码输入都错误,出现左图的报警提示,并且蜂鸣器响,鸣响60s,停10s。
5实物安装与调试
实物制作时,先按照各单元电路原理图制作各模块,并对各个模块进行功能测试,再在整体电路图的基础上进行综合调试。
5.1实物的制作
由于本次设计的线路相对较多,易发生焊接错误,故应该先进行硬件电路的排查。
首先检查相关器件引脚连接是否正确可靠;
其次检测各导线间是否有错误的相邻短路;
然后检查所有开关是否正常控制电路闭合,最后给声光部件有效电平观察其是否能正常工作。
经过检测,发现几处线路短路错误,已处理修正。
5.2软件代码排查
检测函数中是否有错误的函数调用,变量错误使用,是否存在控制错误造成相关模块的衔接问题。
其后利用Proteus然见软件进行模拟进一步需找错误并改成。
经过排查,修改程序中的已发现错误
5.3综合调试
Hex文件烧入STC89C52RC单片机芯片里,对电路进行综合调试。
流程如下:
表一调试流程
序号
测试内容
具体操作
状态
1
系统初始化,
LCD显示
系统上电,调节显示部分的
滑动变阻器,调节LCD
显示对比度
正确进入密码设置状态
LCD显示正常
2
验证键盘按键
进行有序的按键操作,观察LCD显示器状态,确认键盘是否正常
可以通过矩阵键盘完成正确的键值输入
3
密码读入、设置密码模块、密码比较模块检测
进行两次密码设置操作,先进行错误设置,后进行正确设置
密码操作模块可以正确的对相应数组进行正确处理
4
验证密码模块与声光模块的配合
先进行正确密码输入,然后多次进行多次错误密码输入
系统的函数间调度、衔接操作正确,未发现错误。
5
测试密码模块可靠性
多次输入密码,随机性的决定密码的正误,看系统响应状态
系统的密码模块可靠,在且只在连续三次错误时进行异常告警。
通过以上的排查调试工作,成功修正了已发现的硬件软件错误。
上面的测试项目基本覆盖了系统的所有可能操作,表明系统的可靠性相对较高,但不排除让存在极端情况下的系统漏洞,然而这种情况很少出现,此时可以忽略不计。
6心得与体会
通过这次课程设计,我加强了自己掌握和理解书本知识的能力,培养了自己的实际动手能力与综合设计能力,并提高了自己的技术素质。
基本达到了数电课程设计的任务,明确了计数器、译码器和定时器的基本知识与应用以及单片机简单应用;
在对对芯片的理论分析的过程中,我对数学电子技术基础的相关知识进行了复习,更深一个层次的掌握了计数器的相关概念和使用技巧;
同时掌握了Proteus7.6sp3仿真设计的基本方法,学会了运用Proteus仿真软件,绘制相应的电路图,对计算出的参数进行验证,反复推导,使参数更加符合要求。
通过这次课程设计,我发现同学之间的相互合作能够大大的加快我们设计的过程,许多资料通过同学们之间的资源共享可以达到事半功倍的效果,这就是我们以后肯定要学会的团队合作的精神,一个人的思想不可能面面俱到,相互合作就能弥补这种不足。
通过设计也达到了设计的目的,了解掌握了数字电子技术的知识并应用于实践。
培养了自己独立完成课题的能力与动手能力,并加强了对待事物严谨的态度。
衷心感谢刘可文老师和魏洪涛老师的悉心指导!
7元件清单
名称
型号
数量
备注
单片机芯片
STC89C52
石英晶振
12M
瓷片电容
33
105
电解电容
4.7uf
电位器
10K
电阻
1K
10K排阻
LED
红色
绿色
长鸣蜂鸣器
三极管
8550
LCD
1602
按键开关
17
自锁开关
8参考文献
[1]谢自美.电子线路设计·
实验·
测试[M].武汉:
华中科技大学出版社,2006:
42-69
[2]梁宗善.新型集成电路的应用―电子技术基础课程设计[M].武汉:
华中科技大学出版社,1999
[3]孙梅生,李美莺.电子技术基础课程设计[M].北京:
高等教育出版社,1998
[4]康华光.电子技术基础数字部分[M].武汉:
高等教育出版社,2006
[5]张天凡.51单片机C语言开发详解.北京:
电子工业出版社,2008.6.
[6]马忠梅.单片机的C语言应用程序设计[M].北京:
北京航空航天大学出版社,2007.1.
[7]梅丽凤.单片机原理及接口技术[M].北京:
清华大学出版社;
北京交通大学出版社,2004.2
[8]谭浩强.C程序设计[M].北京:
清华大学出版社,2005.7.
[9]Streib,W.J.DigitalCircuits[M].Arizona:
WillcoxPublisher,1997.1
附录Ⅰ
实物图:
附录Ⅱ
部分代码:
#include"
reg51.h"
#include"
string.h"
voidmain()//系统主函数
{
Load();
//系统初始化
first();
Set_password();
//设定系统密码
while
(1)
{
Load();
//
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子锁
![提示](https://static.bdocx.com/images/bang_tan.gif)