欢迎来到天天文库
浏览记录
ID:9104166
大小:535.50 KB
页数:17页
时间:2018-04-17
《基于51单片机密码锁设计论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于单片机的密码锁设计1引言1.1设计目的随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。电子密码锁就是通过键盘输入一组密码完成开锁过程。研究这种锁的初衷,就是为提高锁的安全性。目前,国内自行研制开发的电子锁,应用还不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不断的努力,使电子密码锁在我国也能得到广泛应用。1.2设计要求本次课程设计要求使我们能够掌握并且实际运用课本知识。通过利用所学的电子技术知识正确分析并设计电路,将适当电路运用到实际电路中,将课本知识转化为实际能力。1.3设计方法(1)系能够从键盘中输入密码,并相应地在显示器上显示„*‟;能
2、够判断密码是否正确,正确则开锁,错误则输出相应信息。(2)密码由程序直接设定,不可用户自己设定。(3)具有自动报警功能。密码不正确,相应红灯亮,蜂鸣器发出报警声来提示。(4)具有手动复位功能。2设计方案及原理2.1系统总体设计根据以上分析,本次电子密码锁设计的主要重点是以下几个部分:4x3矩阵键盘设计、LCD信息显示和密码的比较和处理。当然,除了这几个部分外还有报警等功能模块。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路是报警
3、。系统整体框图如图1所示。16图1系统整体框图2.2本设计硬件资源分配P3.0~P3.7用于LCD液晶显示作用。P1.6、P1.7用于蜂鸣器和报警灯的控制。P1.4用于开锁电路的控制。P2.0~P2.7用于键盘电路的控制。P1.0~P1.2用于LCD显示模块的控制端口的控制。3硬件设计3.1.1芯片选择本次设计采用AT89C51贴片芯片,AT89C51是一个低电压,高性能CMOS8位单片机,通过用Keil软件编写程序,然后装到单片机里面去,然后让它对整个系统进行信息的处理,如可以让它处理矩阵键盘传过来的信息,并根据编好的程序来确定哪个按键按下,并处理相应按键对应的功能,然后把相应的信息反应到
4、单片机的各个引脚,来实现按键实现的现象,如:显示是否开启锁,报警等。AT89C51提供以下标准功能:4k字节Flash闪速存储器128字节内部RAM,32个I/O口线两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。AT89C51的引脚图如图2所示。16图2AT89C513.1.2单片机最小系统设计单片
5、机最小系统就是指能使单片机工作的最少的器件构成的系统。因为单片机已经包含了数据存储器和程序存储器,所以只要在其外部加上时钟电路和复位电路就可以构成单片机最小系统。(1)单片机工作需要晶振给CPU提供频率,时钟电路就是给单片机提供晶振频率的电路。图3是时钟电路的PROTEUS仿真图。图3时钟电路16单片机允许的振荡晶体可在1.2~24MHz之间选择,一般为11.0592MHz,电容C2,C3的取值对振荡频率输出的稳定性、大小及振荡电路起振速度有一定的影响,可在20~100pF之间选择,典型值位30pF(2)计算机每次开始工作,CPU和系统中的其他部件都必须要有一个确定的初值,即复位状态。图4是
6、单片机复位电路仿真图。图4复位电路单片机RST引脚是高电平有效。单片机在上电瞬间C1充电,RST引脚端出现正脉冲,只要RST断保持两个机械周期(大约10ms)以上的高电平,单片机就能复位。在单片机工作后,如果还想再次复位,只需按下开关,单片机就能重新变成复位状态。当晶体振荡频率为12MHz时,RC的典型值为C=10μF,R=8.2KΩ。3.1.3矩阵键盘设计一组键或者一个键盘,需要通过接口电路和CPU相连接,CPU可以采用查询接口或者中断的方式了解有没有键被按下,并检查是哪个键被按下。无论是查询方式还是中断方式都要用到单片机的I/O口。由于单片机I/O口较少的原因,当系统中需要用到较多按键时
7、,为了能够更合理更有效地利用单片机的I/O口,一般采用矩阵键盘的方式来实现多按键的功能。图5是4x3矩阵键盘在PROTEUS中的电路原理仿真图。16图54x3矩阵键盘矩阵键盘又叫做行列式键盘。行列式键盘的硬件结构比较简单,由行输出口和列输出口构成行列式键盘,按键设置在行、列交点上。只有当键被按下时相应的行和列才能相连。如此,只要检测行和列是否相连就可以知道是否有键按下。由于按键设置在行、列线交点上,行、列分别
此文档下载收益归作者所有