基于单片机的电子密码锁设计.docx
《基于单片机的电子密码锁设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁设计.docx(29页珍藏版)》请在沃文网上搜索。
1、摘要选用STC89C52单片机为核心的系统来实现按键输入、开锁和密码识别。采用具备I2C总线接口的E2PROM 的AT24C02芯片来完成密码的存储,通过1602液晶显示器提示程序运行状态和使用步骤,利用蜂鸣器模拟报警,发光二极管模拟锁的开关。该系统用C语言编写程序,与汇编语言相比具有更好的移植性和可读性,便于修改和增减功能。其中加入了门铃,语音,温度检测,时钟,烟雾检测(小型的火警报警器),音乐播放等实用功能。关键词:密码锁、多功能、STC89C52、温度、时钟、门铃、烟雾一、 前言随着社会物质财富的日益增长和人们生活水平的提高,安全成为现代居民最关心的问题之一。而锁自古以来就是把守门的铁将
2、军,人们对它要求甚高,即要求可靠地防盗,又要使用方便。传统的门锁既要备有大量的钥匙,又要担心钥匙丢失后的麻烦。随着单片机的问世,出现了电子密码锁,其保密性高,使用灵活性好,安全系数高,故受到广大用户的青睐。电子密码锁通常使用单片机控制1,单片机相对ARM来说成本较低,实现较为简单,功能较为完善,因此使用单片机控制较多。用单片机控制的密码锁通常使用汇编语言来编写程序,数码管做显示器 ,但本设计使用移植性及可读性强的C语言编写,同时采用显示清楚、功率消耗小而且寿命长的1602液晶显示器,从经济实用的角度出发,采用STC89C52单片机设计出一种具有密码设置、报警等功能的电子密码锁。电子密码锁的附加
3、功能有温度检测,可以时时检测当前温度;电子时钟,可以显示当前的时间,为人们的生活提供便利;门铃系统,可以替代传统的敲门并且还能够与房间内进行通话;防火报警器,利用温度传感器和烟雾传感器,对周围环境进行实时监控,对业主财产安全起到一定的防卫作用。终上所述,我们努力用最低的成本实现最全面的功能,使本密码锁不仅仅作为一个作品展现在人们面前,而且能够实实在在运用到实际生活当中,对解决实际生活中的困难起到一定作用。总之,我们努力用最小的成本,实现最多,最稳定的功能,这就要求我们对各个器件、电路相当了解。 二、 总体方案设计以STC89C52单片机为电子密码锁系统核心,协调和控制各个模块正常工作;使用4*
4、4矩阵键盘对本密码锁的多种功能进行控制;并驱动1602A显示器提示程序运行过程和开锁的步骤;利用AT24C02芯片实现密码掉电存储和密码的读取;通过DS1802温度传感器及MQ-2烟雾传感器对周围环境实时监控并传回数据,当温度过高或有害气体浓度超标时及时发出警报;由蜂鸣器为门铃,TDA2822实现声音的放大功能使房内主人可清晰听到客人的喊话。其中MQ-2烟雾报警模块与语音模块作为独立模块,使其实用更加方便和人性化。图1为单片机控制密码锁的系统原理框图。电源模块矩阵键盘模块 STC 89C521602 LCD 显示模块LED指示模块DS1820温度传感器蜂鸣器报警模块24C02存储模块MQ-2烟
5、雾报警系统语音模块图1 单片机控制密码锁的系统原理框图由于利用单片机灵活的编程设计和强大的I/O端口,及其控制的准确性,不但能实现基本的密码锁功能,还可以增添掉电存储、声光提示等功能。因此,这个方案比较合理化。三、 单元模块设计3.1硬件支持使用的元器件有:核心芯片STC89C52、存储芯片AT24C02、液晶显示1602、44矩阵键盘、报警蜂鸣器、独立按键、DS1802温度传感器、MQ-2烟雾传感器、TDA2822、LM7805、NE555、MAX232芯片、DB9、电容、晶振、电阻、发光二极管、三极管和继电器。3.2功能单元模块设计3.2.1 开锁机构通过单片机送给开锁执行机构,电路驱动电
6、磁锁(电磁锁用LED发光二极管代替)吸合,从而达到开锁的目的。如图3所示,为密码锁开锁电路原理图。当用户输入的密码正确时,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁(由LED代替),达到开门的目的。本次设计中,基于节省成本考虑,用发光二极管代替电磁锁,信息通过LCD显示,并利用蜂鸣器和二极管声光指示。其中,绿发光二极管亮,表示开锁;否则,表示密码输入错误并开启报警电路。开锁驱动电路STC89C52单片机密码正确超次锁定电磁锁是否图3 密码锁开锁电路原理图3.2.2 矩阵键盘设计电路每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要
7、M条行线和N条列线,即可组成具有MN个按键的键盘。由于本设计中要求使用16个按键输入,为减少键盘与单片机接口时所占用的I/O线的数目,故使用矩阵键盘。本设计中,矩阵键盘行线和单片机P1.0-P1.3相连,列线与单片机P1.4-P1.7相连。矩阵键盘设计电路图,如图4所示。键盘扫描采用行扫描法,即依次置行线中的每一行为低电平,其余均为高电平,扫描列线电平状态,为低电平即表示该键按下。1234567890*#DCBA图4 矩阵键盘设计电路图3.2.3 声音提示电路设计声音提示电路采用小蜂鸣器提示。蜂鸣器能够根据脉冲信号,以及信号的频率发出各种不同的声音,这样可以根据系统要求在密码出入正确和密码输入
8、错误时发出不同的声音提示,已达到报警的要求。蜂鸣器电路,如图5所示。图5 蜂鸣器电路3.2.4 显示模块设计本设计中,显示电路采用1602A液晶显示器显示。如下所示,图6为1602A液晶显示器的接口示意图,表1为接口说明。图6 1602A液晶显示器的接口示意图表1 1602A液晶显示器接口说明管脚序名称电平功能描述1VSS0V接地2VCC5.0V电源输入3V0LCD驱动电压输入4RSH/L寄存器选择:RS=H,选择数据寄存器;RS=L,选择指令寄存器5R/WH/L读写信号线:R/W=H,读操作;R/W=L,写操作6EH,HL使能信号7DB0H/L数据线8DB1H/L数据线9DB2H/L数据线1
9、0DB3H/L数据线11DB4H/L数据线12DB5H/L数据线13DB6H/L数据线14DB7H/L数据线15BLA5.0V背光电源正极16BLK0V背光电源负极本设计中液晶串口一共用到11根导线与单片机相连, 具体连接情况如表2显示模块与MCU连接说明所示。表2 显示模块与MCU连接说明序号1602A液晶显示器引脚STC89C52单片机引脚1RS引脚P2.72R/W引脚接地3E引脚P2.64D0引脚P0.05D1引脚P0.16D2引脚P0.27D3引脚P0.38D4引脚P0.49D5引脚P0.510D6引脚P0.611D7引脚P0.73.2.5 AT24C02掉电存储单元的设计本设计中掉电
10、存储单元采用AT24C02外部存储器,其作用是在系统电源断开的时候,存储当前设定的密码数据。AT24C02是一个2K位串行CMOS E2PROM,内部含有256个8位字节, 含一个16字节页写缓冲器,具有写保护功能。其采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10Ua(5.5V),芯片内的资料可以在断电的情况下保存40年以上,而且采用8脚的DIP封装,使用方便。如下所示,图7为AT24C02管脚示意图,表3为AT24C02管脚说明。图7 AT24C02管脚示意图表3 AT24C02管脚说明管脚名称功能管脚名称功能A0 A1 A2器件地址选择SDA串行数据
11、/地址SCL串行时钟信号WP写保护VCC1.8V-6.0V工作电压GND接地3.2.6 语音模块设计 此功能模块中采用驻极体话筒做音频输入,TDA2822芯片做功率放大器。电路图如下:图8 语音模块电路图驻极体话筒具有体积小、结构简单、电声性能好、价格低的特点,广泛用于盒式录音机、无线话筒及声控等电路中。属于最常用的电容话筒。TDA2822是意法半导体(ST)开发的双通道单片功率放大集成电路,通常在袖珍式盒式放音机(WALKMAN)、收录机和多媒体有源音箱中作音频放大器。具有电路简单、音质好、电压范围宽等特点,可工作于立体声以及桥式放大(BTL)的电路形式下。若将音频信号接到TDA2822输入
12、端,可轻松实现音乐播放功能。3.2.7 烟雾报警器模块及电源设计烟雾报警器由MQ-2可燃性气体传感器和可控多谐振荡器组成。MQ-2可燃性气体传感器特点,探测范围广、灵敏度高(快速响应回复)、稳定性优异以及寿命较长。NE555,只需简单的电阻器、电容器,即可组成可控的多谐振荡器。烟雾报警器及电源电路: 图9 烟雾报警器及电源电路 当空气中可燃性气体、烟雾浓度超标时,MQ-2传感器两端电阻骤减,555的4脚电压上升,当大于1V时,555多谐振荡器开始震荡,蜂鸣器发出报警。当可燃性气体、烟雾散去,MQ-2传感器两端电阻增加,555的4脚电压降低,555多谐振荡器停止震荡,报警停止。四、 程序设计与系
13、统仿真4.1 模块介绍与硬件电路相关联,本系统软件包括主程序模块、密码比较判断模块、键盘扫描模块、修改密码模块、1602A液晶显示模块等。系统程序流程如图9所示:开始系统初始化调用E2PROM密码显示主界面输入密码判断密码确定密码开锁模拟声光锁定键盘YN返回Y判断次数N超过N次未超过3次再次输入密码密码设置完毕N设置新密码Y按键N判断按键值返回主界面NY设置解码次数产生随机密码输入密码N=0x84N=0x82N=0x11图9 系统程序流程图4.1.1 主程序模块主程序主要用于定义全局变量,给全局变量赋初值,初始化E2PROM,启动定时器以及从AT24C02中读取密码,为整个程序提供数据;检测按
14、键;调用显示等功能。4.1.2 密码比较判断模块该模块的功能是将键盘输入的密码利用if语句与设定的密码进行逐个比较,若密码完全正确则开锁;若不正确,则开启报警电路,复位后重新输入密码。其密码输入和比较判决流程图如图10所示。输入密码核对键盘锁定,开启报警电路开锁,灯亮,可密码修改NY复位图10 密码输入和比较判决流程图4.1.3 键盘扫描模块键盘使用矩阵式键盘,由行和列组成,CPU对所有键盘进行监视,从而实现逐列扫描键盘确定被按键的具体位置、判断键盘上有无键按下、消除去抖动、判断闭合的键是否释放等功能。如图11所示,为键盘扫描流程图。开始延时去抖动计算输入键值键值送入单片机有按键输入?有按键输
15、入?有按键输入?返回NNYY图11 键盘扫描流程图4.1.4 修改密码模块在密码输入正确情况下,可以按下“重置密码”对密码进行重新设置,每设定一位就将密码送给AT24C02存储起来,当设置6位密码完毕后,系统将自动跳到程序开始,调用新设置的密码。图12为修改密码流程图。开始输入原密码密码比较比较正确?输入新密码再次输入新密码调用AT24C02中密码比较正确修改成功返回菜单键盘锁定,启动报警电路复位YN图12 修改密码流程图4.1.5 1602A液晶显示模块此模块包括液晶初始化、命令的输入等。五、系统功能5.1 实现功能本设计中系统可实现功能如下:(1)通过输入密码控制开关;(2)通过发光二极管
16、和蜂鸣器,对解密正确或者错误进行声光报警;(3)6位密码修改;(4)在密码遗失情况下,通过初始密码进行密码再设置;(5)采用AT24C02外部存储器,完成断电密码保护功能;(6)采用DS1802温度传感器,时时检测温度;(7)采用TDA2822的语音模块;(8)采用MQ-2烟雾报警;(9)音乐播放;(10)时钟;(11)键盘照明;此外设计留有扩展口,用户可根据自身不同需求进行扩展、完善功能。5.2 系统运行待机状态:(1) 电磁锁闭合;(2) LCD显示欢迎界面;(3) 烟雾报警器及温度传感器处于工作状态,以便及时发现险情;(4) 可通过按键接通门铃和语音模块与主人对话;工作状态流程:进入系统
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子 密码锁 设计
