AT89C2051单片机的电子密码锁
AT89C2051单片机的电子密码锁[20200128194159]
摘要
随着科技的发展,安全问题越来越受人们关注,各种安全产品相继问世,如指纹防盗,红外防盗等,虽然这类产品的安全性较高,但其成本也同样较高,携带安装都不方便也同样限制了其发展。本文利用AT89C2051单片机,通过4×3键盘和七段数码管显示,除实现了密码锁的密码验证、重新设置和输入错误报警等基本功能外,还创新性的实现了键盘的重新定义。通过对键盘的重新定义可以有效的防止密码被盗,同时也降低了成本,便于携带安装。
*查看完整论文请+Q: 351916072
关键字:AT89C2051单片机密码锁键盘七段数码管重新定义
一、引言 1
(一)电子密码锁概述 1
(二)本设计主要任务 1
(三)系统主要功能 1
二、 电子密码锁硬件设计 2
(一) 系统的硬件构成及功能 2
(二) AT89C2051单片机及其引脚说明 3
(三) 单片机控制方框图 4
(四) 开锁机构 4
(五) 按键电路设计 5
(六)密码锁的电源电路设计 6
三、 系统的软件设计 6
(一) 软件设计思想 7
(二) 存储单元的分配 8
(三)系统源程序 8
(四)上机操作 12
(五) 应用说明 12
四、 展望 12
五、结束语 13
致谢 13
参考文献 14
附录: 14
一、引言
(一)电子密码锁概述
随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。而锁自古以来就是把守门的铁将军,人们对它的要求特别高,即要求是可靠地防盗,又要使用起来方便,所以这也是制造锁者长期以来研制的主题。传统的门锁不仅要备有大量的钥匙,还要担心钥匙不小心丢失后的麻烦。另外,如:办公大楼、仓库、保险柜等,由于装修施工等人住时也要把原有的锁更换,况且钥匙随身携带也诸多便利。现在随着单片机的问世,出现了微处理器的密码锁,它具有除电子密码锁的功能外,而且还引入了智能化、科技化等功能。从而使密码锁具有很高的安全性、可靠性和实用性。目前西方发达国家已经大量的应用智能门禁系统,可以通过多种的更加安全方便可靠的方法来实现大门的管理。但是电子密码锁在我国的应用目前还不广泛,成本还很高,未来希望通过不断地努力使电子密码锁能够在我国及居民日常生活中得到广泛应用,这也是一个国家的生活水平体现。
很多行业的许多地方都要用到密码锁,随着人们生活水平的提高,如何实现家庭或公司的防盗这一问题也变的尤其突出,传统的机械锁由于其构造简单,被撬的事件屡见不鲜,再者,普通密码锁的密码容易被多次试探而破译,所以,考虑到单片机的优越性,一种基于单片机的电子密码锁应运而生。电子密码锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲睐。
设计本课题时构思的方案:采用以AT89C2051为核心的单片机控制方案;能防止多次试探而不被破译,从而有效地克服了现实生活中存在的许多缺点。
(二)本设计主要任务
设计一个电子密码锁,其主要技术要求如下。
(1)总共8位密码,各个密码取值的范围是1至8。
(2)可以根据自己的情况设定和修改密码。
(3)按入每个密码键都会有声音。
(4)若按键按入的8位开锁密码不正确,会报警5秒钟。
(5)开锁密码错了4次报警5分钟,报警期间输入任何密码都会无效,以防窃贼进行多次试探密码。
(6)按键按入的8位开锁密码要完全正确才能打开锁,开锁的时候会有1秒的提示音。
(7)密码键盘上只准有8个密码按键和1个发光二级管。锁的内部有备用电池,只有内部上电复位时才能设置或修改密码,因此,仅在门外按键是不可能修改或设置密码的。
(8)密码初始设定完毕会有2秒的提示音。
(三)系统主要功能
本系统主要由单片机系统、键盘、报警器组成。系统能完成开锁、超时会报警、超过次数会自动锁定、管理员进行解密、修改用户密码,基本密码锁的功能。
二、 电子密码锁硬件设计
(一) 系统的硬件构成及功能
根据总体要求分析,该密码锁电路所需要的I/O口线少于15个,所以可选择质优价廉的AT89C2051,而且不需要外接程序存储器和数据存储器及其它扩展部件。
电子密码锁由电路和机械两部分组成,此次设计的电子密码锁可以完成密码的修改、设定及非法入侵报警、驱动外围电路等功能。从硬件上看,它由六部分组成,分别是:LED显示器、AT89C52单片机、振荡电路、显示灯、电磁线圈、蜂鸣器。其中LED显示器,显示亮度均匀,显示管各段不随显示数据的变化而变化,且价格低廉,它用于显示键盘输入的相应信息;无须再加外部EPROM存储器,且外围扩展器件较少的AT89C52单片机是整个电路的核心部分;振荡电路为CPU产生赖以工作的时序;显示灯是通过CPU输出的一个高电平,通过三极管放大,驱动继电器吸合,使外加电压与发光二极管导通,从而使发光二极管发光,电机工作。现在来进行修改密码操作。修改密码实质就是输入的新的密码去取代旧密码。密码存储用来存储一位地址加1,密码位数减1,当八个地址都存入一位密码时,即密码位数减为零时,密码输入完毕,按下确认键后,这时新密码就会产生,跳出一个子程序。这时为了防止非管理员进行密码的修改,必须要输入正确密码后,再按修改的密码键进行修改,这时才可以重新设置密码。输入的密码比较主要分为两部分,密码的位数与任何一个条件不满足,这都将会产生信息出错。连续三次输入的密码都出错时,这时就会报警,LED显示密码错误,蜂鸣器发出声音,提醒人注意。
在电路中,P1口连接8个密码按键AN1~AN8,开锁脉冲由P3.5输出,报警和提示音由P3.7输出。BL是用于报警与声音提示的喇叭,发光管D1用于报警和提示,L是电磁锁的电磁线圈。如图1所示。
图1 电子密码锁硬件电路图
(二) AT89C2051单片机及其引脚说明
AT89C2051单片机是51系列单片机的一个成员,是8051单片机的简化版与Intel MCS-51系列单片机的指令和输出的管脚相兼容。由于将多功能的八位CPU和闪速的存储器结合在一个芯片中,因此,AT89C2051构成的单片机系统是结构最为简单、造价最低、效率最高的微型控制系统,省去了外部的RAM、ROM和接口器件,减少了硬件开销,节省了成本,提高了系统的性价比。内部自带2K字节可编程FLASH存储器的低电压、高性能COMS八位微处理器,
AT89C2051是一个有20个引脚的芯片,引脚配置如图2所示。与8051相比,AT89C2051减少了两个对外端口(即P0、P2口),使它最大可能地减少了对外引脚下,因而芯片尺寸有所减小。如图2所示。
图2 AT89C2051引脚配置
AT89C2051芯片的20个引脚功能为:
VCC:电源电压。
GND:接地。
RST:复位输入。当RST变为高电平并保持2个机器周期时,所有I/O引脚复至“1”。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡放大器的输出。
P1口:八位双向I/O口。引脚P1.1~P1.6提供内部的上拉,当作为的输入被外部下拉为低电平的时候,它们将会输出电流,这是因为内部上拉的原因。P1.1和P1.2需要外部上拉,可用作模拟比较器的正向输入(AIN0)和反向的输入(AIN1),P1口输出的缓冲器可以接收20mA的电流,并能直接打开LED显示屏;P1口引脚写入“1” 后,可用作输入。在闪速编程与编程校验期间的时候,P1口也能接收编码数据。
P3口:引脚P3.0~P3.5与P3.7是七个带内部的上拉双向I/0引脚。P3.6在内部已和片内比较器输出进行相连,不能作为通用I/O引脚访问。P3口的输出缓冲器可以接收大概为20mA的灌电流;P3口写入“1”后,内部上拉,可用输入。P3口也可用作特殊功能口,功P3口同时也可为闪速存储器编程和编程校验接收控制信号。
表1 P3口特殊功能
P3口引脚 特殊功能
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 INT0(外部中断0)
P3.3 INT1(外部中断1)
摘要
随着科技的发展,安全问题越来越受人们关注,各种安全产品相继问世,如指纹防盗,红外防盗等,虽然这类产品的安全性较高,但其成本也同样较高,携带安装都不方便也同样限制了其发展。本文利用AT89C2051单片机,通过4×3键盘和七段数码管显示,除实现了密码锁的密码验证、重新设置和输入错误报警等基本功能外,还创新性的实现了键盘的重新定义。通过对键盘的重新定义可以有效的防止密码被盗,同时也降低了成本,便于携带安装。
*查看完整论文请+Q: 351916072
关键字:AT89C2051单片机密码锁键盘七段数码管重新定义
一、引言 1
(一)电子密码锁概述 1
(二)本设计主要任务 1
(三)系统主要功能 1
二、 电子密码锁硬件设计 2
(一) 系统的硬件构成及功能 2
(二) AT89C2051单片机及其引脚说明 3
(三) 单片机控制方框图 4
(四) 开锁机构 4
(五) 按键电路设计 5
(六)密码锁的电源电路设计 6
三、 系统的软件设计 6
(一) 软件设计思想 7
(二) 存储单元的分配 8
(三)系统源程序 8
(四)上机操作 12
(五) 应用说明 12
四、 展望 12
五、结束语 13
致谢 13
参考文献 14
附录: 14
一、引言
(一)电子密码锁概述
随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。而锁自古以来就是把守门的铁将军,人们对它的要求特别高,即要求是可靠地防盗,又要使用起来方便,所以这也是制造锁者长期以来研制的主题。传统的门锁不仅要备有大量的钥匙,还要担心钥匙不小心丢失后的麻烦。另外,如:办公大楼、仓库、保险柜等,由于装修施工等人住时也要把原有的锁更换,况且钥匙随身携带也诸多便利。现在随着单片机的问世,出现了微处理器的密码锁,它具有除电子密码锁的功能外,而且还引入了智能化、科技化等功能。从而使密码锁具有很高的安全性、可靠性和实用性。目前西方发达国家已经大量的应用智能门禁系统,可以通过多种的更加安全方便可靠的方法来实现大门的管理。但是电子密码锁在我国的应用目前还不广泛,成本还很高,未来希望通过不断地努力使电子密码锁能够在我国及居民日常生活中得到广泛应用,这也是一个国家的生活水平体现。
很多行业的许多地方都要用到密码锁,随着人们生活水平的提高,如何实现家庭或公司的防盗这一问题也变的尤其突出,传统的机械锁由于其构造简单,被撬的事件屡见不鲜,再者,普通密码锁的密码容易被多次试探而破译,所以,考虑到单片机的优越性,一种基于单片机的电子密码锁应运而生。电子密码锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的亲睐。
设计本课题时构思的方案:采用以AT89C2051为核心的单片机控制方案;能防止多次试探而不被破译,从而有效地克服了现实生活中存在的许多缺点。
(二)本设计主要任务
设计一个电子密码锁,其主要技术要求如下。
(1)总共8位密码,各个密码取值的范围是1至8。
(2)可以根据自己的情况设定和修改密码。
(3)按入每个密码键都会有声音。
(4)若按键按入的8位开锁密码不正确,会报警5秒钟。
(5)开锁密码错了4次报警5分钟,报警期间输入任何密码都会无效,以防窃贼进行多次试探密码。
(6)按键按入的8位开锁密码要完全正确才能打开锁,开锁的时候会有1秒的提示音。
(7)密码键盘上只准有8个密码按键和1个发光二级管。锁的内部有备用电池,只有内部上电复位时才能设置或修改密码,因此,仅在门外按键是不可能修改或设置密码的。
(8)密码初始设定完毕会有2秒的提示音。
(三)系统主要功能
本系统主要由单片机系统、键盘、报警器组成。系统能完成开锁、超时会报警、超过次数会自动锁定、管理员进行解密、修改用户密码,基本密码锁的功能。
二、 电子密码锁硬件设计
(一) 系统的硬件构成及功能
根据总体要求分析,该密码锁电路所需要的I/O口线少于15个,所以可选择质优价廉的AT89C2051,而且不需要外接程序存储器和数据存储器及其它扩展部件。
电子密码锁由电路和机械两部分组成,此次设计的电子密码锁可以完成密码的修改、设定及非法入侵报警、驱动外围电路等功能。从硬件上看,它由六部分组成,分别是:LED显示器、AT89C52单片机、振荡电路、显示灯、电磁线圈、蜂鸣器。其中LED显示器,显示亮度均匀,显示管各段不随显示数据的变化而变化,且价格低廉,它用于显示键盘输入的相应信息;无须再加外部EPROM存储器,且外围扩展器件较少的AT89C52单片机是整个电路的核心部分;振荡电路为CPU产生赖以工作的时序;显示灯是通过CPU输出的一个高电平,通过三极管放大,驱动继电器吸合,使外加电压与发光二极管导通,从而使发光二极管发光,电机工作。现在来进行修改密码操作。修改密码实质就是输入的新的密码去取代旧密码。密码存储用来存储一位地址加1,密码位数减1,当八个地址都存入一位密码时,即密码位数减为零时,密码输入完毕,按下确认键后,这时新密码就会产生,跳出一个子程序。这时为了防止非管理员进行密码的修改,必须要输入正确密码后,再按修改的密码键进行修改,这时才可以重新设置密码。输入的密码比较主要分为两部分,密码的位数与任何一个条件不满足,这都将会产生信息出错。连续三次输入的密码都出错时,这时就会报警,LED显示密码错误,蜂鸣器发出声音,提醒人注意。
在电路中,P1口连接8个密码按键AN1~AN8,开锁脉冲由P3.5输出,报警和提示音由P3.7输出。BL是用于报警与声音提示的喇叭,发光管D1用于报警和提示,L是电磁锁的电磁线圈。如图1所示。
图1 电子密码锁硬件电路图
(二) AT89C2051单片机及其引脚说明
AT89C2051单片机是51系列单片机的一个成员,是8051单片机的简化版与Intel MCS-51系列单片机的指令和输出的管脚相兼容。由于将多功能的八位CPU和闪速的存储器结合在一个芯片中,因此,AT89C2051构成的单片机系统是结构最为简单、造价最低、效率最高的微型控制系统,省去了外部的RAM、ROM和接口器件,减少了硬件开销,节省了成本,提高了系统的性价比。内部自带2K字节可编程FLASH存储器的低电压、高性能COMS八位微处理器,
AT89C2051是一个有20个引脚的芯片,引脚配置如图2所示。与8051相比,AT89C2051减少了两个对外端口(即P0、P2口),使它最大可能地减少了对外引脚下,因而芯片尺寸有所减小。如图2所示。
图2 AT89C2051引脚配置
AT89C2051芯片的20个引脚功能为:
VCC:电源电压。
GND:接地。
RST:复位输入。当RST变为高电平并保持2个机器周期时,所有I/O引脚复至“1”。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡放大器的输出。
P1口:八位双向I/O口。引脚P1.1~P1.6提供内部的上拉,当作为的输入被外部下拉为低电平的时候,它们将会输出电流,这是因为内部上拉的原因。P1.1和P1.2需要外部上拉,可用作模拟比较器的正向输入(AIN0)和反向的输入(AIN1),P1口输出的缓冲器可以接收20mA的电流,并能直接打开LED显示屏;P1口引脚写入“1” 后,可用作输入。在闪速编程与编程校验期间的时候,P1口也能接收编码数据。
P3口:引脚P3.0~P3.5与P3.7是七个带内部的上拉双向I/0引脚。P3.6在内部已和片内比较器输出进行相连,不能作为通用I/O引脚访问。P3口的输出缓冲器可以接收大概为20mA的灌电流;P3口写入“1”后,内部上拉,可用输入。P3口也可用作特殊功能口,功P3口同时也可为闪速存储器编程和编程校验接收控制信号。
表1 P3口特殊功能
P3口引脚 特殊功能
P3.0 RXD(串行输入口)
P3.1 TXD(串行输出口)
P3.2 INT0(外部中断0)
P3.3 INT1(外部中断1)
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/4474.html