基于单片机的智能密码锁的设计与制作(含pcb图)大学毕设论文.doc
《基于单片机的智能密码锁的设计与制作(含pcb图)大学毕设论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的智能密码锁的设计与制作(含pcb图)大学毕设论文.doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录摘要1英文摘要.2引言31 概述42 系统硬件设计42.1 硬件组成及工作原理42.2 单片机选型52.3 时钟电路52.4 复位电路62.5 密码存储电路72.6 矩阵式键盘电路设计72.7 报警电路82.8 显示电路83 系统软件方案93.1 设计与分析94 系统调试114.1 硬件调试114.2 软件调试11结论与谢辞12参考文献13附件1:元器件清单14附件2:系统软件15附件3:电路图22附件4:PCB图23基于单片机和串行EEPROM的智能密码锁的设计与制作信息工程学院应用电子专业摘要:传统的门锁既要备有大量的钥匙,又要担心钥匙丢失后的麻烦。随着单片机的问世,出现了带微处理器
2、的密码锁,它除具有电子密码锁的功能外,还引入了智能化、科技化等功能,从而使密码锁具有很高的安全性、可靠性,受到了广大用户的亲睐。本文介绍一种基于单片机和串行EEPROM的智能密码锁,对系统硬件设计和软件实现进行了详细的描述。该系统采用STC89C51单片机和AT24C02串行EEPROM,通过STC89C51模拟I2C总线和AT24C02通讯来读取存储的密码,用户通过键盘输入的密码,实现密码锁的功能。 关键词:智能密码锁 STC89C51 AT24C02 Single-chip EEPROM and serial-based Intelligent Design and locks the p
3、roduction ofMajor of Applied Electronic Technology Information and Engineering College yingjunqingAbstract :Both traditional locks have a lot of keys, but also worried about the trouble after the loss of keys. With the advent of single-chip, a microprocessor with the password lock, which in addition
4、 to the functions of electronic locks, but also the introduction of intelligent, technology and other functions, so that locks with high security, reliability, the majority of users have been pro-gaze. This paper presents a single chip and serial EEPROM-based smart locks on the system hardware desig
5、n and software implementation described in detail. The system uses STC89C51 and AT24C02 single-chip serial EEPROM, through the I2C bus and STC89C51 simulation AT24C02 communication to read stored passwords, user password through the keyboard input to achieve the function of locks.Key words: smart lo
6、cks STC89C51 AT24C02- 20 -引言随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。此外电子技术的飞速发展,给传统的机械锁带来了巨大的变革,现代的电子技术与机械技术相结合,产生了一大批智能锁:指纹锁、IC卡辨识、遥控锁、声控锁等先进的锁具。虽然这类产品安全性高,但是这类产品的特点是针对特定指纹或有效卡,只能适用于保密要求高且仅供个人使用的箱、柜、房间等。而且卡片式IC卡还有易丢失等特点,加上其生产成本高,安装使用不方便,一定程度上限制了这类产品的普及和推广。本文介绍的是一种基于ST89C51单片机和AT24C02串行EEPROM的智能密码锁
7、的硬件设计和软件实现方法,这种电路设计具有防试探按键输入、智能控制上锁、开锁、报警、修改密码等多种功能。密码长度可变,保密性强,灵活性高,外接各种执行机构,可广泛用于车辆、大门、保险柜等各种需上锁的场合。1 概述本设计中,智能密码锁工作时分为两种工作状态,分别是正常状态和锁定状态。锁定状态时,输出锁定信号,供外部执行机构使用,实现上锁功能;正常状态时,锁定信号消失,供外部执行机构使用,实现开锁功能。初始密码存储在AT24C02中,开锁时,将从面板上的微键盘输入的数字序列与AT24C02中存储的密码相比较,如果位数及每一位上的数都相吻合,则进行开锁动作,转入正常状态,否则仍将锁定。为安全起见,密
8、码可以进行更改。在正常状态时,程序允许用户随时进行密码修改,密码长度和数字可随意进行组合。为防止程序“跑飞”等异常情况,本设计在软件中使用了简单的“程序陷阱”技术,根据实际需要,可酌情增加“看门狗”电路。无论是硬件复位还是软件复位后,自动进入锁定状态,保证异常情况下的安全。锁定状态时,自动开启报警功能。如遇非法用户进行恶意多次试探开锁,连续三次输错密码,将进行报警。直至开锁后,所有报警消失。2 系统硬件设计电子锁主要由控制电路和锁体两部分组成,锁体包括电磁线圈、锁拴、弹簧和锁框等。当电磁线圈中有一定的电流通过时,磁力吸动锁栓,锁便打开。否则锁栓进入锁框,即处在锁住状态。为了便于试验,可用发光二
9、极管代表电磁线圈,当绿色发光二极管为亮状态时,代表电子锁被打开,红色发光二极管为亮状态时代表锁着。2.1 硬件组成及工作原理电子密码锁的组成框图如图2-1所示,图2-1 控制电路功能图它也是以单片机作为核心控制器,主要是由显示电路、报警电路、时钟电路、复位电路和键盘等组成。完成密码的设置、存贮、识别和输出开锁电平等功能。当用户输入密码并按下输入键后,程序判断输入的密码是否正确。如果输入密码正确,则输出开锁信号,同时点亮绿灯;如果输入密码不正确,则输出密码错误信号,点亮红灯;如果连续三次输入的密码均是错的,则输出报警信号,同时蜂鸣器鸣叫响发出报警。一旦输出报警信号, 就必须等待解除报警后方可重新
10、开锁。2.2 单片机选型本设计用STC89C51代替了以往使用的AT89C51,功能更强,速度更快,寿命更长,价格更低。STC89C51可以完成ISP在线编程功能,而AT89C51则不能。将AT89C51中的程序直接烧录到STC89C51中后,STC89C51就可以代替AT89C51直接工作。STC89C51内部有EEPROM,可以在程序中修改,断电不丢失,还增加了两级中断优先级等等。 STC89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口。 图2-2 STC89C51引脚图STC89C51是一块高性能单片机
11、,它内含1288位存储空间,具有工作电压宽(2.55.5V)、擦写次数多(大于10000次)、写入速度快(小于10ms)等特点。AT24C02具有PDIP、MSOP/TSSOP及SOIC等三种封装形式,以适应不同产品的需求。2.3 时钟电路XTALl、XTAL2 为片内振荡器的反相放大器的输入和输出端,如图2-3示。可采用石英晶体或陶瓷振荡器组成时钟振荡器,如需从外部输入时钟驱动 STC89C51,时钟信号从 XTAL1 输入,XTAL2 应悬空。由于输入到内部电路是经过一个 2分频触发器,所以输入的外部,所以输入的外部时钟信号无需特殊要求,但它必须符合电平的最大和最小值及时序规范。电路里采用
12、的是12MHz的晶振,则周期为:T=1/(12*106)Hz1/12=1us有关电路如下图:图2-3 振荡电路2.4 复位电路复位电路采用了微分型复位电路如图2-4所示:图2-4复位电路复位电路的基本功能是:系统上电时提供复位信号直至系统电源稳定后撤销复位信号为可靠起见电源稳定后还要经一定的延时才撤销复位信号以防电源开关或电源插头分-合过程中引起的抖动而影响复位,有效的防止系统有时会出现一些不可预料的现象,如无规律可循的“死机”、“程序走飞”等。2.5 密码存储电路密码锁的密码可修改,并且掉电后不消失,所以需要外接非易失性存储器,在本次设计中采用AT24C02。图2-5 STC89C51与AT
13、24C02连接图AT24C02与外部通讯采用I2C总线。I2C(InterIntegrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线最主要的优点是其简单性和有效性。AT24C02写操作分为字节写和页面写两种操作,读操作分为当前地址读、随机读和顺序读等三种操作,每种读写操作都有规定的时序。本系统采用字节写和随机读两种操作方式,具体时序由软件模拟。2.6 矩阵式键盘电路设计图2-6 矩阵式键盘矩阵式键盘适用与按键数量较多的场合,它由行线和列线组成,按键位于行、列的交叉点上。一个44的行、列结构可以构成一个有16个按键的键盘。如
14、上图所示,这是本课题所设计的矩阵键盘电路。很明显,在按键数量较多的场合,矩阵键盘与独立式按键键盘相比,要节省很多I/O口。在键盘的设计时,我一开始选用的是大的按键,但是考虑到PCB板的大小,我后来选用的是小的按键,可以节省覆铜板,按键的八个接口分别接P1的八位,在按键前,我先给P1口置F7H,当第一行上有键按下的时候,相对列位输出低电平,反之无键按下为高电平。相同方法扫描各列,反复循环,直到有键按下。2.7 报警电路蜂鸣音报警电路如下图所示:图2-7 报警电路本电路是由两个电阻,一个NPN三极管和一个蜂鸣器组成。STC89C51的P1.1端接三极管Q1基极的输入端。如果用户连续三次输入的密码均
15、是错时,CPU发出信号将P1.1置高电平,就会使三极管的基极为高电平,三极管Q1放大导通,压电蜂鸣器两端获得约+5V电压而鸣叫;当P1.1输出低电平时,三极管Q1截止,则蜂鸣器停止发音。2.8 显示电路图2-8 显示电路如图2-8所示,是由一个四位数码管和一个二位数码管组成。显示电路我选用共阴极数码管,显示主要包含了两部分:段选和位选。在设计时用7448来译码,用74LS138提供位选,这样可以节省单片机端口。段码的信号和位选的信号都由P0口提供,P0口的前四位接7448的A、B、C、D四位,由他把单片机输出的十进制转换成数码管能显示的字型码。P0口的后面三位接3-8译码器的A,B,C,通过译
16、码器输出的数据可以作为数码管的位选,使数码管一个一个的点亮,从而达到动态显示的要求。3 系统软件方案STC89C51单片机和其开发应用系统具有语言简洁、可移植性好、表达能力强、表达方式灵活、可进行结构化设计、可以直接控制计算机硬件、生成代码质量高、使用方便等诸多优点。此设计如下要求:1)上电后,显示器显示“000000”。初次使用时,密码由程序存储器TABLE读取,“666666”为初始化密码,只要输入此密码便可开门。密码修改后则从AT24C02中读取。2)更改密码时,先键入新号码再按“*”,即可建立新密码,并存入EEPROM。3)键入号码,再按“D”开门键,若号码与密码相符,则开门,计算输错
17、次数,当达到三次则报警。4)输入的号码通过数码管显示。方案主要就是密码的输入、显示和比较,所以程序在键盘和显示上占了很大的比重,硬件电路上加了EEPROM AT24C02,断电后密码就是从这里读出来的。3.1 设计与分析首先进行系统初始化,设置计算输入密码次数的参数N=0,开始解码输入,接着判断输入的密码是否正确。当输入的密码正确时,查询是否输入set键,如果输入set键(修改密码键)则可以修改密码,接着输入新密码即可。如果不需要修改密码则可以正常开锁。当输入的密码错误时就会出现错误指示,每输入一次则N作加1运算,当N3时也就是连续输入密码出现三次错误,蜂鸣器报警并封锁输入口。 然后定时10分
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 智能 密码锁 设计 制作 pcb 大学 论文
限制150内