基于单片机的电子密码锁.docx
- 文档编号:18225079
- 上传时间:2023-08-14
- 格式:DOCX
- 页数:49
- 大小:789.81KB
基于单片机的电子密码锁.docx
《基于单片机的电子密码锁.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁.docx(49页珍藏版)》请在冰点文库上搜索。
基于单片机的电子密码锁
编号:
课程设计说明书
题目:
基于单片机的电子密码锁
院(系):
信息与通信学院
专业:
微电子学
学生姓名:
陈益腾
学号:
1000240209
指导教师:
徐卫林
2013年11月27
摘要
这些年来,随着改革开放的深入发展,电子电器的飞速发展。
人民的生活水平有了很大提高。
各种高档家电产品和贵重物品为许多家庭所拥有。
然而不法分子也是越来越多,原因在于大部分人防盗意识还不够强,造成偷盗现象屡见不鲜。
越来越多的居民家庭对财产安全问题十分担忧。
因此,出于安全方便等方面的需求,电子密码锁相继问世
本课题是以单片机AT89C51为主芯片,用蜂鸣器和继电器来作为控制显示,并结合外围设备液晶显示器LCD1602、矩阵键盘输入、复位等电路组合而成。
系统能够完成开锁、报警、修改密码等基本功能,还能够通过红外来控制单片机的开锁,以及掉电储存密码的功能。
整个设计在Keil开发环境下,用C语言编写主控芯片的控制程序来实现具有多功能的电子密码锁。
关键词:
密码锁;AT89S51;显示;蜂鸣器
Abstract
Inrecentyears,withthedeepeningofreformandopening-up,withtherapiddevelopmentofelectronicappliances.Thepeople'slivingstandardhasbeengreatlyimproved.Avarietyofhigh-gradehouseholdelectricalappliancesandthevaluableshaveformanyfamilies.Howevercriminalsarealsomoreandmore,becausemostpeoplesecurityawarenessisnotstrongenough,causingstealphenomenonitisoftenseen.Moreandmorehouseholdsinpropertysafetyisconcernedabout.Therefore,forthesafeandconvenientandotheraspectsofthedemand,electronicpasswordlockinsuccession.
ThedesignisbasedonSCMAT89S51asmaincontrolchip,buzzer,andthecombinationofperipheralLCD1602liquidcrystaldisplay,andkeyboardinput,reset,powercircuitassembly.Thesystemcancompletethelock,alarm,modifypasswordsandotherfunctions,canalsothroughinfraredtocontrolchiplock,andpower-downsavepasswordfunction.ThewholedesignintheKEILdevelopmentenvironment,usingClanguagemastercontrolchipcontrolprocedurestoachievemultifunctionalelectroniccipherlock.
KeyWords:
Passwordlock;AT89S51;Display;Buzzer
目录
引言1
1概述2
1.1设计的背景和意义2
1.2电子密码锁的发展趋势2
2系统总体设计方案3
2.1系统设计要求3
2.2系统设计方案3
2.3方案选择4
3系统硬件设计与实现5
3.1主控芯片AT89S515
3.2复位电路7
3.3显示模块LCD16028
3.4键盘输入模块10
3.5报警电路11
3.6开锁电路11
3.7串行通信电路12
3.8系统整体原理图13
4系统软件设计14
4.1主程序设计14
4.2开锁设计14
4.3密码修改设计14
4.4Keil编程软件介绍17
5.调试及问题和解决办法19
结论20
谢辞21
参考文献22
附录23
引言
随着社会的进步和人们生活水平的提高,老式的锁已经跟不上人们的要求,况且人们对防盗的要求越来越高,因此近几年一种新型的电子密码锁应运而生,受到了人们的青睐。
有报警功能的密码锁这时正为人们解决了不少问题。
但是市场上的密码锁大部分都是用于一些大公司财政机构、价格高昂,一般人们难以接受。
如果再设计和生产一种价格低廉、性能灵敏可靠的密码锁,必将在防盗和保证财政安全方面发挥更加有效的作用。
密码锁是现代生活中经常用到的工具之一,广泛应用于保险柜、房门、宾馆、车库等。
电子密码锁克服了机械式密码锁量少、安全性能差的缺点,特别是使用单片机控制的智能电子密码锁,不但功能全,而且具有更高的安全性和可靠性。
并且电子密码锁只需记住一组密码,无需携带钥匙,免除了人们携带钥匙的烦恼,被越来越多的人所喜欢。
随着我国第三产业的飞速发展,电子密码锁会在不久的将来得到广泛的应用,方便社会和个人。
从电子密码锁出现到现在,电子锁的体积在缩小,同时可靠性也在提高,成本也相对慢慢减低,目前,在西方国家,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,使之更加安全更加可靠实现大门的管理。
我国于90年代初期开始对密码锁进行初步的探索。
到目前为止,随着电子技术和信息技术的发展,电子密码锁的技术领域已发展的十分成熟。
从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和金库,还有一部分应用于保管箱和运钞车。
在其他技术领域还有遥控式电子密码锁以及卡片式密码锁等。
1概述
1.1设计的背景和意义
人们从前使用的锁不但不方便,而且安全系数也比较低。
随着社会的进步和人们生活水平的提高,老式的锁已经跟不上人们的要求,况且人们对防盗的要求越来越高,特别是对使用的便捷性也有了更高的需求。
因此近几年一种新型的电子密码锁应运而生,受到了人们的青睐。
有报警功能的密码锁这时正为人们解决了不少问题。
但是市场上的密码锁大部分都是用于一些大公司财政机构、价格高昂,一般人们难以接受。
如果再设计和生产一种价格低廉、性能灵敏可靠的密码锁,必将在防盗和保证财政安全方面发挥更加有效的作用。
密码锁是现代生活中经常用到的工具之一,广泛应用于保险柜、房门、宾馆、车库等。
电子密码锁克服了机械式密码锁量少、安全性能差的缺点,特别是使用单片机控制的智能电子密码锁,不但功能全,而且具有更高的安全性和可靠性。
并且电子密码锁只需记住一组密码,无需携带钥匙,免除了人们携带钥匙的烦恼,被越来越多的人所喜欢。
随着我国第三产业的飞速发展,电子密码锁会在不久的将来得到广泛的应用,方便社会和个人。
1.2电子密码锁的发展趋势
20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,同时可靠性提高,成本也相对提高,所以只适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对密码锁的研究一直没有明显进展。
到了90年代,美国、意大利、德国、日本、加拿大、韩国以及我国的台湾、香港等地的微电子技术的进步和通信技术的发展为密码锁提供了技术上的支持,从而推动密码锁走向实际应用的阶段。
目前,在西方国家,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,使之更加安全更加可靠实现大门的管理。
我国于90年代初期开始对密码锁进行初步的探索。
到目前为止,随着电子技术和信息技术的发展,电子密码锁的技术领域已发展的十分成熟。
从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和金库,还有一部分应用于保管箱和运钞车。
在其他技术领域还有遥控式电子密码锁以及卡片式密码锁等。
2系统总体设计方案
2.1系统设计要求
本系统采用以单片机为核心元件的控制方案。
选用AT89S51单片机。
4*4矩阵键盘输入密码,用户可以自由设定密码、具有报警提示功能。
。
用蜂鸣器和继电器来作为控制的演示。
外接LCD1602显示器用于显示作用。
单片机密码锁主要内容:
(1),宽范围密码设置,密码可以由“0123456789abcf“等10个数字和六个字母任意合一个四位密;
(2)、如果输入密码正确,打开继电器并显示密码正确;如果密码错误显示密码错误,并且蜂鸣器连续报警一段时间;
(3)、记录输入错误次数,当连续输入错误三次,将连续数分钟不能进行密码输入,并间断报警,过后自动恢复输入待机状态。
(4)修改密码功能,初始密码6767,随时可以修改密码,当然修改之前得先输入正确的旧密码,为了便于观察,输入新密码的时候实时显示输入的密码。
2.2系统设计方案
本系统采用以单片机为核心元件的控制方案。
由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以获得最佳的性价比。
一般来说在选取单片机时从下面几个方面考虑:
性能、存储器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些方面外,还有一些最基本的条件,比如:
中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。
在开发过程中还要考虑开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等因素。
基于以上因素本设计选用单片机AT89S51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码锁功能。
在单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD1602显示器用于显示作用。
方案一:
以AT89C52单片机为电子密码锁系统核心,使用4*4矩阵键盘作为数据输入方式,驱动1602A显示器提示程序运行过程和开锁如图2所示。
AT89S51
图2单片机控制方案图
方案二:
以74LS112双JK触发器构成的数字逻辑电路控制方案,如图2-1。
图2-1数字逻辑控制方案电子密码锁原理框图
2.3方案选择
由于利用单片机灵活的编程设计和强大的I/O端口,及其控制的准确性,不但能实现基本的密码锁功能,还可以增添掉电存储、声光提示等功能,故选用方案一。
3系统硬件设计与实现
3.1主控芯片AT89S51
在本设计中选用ATMEL公司的AT89S51单片机作为主控芯片。
它是一款低功耗,AT89S51就是一款广泛应用的,高性能CMOS8位单片机,由于系统控制方案简单,数据量也不大,考虑到电路的简单和成本等因素,因此在本设计中选用ATMEL公司的AT89S51单片机作为主控芯片。
主控模块采用单片机最小系统是由于AT89S51芯片内含有8B的E2PROM,无需外扩存储器,电路简单可靠,其时钟频率为0~24MHz,并且价格低廉,批量价在10元以内。
AT89S51是一款功能强大的微型计算机,它可为许多嵌入式控制应用系统提供高性价比。
单片机的最小系统是由复位电路、时钟电路和电源组成。
复位操作有上电自动复位、按键复位和外部脉冲复位3种方法。
本文采用的是上电复位它是通过系统外部的复位电路来实现的。
根据电路原理可知电容两极板间的电压不能突变当单片机电源接通电源的瞬间单片机的9管脚会产生一个阶跃信号,所以RTS端维持高电平由于这个充电时间远远大于1ms,一般就可以实现对单片机的上电自动复位,即接通电源就完成了系统的初始化。
初始化是为了让单片机从地址0000H开始执行,除此之外单片机要想正常工作还必须有时钟电路,时钟电路是产生时序的基础,单片机每执行一条指令都是建立在时序电路上的,为了能保证单片机执行指令的同步,电路就要在唯一的时钟信号控制下按时序的先后进行工作。
它分为内部时钟电路和外部时钟电路。
本文采用的是内部时钟电路,在MCS—51单片机的内部有一个高增益的反向放大器,其输入端为引脚XTAL1,输出端为XTAL2,只要在外部接上两个电容和一个晶振,就能够成一个稳定的自激振荡器。
这里主要看一下电容和晶振的选择,晶振的大小与单片机的振荡频率有关,电容的大小影响着振荡器振荡的稳定性和起振的快速性,通常选择10~30pF的瓷片电容。
本系统电容选择为33pF,晶振为12MHz之所以选择这一频率的晶振是为了在进行单片机与电脑进行串口通信时容易产生和电脑时钟同步的波特率,另外在设计电路时,晶振和电容应尽可能的靠近芯片,这样可以提高系统的抗干扰能力,电源部分,电源与地之间可以接一个0.1uF的电容,它用来滤除电源的纹波,使单片机稳定工作,单片机最小系统如图3-1所示。
图3-1单片机最小系统
单片机引脚说明:
VCC:
电源电压输入端。
GND:
电源地。
P0口:
P0口是一个8位漏极开路双向I/O端口,每个引脚可以吸收8TTL门电流。
P0口当作数据输出时需要加上拉电阻,当P0口的I/O口被写“1”后,被定义为高阻抗输入状态。
P0可以用于外部程序数据存储器,P0口可以是地址的低八位以及数据输出口。
P1口:
P1口是一个8位双向的I/O端口单片机内部加上了上拉电阻的端口,P1口缓冲器可接收的4TTL栅极电流输出。
P1口的I/O口被写“1”后,内部上拉的是高的,可以作为输入,P1口外部下拉低时输出电流,这是因为有内部上拉的缘故。
P2口:
P2口是一个8位双向的I/O端口单片机内部加上了上拉电阻的端口,P2口缓冲器可接收的4TTL栅极电流输出。
当P2口的I/O口被写“1”后,内部上拉的是高的,可以作为输入,P2口外部下拉低时输出电流,这是因为有内部上拉的缘故。
当P2口用于外部程序存储器或外部数据存储器时P2口是地址高八位输出。
P3口:
P3口是一个8位双向的I/O端口单片机内部加上了上拉电阻的端口,P3口缓冲器可接收的4TTL栅极电流输出。
P3口的I/O口被写“1”后,内部上拉的是高的,可以作为输入,P3口外部下拉低时输出电流,这是因为有内部上拉的缘故。
P3口除了普通I/O口功能,还有其第二功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(T0定时器的外部计数输入)
P3.5T1(T1定时器的外部计数输入)
P3.6/WR(外部数据存储器的写选通)
P3.7/RD(外部数据存储器的读选通)
RST:
复位引脚高电平时MCU复位,复位信号输入端口,当MCU要复位时,给与此引脚高电平,高电平持续时间是不少于两个机器周期的时间。
ALE/PROG:
地址锁存使能以及编程脉冲信号端口。
当单片机访问外部的存储器时,地址锁存使能锁存地址低八位。
通常情况下,ALE引脚输出单片机外部振荡器的频率的1/6的频率输出。
应该注意到的是:
当用于单片机扩展外部的数据存储器时,它会少一个ALE脉冲。
如果你想禁止ALE输出可以设置为0在SFR8EH地址。
此时,ALE只有在执行MOVX,MOVC指令时ALE才起作用。
此外,ALE引脚倍稍微拉高。
如果微处理器在外部执行状态ALE的禁令,设置无效。
PSEN:
程序存储器允许输出控制端,在读外部程序存储器时PSEN低电平有效,以实现外部程序存储器单元的读操作。
EA/VPP:
外部程序存储器访问允许。
当/EA接高电平时,单片机读取内部程序序存储器,当扩展有外部ROM时,当读完内部ROM后自动读取外部ROM,当/EA接低电平时,单片机直接读取外部程序存储器。
XTAL1:
片内振荡器反相放大器和时钟发生器的输入端。
XTAL2:
片内振荡器反相放大器的输出端。
3.2复位电路
能让单片机运行起来的最小硬件连接就是单片机最小系统电路,51单片机的最小系统电路一般包括工作电源、振荡电路和复位电路等几部分。
RST引脚是复位信号的输入端,复位信号是高电平的时候才有效,其有效时间应持续24个震荡脉冲周期(即2个机器周期)以上;通常为了保证应用系统能够准确地复位,复位电路应使引脚RST脚保持10ms以上的高电平状态。
只要RST保持高电平,单片机就会自动循环复位。
当RST引脚从高电平状态转为低电平状态时,单片机退出复位状态,从程序存储器的0000H地址开始执行用户程序。
电容C3和电阻R5组成上电复位电路。
上电瞬间RST引脚获得高电平,随着电容C11的充电,RST引脚的高电平逐渐下降。
只要高电平保持足够的时间,单片机就能完成复位。
手动复位的原理与此类似。
图3-2复位电路硬件结构
3.3显示模块LCD1602
如果想要了解系统的运行与工作状态显示器是不可缺少的,显示器是一个典型的输出设备并且它的实际应用也是极为广泛的,几乎所有的电子产品都会使用到显示器其差别仅在于显示器的结构类型不同而已。
最简单的显示器可以是LED发光二极管或者数码管,它可以给出一个简单的开关信息或者数字显示,而需要显示复杂的完整的信息上述的器件就不能胜任,而液晶的出现就很好的解决了这一问题,它不仅显示内容丰富而且好节约了单片机的管脚资源。
本设计采用的是液晶显示LCD1602。
LCD1602内部的字符已经储存了不同的字符形式,每一个字符都有一个固定的代码,其代码与标准的ASCII字符代码一致。
因此只要写入显示字符的ASCII码即可,这种标准化的设计给使用带来很大的方便。
比如英文字母“C”的ASCII代码是01000011(43H),显示时单片机往液晶模块写入显示指令,模块就会把地址为43H中的点阵字符图形识别出,并会在液晶屏相应位置上看到字母“C”。
LCD1602液晶显示与单片机的连接可以分为两种方式:
总线方式和模拟口线方式。
在实验中,我们常采用模拟口线连接方式。
目前市场字符液晶绝大多数是基于HD44780的液晶芯片,控制原理是完全相同的,因此基于HD44780的写控制程序可以很容易地应用到市场上大部分的字符液晶。
LCD1602液晶的几个特性:
+5V电压、对比度可调、内含复位电路;提供各种控制命令,如:
清屏、字符闪烁、光标闪烁、显示移位等多种功能;有80字节显示数据存储器DDRAM;内建有160个5X7点阵的字型的字符发生器CGROM8个可由用户自定义的5X7的字符发生器CGRAM。
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
DataI/O
2
VDD
电源正极
10
D3
DataI/O
3
VEE
液晶显示偏压信号
11
D4
DataI/O
4
RS
数据/命令选择端(H/L)
12
D5
DataI/O
5
R/W
读写选择端(H/L)
13
D6
DataI/O
6
E
使能信号
14
D7
DataI/O
7
D0
DataI/O
15
BLA
背光源正极
8
D1
DataI/O
16
BLK
背光源负极
表3-1LCD液晶屏引脚说明
图3-31602液晶电路图
LCD1602采用标准的16脚接口,其中VSS为地电源,VDD接5V正电源,VEE为液晶显示器。
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
RW为读写信号线,高电平1时进行读操作,低电平0时进行写操作。
E端为使能端。
D0~D7为8位双向数据线。
3.4键盘输入模块
键盘是单片机十分重要的输入设备,是实现人机对话的纽带。
键盘是由一组规则排列的按键组成,一个按键实际上就是一个开关元件,即键盘是一组规则排列的开关。
根据按键与单片机的连接方式不同,按键主要分为独立式按键和矩阵式按键,有了这些按键,对单片机的控制就方便多了。
本设计按键数量较多,所以采用矩阵式按键以节省I/O口线。
将16个按键分为4排4列排列好,如图矩阵键盘硬件结构。
用线反转法确定是哪个键按下。
键盘为4×4形式,按键包括阿拉伯数字0~9和字母a-f,当用户需要输入密码或修改密码时,按下相应按键即会与单片机产生信号,并会执行相应的程序。
图3-4键盘模块硬件结构
3.5报警电路
当密码输入两次的数值与所设定的参数值不同时,单片机AT89S51便通过P1.3口控制三极管8050来驱动扬声器报警,当输出低电平时三极管截止,当输出高电平时三极管导通扬声器报警。
如图3-5所示。
图3-5报警电路硬件结构
3.6开锁电路
开锁电路的功能是当输入正确的密码后密码锁将打开。
当单片机P3.3引脚发出信号经三极管放大后,触动电磁阀即会把锁打开(用继电器和LED代替演示)。
一旦输入4位密码,单片机便会与初始密码进行比对,如果密码与原始密码不相符即会报警。
如图3-6所示。
图3-6开锁电路硬件结构
3.7串行通信电路
随着计算机在各个领域的广泛应用和智能化控制的发展,多微机系统和计算机网络技术的普及,计算机的通信功能显得越来越重要。
计算机通信是指将计算机技术和通信技术相结合完成计算机与外部控制设备或计算机与计算机之间的信息交换或信息处理,按通信方式可以分为两大类:
并行通信与串行通信。
并行通信通常是将数据字节的各位用多条数据线同时进行传送,并行通信控制简单、传输速度快,但是由于传输线较多长距离传送时成本高且接收方的各位同时接收存在一定的困难。
串行通讯传输线少,长距离传送时成本低且可以利用电话网等现成的设备所以本设计采用串口与单片机进行通信。
大多数PC机都有一个串行通讯端口,RS-232主要用于计算机之间进行数据的交换与通讯RS-232通讯接口是电子领域的一种标准化传输接口,主要是为了进行远程传输与通讯连接终端设备的物理接口。
RS-232采用非平衡连接在这个线路中信号的电压都使用一个公共的接地线,所有信号电压都加到一条导线上为了能提高串口通信的抗干扰能力和数据传送距离,RS-232芯片的信号和电平采用负逻辑电平,直流电压值在-15至-5V芯片规定为逻辑值“1”,直流电压值在+5至+15V芯片规定逻辑值“0”,直流电压在-5至+5V为过渡区。
由于单片机输入与输出为TTL电平这与PC机所执行的串行接口标准不一致数据无法正常传输。
因此要实现单片机与PC机之间的数据通读,必须进行电平转换。
一般常用的电平转换器件有MC1488、MC1489及MAX232等,但MC1488、MC1489需要±12V电源,这对于不具备±12V电源的单片机系统是非常不便的。
故本系统使用MAX232实现电平转换。
单片机的第10、11管脚与MAX232芯片的11、12管脚相连并互相传送数据通过MAX232芯片将单片机的TTL电平转换成电脑所能识别的电平。
电路原理如图3-7所示。
图3-7串行通信电路硬件结构
3.8系统整体原理图
智能电子密码锁的基本原理是:
从矩阵键盘输入一组密码,单片机把该密码和设置密码进行比较,若输入的密码正确,则控制电磁锁动作,将电磁锁抽回,从而将锁打开;若输入的密码不正确,则要求从新输入,并记录错误次数,如果2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子 密码锁