版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
引言1.1研究背景随着人民生活水平的提高,人们的安全意识不断增强,对安全的要求也越来越高。锁具自古以来就与人们的生活息息相关,如房屋的锁具、门的锁具、重要的财产和车辆的锁具等。这些东西对人来说也是很重要的,所以人们对锁的安全要求越来越高。”“锁”不仅安全可靠,而且使用方便。这也是自古以来人们学习的主要目的。随着科学技术的飞速发展,电子锁应运而生,如指纹锁、刷卡锁、密码锁等电子锁。其中密码锁是最好的。它们不仅安全性高,而且价格低廉,易于被广泛接受。但目前国内自行研制的电子锁还不完善,市场结构还没有形成,电子锁的应用还不够广泛。希望通过不断的努力,电子密码锁能在中国得到广泛的应用。锁是必须用钥匙或密码打开的紧固件,它们被放置在打开和关闭的物体上,以关闭某个空间范围或装置。锁已经开发了好几年了。人们对它们的结构和机理进行了深入的研究。因此,没有钥匙就可以打开的方法和工具层出不穷。在现代人类文明社会中,由于社会中的各种矛盾和冲突,人们的思想道德观念、价值观、文化水平等差异,人民群众的好坏参差不齐,好人可以自觉地调节自己的行为,“无礼”。而且不合适”,虽然没有钥匙,他们不会着急。然而,那些没有道德观念的小偷却试图用高科技手段撬开大门,使绝大多数的居民无法被打败。为什么会这样?由于传统锁具有致命的弱点:(1)锁芯采用普通的铜、铝、锌等材料,无法抵抗强烈的损伤;(2)锁具的制造工艺落后,技术手段落后,无法防止开启。随着社会的快速发展和科学技术的不断更新,单片机技术在我们的生活、工作、科研等领域得到了广泛的应用,已成为一种比较成熟的技术。由于单片机具有速度快、功耗低、体积小、结构简单、使用方便、处理速度快、环境适应性强等特点,已广泛应用于工业建筑、家电、通信设备等领域。单片机是将CPU、RAM、ROM、I/O等主要计算机功能集成到集成电路芯片中的微型计算机。计算机的出现加快了人类改造世界的步伐,但毕竟是巨大的。微型计算机(mcu)就是在这种情况下诞生的。它对我们有什么改变?电子宠物广泛应用于我们的生活中,这些是不可分割的。打开单片机。在过去,这些事情可以不用单片机来完成,但只能使用复杂的模拟电路。然而,用这种方法生产的产品不仅体积大,而且价格昂贵。由于长期使用,元器件老化,控制精度自然会低于标准。单片机产生后,我们将这些东西控制成智能。我们只需要在单片机外部连接一个简单的接口电路,而核心部分则是由人工编写的程序来完成的。这样,产品体积变小,成本降低,长期使用不必担心不准确,易于升级和改进。同样,在电子锁的设计过程中也使用了单片机。从经济性和实用性的角度出发,利用单片机开发了一种具有防盗和自动报警功能的电子密码锁。密码锁的设计方法合理,简单可行,成本低。满足住宅、办公用锁的要求,具有一定的推广价值。1.2研究意义随着人民生活水平的提高和安全意识的提高,对安全的要求越来越高。锁一直是守卫门的铁将军。人们要求它们既安全又可靠,以防被盗和易于使用。这也是储物柜长期以来发展的课题。随着电子技术的发展,各种电子产品应运而生。电子密码锁就是其中之一。由于电子锁的钥匙(密码)数量较多,可与机械锁配合使用,避免仿制钥匙造成的安全隐患。电子锁只需要记住一套密码,不需要携带金属钥匙,避免携带金属钥匙的麻烦,受到越来越多的人的赞赏。目前,在西方发达国家,电子密码锁技术比较先进,种类繁多。电子密码锁已广泛应用于智能门禁系统中,通过多种更加安全可靠的技术来实现对车门的管理,对人们的日常安全具有十分重要的意义。过去使用的锁不仅不方便,而且安全系数低。随着社会的进步和人民生活水平的提高,老式门锁已不能满足人们的要求。此外,人们对防盗的要求也越来越高,特别是为了使用方便。因此,近年来,一种新型的电子密码锁应运而生,并受到人们的青睐。具有报警功能的密码锁,目前正在为人们解决许多问题。然而,市场上的大多数密码锁都是在一些大公司、金融机构、高价使用的,这通常是不可接受的。如果我们设计和生产一个低成本、灵敏可靠的密码锁,它将在防盗和金融安全方面发挥更有效的作用。密码锁是现代生活中最常用的工具之一。广泛应用于保险箱、门、酒店、车库等。电子密码锁克服了机械密码锁数量少、安全性能差的缺点。尤其是单片机控制的智能电子密码锁,不仅功能齐全,而且安全可靠。而电子密码锁只需要记住一套密码,不需要随身携带钥匙,避免了随身携带钥匙的麻烦,越来越多的人喜欢它们。随着我国第三产业的快速发展,电子密码锁将在不久的将来得到广泛的应用,为社会和个人提供便利。随着新技术的不断发展和应用,近年来单片机的发展非常迅速。基于微型计算机应用的新技术革命浪潮正在兴起。单片机的应用已经渗透到冶金、电力、建材、化工、机械、石油、食品等行业。单片机控制无疑是人们追求的目标之一,它给人们带来的便利是不可否认的,其中单片机控制就是一个典型的例子。MCS-51系列单片机应用广泛。它是一个更好的学习单片机技术的系统平台。它也是开发单片机应用系统的一个重要系列。目前,单片机原理与应用的教材大多采用汇编语言来解释和设计程序实例,但汇编语言的学习比较困难。今天,随着信息产业的快速发展,我们生活中不可缺少的设备正朝着小型化、便携化、智能化和自动化的方向发展。电子密码锁是伴随着快节奏的生活而产生的。在我国的六七十年代,它仍然是一把带锁的传统钥匙。无论是单位还是个人,每天都要仔细检查门是否上锁,钥匙不能随意放置。一旦他们不小心忘记了放在哪里,他们可能就不能开门了。传统的锁也很不安全,有些罪犯会尽力打开你的房子来偷东西。电子密码锁的出现使这些问题不再是问题。我们只需要记住六位数的密码。1.3研究现状早在20世纪80年代,日本就生产了最早的电子密码锁。随着日本经济的复苏和电子工业的快速发展,出现了一些采用简单门电路设计的密码锁。IC锁。该芯片采用AT24C02作为断电存储芯片,稳定性高,成本低,可扩展多种功能。红外检测技术、指纹识别技术、语音识别技术、图像识别技术等,这些扩展技术在国外发展迅速,部分已投入使用。目前,在西方发达国家,电子密码锁技术比较先进,种类繁多。电子密码锁已广泛应用于自供电门禁系统中,通过多种更加安全可靠的技术实现门禁管理。80年代以来,随着电子锁专用集成电路的出现,电子锁的尺寸减小,可靠性提高,成本相对提高。因此,它只适用于需要高安全性的场合,需要供电。电子锁的使用范围有限,难以推广。因此,密码锁很难普及。研究方面没有重大进展。20世纪90年代,美国、意大利、德国、日本、加拿大、韩国、台湾和香港的微电子和通信技术的进步为密码锁提供了技术支持,从而促进了密码锁的实际应用。目前,在西方国家,电子密码锁技术比较先进,种类繁多。电子密码锁在智能门禁系统中得到了广泛的应用,使得实现门禁管理更加安全可靠。90年代初,我国对密码锁进行了初步的探索。到目前为止,随着电子技术和信息技术的发展,电子密码锁技术领域发展很成熟。从目前的技术水平和市场接受度来看,键盘电子密码锁是应用最广泛的。本产品主要用于保险箱、保险箱、金库以及储物柜、运钞机等。在其他技术领域,有遥控电子密码锁和卡片式密码锁。电子锁可用于日常生活和现代办公、住宅和办公安全、单位档案、财务报表和一些个人数据保存等场合。它大大提高了主要材料的安全性,安全性可以取代旧的机械锁。目前,密码锁种类繁多,各有其特点。从经济性和实用性的角度,利用AT89C2051单片机开发了一种具有防盗自动报警功能的电子密码锁。密码锁的设计方法合理,简单可行,成本低。满足住宅、办公用锁的要求,具有一定的推广价值。(1)系统设置4位密码,通过键盘输入。如果密码正确,锁将被打开。(2)密码由用户自行设置。在锁定状态下,用户可以自己修改密码。(3)具有自动报警功能。自动报警分为现场报警和远程报警。现场报警采用扬声器。(4)有两种情况可以报警:一是密码输入错误三次,报警;二是门非正常打开,可由系统红外监控装置进行监控,同时报警,保证系统的安全。系统工作时,用户按键输入4位密码,单片机将输入密码与设定密码进行比较。如果密码正确,单片机发出锁定信号,开门,系统不报警。如果密码不正确,相应的指示灯闪烁,要求重新输入密码,重新输入密码的次数不正确。可以超过3次,如果密码输入3次不正确,则发出报警信号。由于数字、文字、图形图像、人体生物特征和时间可以作为电子信息的关键,这些信息的结合可以使电子防盗锁获得高度的保密性,如保管良好的金库,需要使用电子IC防盗锁具有复合信息密码,是小偷的“大道”。一英尺,一英尺高。综合利用信息还可以使电子防盗锁无限扩大产品多样化的可能性,为用户提供“千载难逢,各得其所”的选择。目前,智能电子密码锁的发展已经达到了很高的水平。由于电子元器件的空前发展,特别是近年来单片机的应用,功能和稳定性都比较全面。在保密性方面,电影基本实现了人眼识别、指纹识别和人声识别。它在国外发展较早,因而被广泛应用。主要用于银行、保险柜等家用配件价值较高的场所。无论是自行开发还是进口,在国内也发展得更快,在重要领域也得到了更多的应用。因为价格比普通的子弹锁贵,所以在早年使用较少。现在越来越受到普通人的欢迎,未来的发展将越来越受到欢迎,因为它的功能、安全性与大理石锁是无法比拟的。发展前景十分广阔。1.4研究内容本文主要介绍了用STC89C51单片机控制的电子密码锁功能以及相应的硬件电路设计,本系统还包括报警系统、LCD1602显示和4×4矩阵键盘。本设计同时包括了开锁、关锁、修改密码、超次报警、超次锁定和输错报警等功能。本设计通过P0口控制LCD显示,当密码输入正确时LCD显示OPEN!密码输入错误显示ERROR!当密码错误超过三次时自动锁定。并且本设计还增加了红外遥控功能,可通过遥控器进行远距离控制。
2系统总体方案设计2.1电子密码锁设计的具体要求(1)为了提高密码的安全性,输入密码时,液晶屏上只显示“*”号。(2)本文设计的电子密码锁和解锁密码为六位密码。(3)显示“INPUTPASSWORD”时输入密码;当输入密码正确时,LCD显示屏显示“OPEN”;当密码输入错误时LCD显示屏显示“ERROR”。(4)当密码输入错误达到三次时,电子密码锁自动锁定。(5)4×4的矩阵键盘其中包括“0-9”的数字键、“*”、“#”和“A、B、C、D”的功能键。(6)本设计还具有报警功能。当密码错误次数达到3次时,蜂鸣器发出报警声,LED灯亮3秒。(7)用户可自行修改密码,先输入旧密码,再输入新密码,新密码需确认两次,以防操作错误。2.2设计思路本设计主要由矩阵键盘、单片机、液晶显示器和密码存储器组成。矩阵键盘主要用于输入和修改密码。用户通过矩阵键盘输入密码,然后将其传送到单片机。然后,单片机将传输的用户密码与系统中设置的原始密码进行比较,判断密码是否正确。然后控制销的高低电平根据密码的错误判断是解锁还是报警。在实际使用中,只需要单片机。芯片机的负载可由继电器改为电子密码锁的电磁吸盘。当然,电磁吸力线圈也可以通过继电器的常开触点来控制。2.3系统总体框图系统由软件和硬件两部分组成。软件部分由主程序、液晶显示程序、初始化程序、启动程序、关机程序、键盘扫描程序、构建功能程序、密码设置程序、EEPROM读写程序、延时程序等组成。硬件部分包括电源输入模块、时钟电路模块、复位电路模块、密码存储电路模块、显示电路模块、键盘输入模块、报警电路模块、解锁电路模块和红外接收模块。示意图如图2.1所示。STC89C51STC89C51单片机电源输入模块复位电路模块密码存储电路模块显示电路模块键盘输入模块报警电路模块开锁电路模块红外接收模块时钟电路模块图2.1电子密码锁原理框图
3硬件设计3.1单片机STC89C51简介STC89C51是一种低功耗、高性能的CMOS8位微控制器。它还具有4K的系统可编程闪存。在单片机中,它具有8位CPU和系统可编程闪存,为许多嵌入式控制应用系统的缓慢处理提供了一种有效的解决方案。STC89C51具有以下标准功能:1、兼容MCS51指令系统2、4K可反复擦写FlashROM3、32个双向I/O口4、256x8bit内部RAM5、时钟频率0-24MHz6、可编程UART串行通道7、6个中断源8、3级加密位9、2个16位可编程定时/计数器中断10、低功耗空闲和掉电模式11、4k字节Flash此外,还可以将STC89C51单片机的频率降低到0赫兹,从而降低工作消耗,实现静态逻辑运算。在空闲模式下,CPU将停止工作,但串行端口、RAM、中断、计时器/计数器将继续工作。同时具有断电保存功能,RAM内容保存,振荡器冻结,单片机立即停止所有工作,直到出现下一个中断或硬件复位。3.2时钟电路模块STC89C51单片机通常通过两种方式产生时钟信号:一种是内部时钟电路产生的时钟信号,另一种是外部时钟电路产生的时钟信号。单片机STC89C51具有内部振荡电路。只要将晶体振荡器连接到单片机XTAL1和XTAL2的引脚上,就可以形成自激振荡器,并在单片机内部产生时钟脉冲信号。图中的电容C2和C3起到了稳定频率和快速起振的作用,电容值一般在在5~30pF,典型值为30pF。内部时钟方式如图3.1所示:图3.1STC89C51内部时钟电路3.3复位电路模块为了在STC89C51单片机内部执行复位操作,只需在RST引脚中引入一个高电平,并保持两个机器周期。同时,当管脚能连续保持高电平时,单片机能保持循环复位状态。最简单的自动复位电路是通过外部复位电路的充放电电容器实现上电的自动复位。为了实现自动上电复位,只有VCC上升时间保持在1毫秒以内。单片机的复位不仅需要上电复位,有时还需要手动复位按键。本设计采用按键手动复位,通过方模式实现按键手动复位。当按下S4键时,单片机的RST(9)终端与电源VCC相连,实现系统复位。图3.2STC89C51复位电路3.4密码储存电路模块密码存储电路存储管理员密码、原始密码和用户设置的密码。当用户通过输入设备输入密码时,系统自动将输入密码与密码存储电路中的密码进行比较。当密码相同时,根据输入的密码生成相应的操作,当密码不同时,发送提示。输入错误。在这种设计中,AT24C02用于存储这些密码信息。AT24C02是美国阿特梅尔公司的一种低功耗CMOS型可擦除可编程只读存储器。它有256*8位的存储空间。具有体积小、抗干扰能力强、数据丢失容易、擦除次数多(10000次以上)、工作电压宽(2.5-5.5伏)、写入速度快(10毫秒以下)等特点。另外,AT24C02是一种采用I2C总线进行数据读写的串行设备,占用资源少,I/O线路少,具有在线编程功能,使得数据的实时访问非常方便。I2c总线协议中的发送器指的是向总线传输数据的所有设备,而接收器指的是从总线接收数据的所有设备作为接收器。主设备产生所有启停信号和串行时钟,并控制数据传输。主设备和从设备都可以用作发送器或接收器,但数据传输模式由主设备控制。由于a0、a1和a2可以形成从1000到111的8种情况,即通过设备地址输入终端a0、a1和a2,可以将多达8个AT24c02设备连接到总线上,并且可以通过不同的配置制作选择器。件。AT24C02采用I2C协议,采用主从双向通信。主机(单片机)和从机可以在收发状态下工作。SCL引脚主机产生串行时钟信号,并发出控制字,控制总线的传输方向,为启动和停止提供条件。无论是主机还是从机,确认信号ACK在接收到一个字节后发送。密码存储模块的电路如图4.8所示。AT24C02的1、2和3是地址行,用于确定芯片的硬件地址。第八脚和第四脚分别为正电源和负电源。第五脚SDA作为串行数据输入/输出,是一个双向I2C总线串行,可用于数据传输。6英尺SCL是串行时钟输入线路。SDA和SCL需要通过10k电阻上拉与正电源连接。第七只引脚需要接地。图3.3AT24C02的电路接线图如图3.3所示,P34连接到T0,P35连接到T1。AT24C02具有单片机内部地址寄存器。当AT24C02读写时,地址寄存器自动加1,从而实现下一个存储单元的读写。单芯片计算机以单一操作模式读取所有字节。此外,一个操作可以同时写入多达8个字节的数据,这大大减少了写入时间。3.5LCD显示模块模块液晶显示器在我们的日常生活中并不陌生。在正常情况下,我们通常使用以下输出终端:发光管、液晶显示器、LED数码管。其中,发光管和LED数码管是常用的。软硬件操作简单易懂。在单片机系统中,采用LCD作为输出器件有三个主要优点。(1)传统阴极射线管显示器(CRT)的每一个点在接收到信号时都会产生亮光,但需要不断地刷新亮点。但与液晶显示器(LCD)不同的是,液晶显示器的每一个点在接收到信号时都会发出恒定的光,并始终保持这种亮度和颜色。因此,液晶屏更亮,不会闪烁,造成视觉疲劳。(2)LCD各连接口数字化、通用化、简单化,与单片机系统连接时易于插拔。(3)液晶显示器上的数据变化是通过改变显示屏上液晶分子的状态来实现的,而传统的CRT显示器比同样显示区域的LCD显示器更复杂,重量更重。本设计选用的显示装置为LCD1602。它是一种点阵液晶显示模块,专门用于显示字母、数字、符号等。1602液晶也称为1602字符液晶。它由多个5x7或5x11点阵字符位组成,可同时显示16x2个字符(16列2行)。一个字符需要一个点阵字符位来显示,字符和行之间的间距在显示器上被隔开,这使得数据看起来简单明了。LCD1602液晶显示器每个点阵都可以显示一个字符。实物如图3.4。图3.4LCD16022.4.1引脚定义LCD1602具有16个引脚。引脚示例如图3.5。各引脚功能见表3.1。图3.5LCD1602引脚示例表3.1引脚功能表序号名称描述1GND接地2VCC接+5V3VL液晶显示器对比度调整端4RS寄存器选择端5RW读写控制端6EN使能端7-14D0-D7双向数据端15BL+背灯电源正极16BL-背灯电源负极2.4.2指令介绍LCD1602液晶显示器内部共有11条指令。各指令定义及功能见表3.2。表3.2LCD1602指令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L**6置功能00001DLNF**7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容2.4.3显示自定义字符显示自定义字符的步骤如下:(1)首先将自定义字符写入CGRAM。LCD160中包含的CGROM字符代码表中00H~07H地址的内容未定义。它是用户定义的区域。用户可以定义CGRAM的内容。内容设置时,应逐行设置,每行对应一个CGRAM,每行5个点,共8行。(2)将CGRAM中的自定义字符传输到DDRAM。首先写下行地址。格式见表3.3。然后设置CGRAM数据的内容。见表3.4。表3.3行地址格式RSR/WDB7DB6DB5-DB3DB2-DB00001字符地址行号表3.4设定CGRAM中的数据格式RSR/WDB7-DB5DB4-DB010一般取‘000’每行5点的字模数据显示电路如图3.6所示。图3.6显示电路3.6键盘扫描电路模块本设计采用矩阵键盘输入密码。该方法可以减少键盘和单片机接口占用的I/O线数。矩阵键盘又称行列式键盘。它的线路由四条I/O线路和四条I/O线路组成。每个键都设置在线条和线条的每个交点处。所以键盘上的键是由四行和四行组成的,四行是4*4。这种矩阵键盘结构有利于提高单片机系统中I/O端口的利用率。当线路数量较大时,结构与港口线路的差异最为明显。例如,向矩阵键盘添加一行可以组成20个键,而直接使用端口行只能添加一个键。因此,4*4矩阵键盘更适合我们的电子密码锁。图3.7为键盘模块电路图。图3.7键盘模块电路图3.7声音提示模块声音提示模块使用蜂鸣器作为报警装置。当密码输入错误达到三次时,蜂鸣器发出警报声,三秒钟后停止。蜂鸣器是一个集成的电子扬声器,由直流电压供电。它主要用作电脑、报警器、复印机、电话、打印机、定时器、电子玩具、汽车电子设备等电子设备中的扬声器。蜂鸣器的类型可分为电磁蜂鸣器和压电蜂鸣器。在电路中,蜂鸣器由字母“H”或“HA”表示(旧标准使用“FM”、“ZZG”、“LB”、“JD”等)。蜂鸣器由三部分组成:三极管、蜂鸣器和限流电阻。蜂鸣器作为发声元件,两端施加直流电压或方波,发出报警。其主要参数有工作电流、工作电压、声音方向、工作频率、形状尺寸、驱动方式(直流/方波)等,可根据需要进行选择。本设计采用有源蜂鸣器。声音报警电路如图3.8所示。其中晶体管Q1起开关的作用。当基极处于低电平时,晶体管饱和导电,发出蜂鸣器声音;当基极处于高电平时,晶体管断开,蜂鸣器停止。图3.8声音报警电路3.8继电器控制模块继电器控制模块实现了继电器功能与接触器功能的集成。主要控制部分线路的切换。在本设计中,控制负载的切换。电磁继电器的元件主要由电枢、弹簧、电磁铁、动触头和静触头组成。首先,线圈应产生电磁效应。因此,应在线圈两端加上电压,使线圈中的电流在线圈中循环。最后,电枢能克服电磁力作用下弹簧的张力,回拉到铁心,从而带动电枢的动触头闭合和静触头闭合。当线圈两端的电压断开时,电磁吸力消失,电枢失去反向吸力。在弹簧的张力作用下,它回到原来的位置,从而打开动触点和静触点。通过这种闭合和断开的方式,可以达到电路导通和断开的目的。继电器中常开和常闭触点也可通过以下方式区分:在通电状态下,继电器线圈的静态触点称为“常闭触点”;在断电状态下,当线圈不通电时,继电器线圈的静态触点称为“常开触点”。d.图3.9继电器控制负载电路继电器控制负载电路如图3.9所示。电路中的继电器由PNP三极管驱动。当阈值低于设定值时,单片机将保持高电平状态,继电器打开。当阈值高于设定值时,单片机由高电平变为低电平,三极管导继电器接通。因此,继电器在电路中起开关作用。它还驱动负载。3.9红外接收模块本设计中,红外控制模块主要用于遥控器的发射电路和电路板上的接收电路。遥控器按键产生的指令信号从发射电路发送到电路板上的接收电路。接收电路对信号进行解码并发送到单片机。红外遥控发射电路发射的红外光波由红外发光二极管进行调制,红外接收电路的结构由硅光伏电池、三极管和红外接收二极管组成,将红外光波转换为红外光波。由红外发射器产生的T波,转换成相应的电信号,送至后放大器。发射电路由指令键或杠杆、调制电路、驱动电路和发射电路指令编码系统组成。当指令由指令键或操作杆发出时,指令编码电路根据发出的指令生成相应的指令编码信号。指令编码信号由载波进行调制(某一频率的数据和载波进行“和”运算),然后由驱动电路放大功率,最后由发射电路放大功率。发送调制指令编码信号。接收电路由驱动电路、放大电路、调制电路、执行电路、接收电路和指令译码电路组成。接收电路的功能是接收发送器发出的调制编码指令信号,然后放大接收到的编码指令信号并发送到解调电路,解调电路将编码指令信号转换并恢复为编码信号。最后,根据译码信号,通过驱动电路和执行电路对各种指令进行具体的操作控制。集成红外连接器电路如图3.10所示。图3.10一体化红外接器电路其中VCC端接电源,HW接单片机的P3.3(INT1)端。
4软件设计4.1主程序模块本系统软件主要由主程序和若干个子程序组成。需要实现以下功能:识别矩阵键盘输入的密码;用户设置密码;解锁和密码错误报警。因此,系统程序分为以下几个模块:主程序模块、扫描键盘键盘键盘扫描子程序模块、用户设置新密码的密码设置子程序模块、实现解锁和密码错误报警功能的解锁子程序模块。主程序设计流程图如图4.1所示:开始开始初始化模式选择输入密码密码比较开锁手动清除B输入旧密码输入新密码存入缓存区再次输入密码是否相同A设置完毕图4.1主程序的流程图首先,初始化后,进行模式选择。模式A:要修改密码,首先输入旧密码,然后输入新密码,新密码存储在缓冲区中,然后再次输入新密码。如果两个密码相同,则设置完成,如果两个密码不同,则重新进入;模式B:解锁模式,识别钥匙后输入密码。系统自动与存储的密码进行比较,密码正确时解锁,密码错误时清除并重新输入。4.2键盘扫描子程序本程序为扫描矩阵键盘输入的密码。键盘扫描键盘扫描有键闭合延时去键抖动扫描键盘找到闭合键计算键值闭合键释放建立有效标志返回建立无效标志NNNYY图4.2键盘扫描程序流程图YY如图11所示,当扫描键盘时,当关闭无钥匙时,将创建并返回无效标志。当无钥匙关闭时,快速扫描关闭的钥匙以找到关闭的钥匙。否则,将建立并返回无效标志。找到时,计算键值。关闭键被释放。当释放关闭键时,卸载功能知道释放,直到释放为止,当释放关闭键时。发生这种情况时,将创建并返回一个有效标志。4.3密码设置子程序本程序为设置修改用户密码的功能。设置程序设置程序初始化按下设置键输旧密码确认程序所输入旧密码正确?输新密码确认程序设置成功输入次数加1次数>3?报警程序N返回确认程序再次输新密码两次新密码输入相同?图4.3设置密码子程序如图4.3所示,这个为密码修改流程,程序初始化后按下设置键输入旧密码并按“#”确认,当密码正确时,连续两次输入新密码并按“#”确认,当两次密码相同时,设置成功,两次密码不相同则重新输入新密码。当旧密码输入错误时,系统初始化,重新输入密码,并且输入错误次数加一,当次数达到三次是报警。4.4开锁子程序本程序为密码锁开锁的程序。图4.4开锁流程图如图4.4所示,这是解锁的操作过程。首先,程序初始化。打开解锁键后,通过矩阵键盘或遥控器输入6位密码,并按下确认键。将密码输入与保存在系统中的密码进行比较。如果密码相同,则解锁成功。如果密码不同,则解锁成功。失败,加上错误数加1,然后重新启动解锁过程,当错误数达到3次时,报警程序启动。
5系统制作与调试5.1焊接流程及注意事项1、焊接流程首先,根据系统整体电路原理图,焊接顺序如下:(1)首先,焊接单片机最小系统的外围电路:晶体振荡器电路、复位电路和时钟电路。(2)根据原理图中LCD各插脚的序列号,将插脚焊接到相应的MCU插脚上。(3)然后焊接点稍复杂的矩阵键盘。首先将电路板的电路和原理图排列清楚,然后将矩阵键盘焊接到电路板上。(4)矩阵键盘焊接时,可焊接报警电路。(5)然后焊接密码锁的钥匙解锁电路。(6)最后,其余接口与其它电路焊接良好。(7)注意接地接口与高层接口的焊接。2。焊接LCD注意事项:(1)在LCD上焊接针金属底座时,玻璃端应与电路板保持一定距离,以保证金属底座的柔韧性,焊接温度不应过高,低于260度,焊接时间不应过长。否则,长时间高温容易损坏部件。(2)焊接液晶显示器时,必须先调整基板和销金属底座的位置,否则焊接后调整位置时,容易对基板和销金属底座造成不可修复的损坏。焊接液晶显示器时,电路板应平放,焊接前应放置液晶显示器。(3)焊接液晶显示器时,基板不宜长时间用电烙铁熏蒸,清洁电路板时应避免基板,以免损坏密封胶和偏光器。(5)未使用的显示器在表面贴有保护膜,焊接过程中不能撕下,否则融化的焊锡丝和其他化学物质会对显示器造成影响,而且清洗的时候也会让显示器进水。3、单片机焊接注意事项:STC89S51单片机中的DSP和ARM微处理器是非常脆弱的,焊接过程中一不小心就会对它们造成严重破坏。因此在焊接单片机时,需特别注意电焊笔的温度,最好能够控制在300度以下,并且焊接的时候,引脚焊接时间也不能过长,以防止引脚温度过高烧毁内部芯片。焊接单片机时,最好选用质量比较好可以调温的电焊笔。4、其他的电子器件焊接须知:一般分四步进行。焊接准备:清理需要焊接的部件。在焊接前,应将焊接在部件周围的部件从外部断开,以便焊接笔能接触到焊点,防止误烧其他部件。(2)开始焊接:在焊接部件的底脚上用少量的焊料和松香接触电焊笔的头部。假设焊锡均匀地涂抹在底脚周围,然后将其去除。如果需要消除元件的焊接误差,则用焊锡笔将焊锡熔化在元件的底部,并用手将元件拉出。(3)清洁电路板:首先用湿海绵擦拭电路板。对于不小心喷在电路板上的焊锡,可以用焊锡笔轻轻触摸,然后将其粘在一起。(4)检查焊点:仔细检查各部件的焊点是否光滑,各部件焊接是否牢固,如有问题应处理。5.2调试1、仿真调试protues是单片机仿真系统中应用最广泛的软件之一。它可以实现许多功能。实现了程序与原理图的连接。它还可以单独用作绘制原理图的工具。其功能与protel相同。同时,还可以生成pcb布局。这样,它就类似于protel。该软件与绘图原理图、印刷电路板布局和仿真相结合。protues此软件相对简单易用。在良好运行环境的前提下,直接打开isis。要进入主界面,在左栏框中有一个快捷键p(从库中选择)。单击后,会出现一个对话框,然后输入要查找的组件。然后,单击确认按钮时,所选设备将显示在界面左上角的小框中。单击鼠标左键时,它将被放置在层中。然后,当您直接将鼠标放在连接器上时,将显示一个画笔标记。此时,您可以按住鼠标左键进行连接。在硬件支持环境下,将proteus和keil程序设计的电路编译成芯片可识别文件,装入proteus原理图芯片进行仿真测试,并对误差进行修正。图5.1仿真成功密码正确运行仿真后,在proteus中通过键位矩阵输入正确的密码后,LCD显示屏显示“OPEN”,表示输入正确。图5.2密码正确黄灯亮在调整之前,必须确保程序完整且示意图正确。我们还需要在正确的平台上操作。检查无误后,打开原理图,点击单片机会出现一个对话框,然后添加生成的。要实现十六进制文件。更重要的是这一代。十六进制文件。首先,程序被加载到keil软件中进行编译。如果没有错误,直接单击工具栏将弹出对话框。然后是。通过选择适当的选项,可以生成十六进制文件。然后按照生成的路径查找文件。找到它并将其加载到之前单击的对话框中。然后点击运行按钮进行模拟,并按照设计功能进行调试。当密码输入正确后,LCD显示屏显示“OPEN”,同时LED灯也亮起来。2、实物调试(1)焊接好的密码锁,需要先输入管理员密码:“131420”,并按“#”号键确认,密码便会重置为“000000”;(2)通过矩阵键盘(或遥控器)输入“000000”,LED灯亮,电磁锁打开,按“*”再次锁住;(3)修改密码:连续两次输入“000000”并按“#”,进入修改界面,输入想要修改的密码“123456”并按“D”确认,再重复一次并可讲密码修改为“123456”;(4)通过矩阵键盘(或遥控器)输入“000000”,显示屏显示ERROR,表示错误,再输入“123456”,显示屏显示OPEN,LED灯亮,电磁锁打开;(5)掉电保存功能:这时,关闭电源再打开,输入“123456”,显示屏显示OPEN,LED灯亮,电磁锁打开,密码仍为“123456”;(6)当密码忘记时,可以输入管理员密码“131420”,密码便可重置为“000000”(7)报警功能:当密码输入错误达到三次后,蜂鸣器报警并锁定键盘。密码锁实物如图5.3所示。图5.3实物图片
结论随着科学技术的不断发展,电子密码防盗锁作为防盗锁越来越重要。考虑到普通锁带来的不便,如果用机械钥匙开锁,结构简单,安全性不好。为了满足人们对锁的使用要求,提高锁的安全性,密码锁代替钥匙应运而生。电子密码锁是通过密码输入控制电路或芯片工作,从而控制机械开关的闭合,完成解锁和锁定任务的电子产品。产品种类繁多,包括简单电路产品和基于芯片的高成本产品。目前广泛使用的电子密码锁是以芯片为核心,通过编程来实现的。它的性能和安全性大大超过了机械锁。它的出现给人们的生活带来了极大的便利,市场前景广阔。我相信随着社会的进一步发展,它的方便性、安全性、实用性、紧凑性和精致性将越来越受欢迎,它是人们在家旅游的必备产品。提高对单片机原理和应用知识的掌握。提高对数字、模拟和电气知识的掌握。熟悉单片机编程语言。熟悉Protel环境下单片机系统的设计方法,熟练掌握Keil和Protel调试技术。促进电子密码锁知识的普及和发展。本设计是基于单片机实现电子密码锁。基本完成了有效钥匙提示、输入错误提示、控制解锁级别、控制报警电路、修改密码等功能。该系统具有结构简单、硬件少、易于实现、性能稳定可靠、成本低等特点。在设计过程中,我查阅了大量相关资料,详细了解了各芯片的作用、工作原理、各芯片的插针连接方式。对系统硬件设计、电路原理图及仿真、软件流程图及具体的汇编语言设计进行了相应的改进。本设计涉及Protus和Proel99以及一些单片机指令。通过近几年使用这些说明,我们对它们有了更深的理解。对于Keil软件在软件部分的使用,我们对汇编语言和C语言有了更深的理解。通过完成设计,我们对所学知识有了更深的理解,实现了从理论到实践再到理论的几次飞跃,认识到科学知识应该为社会服务。只有掌握足够的知识,我们才能更好地为社会作出贡献。我学会了用我学到的知识来解决问题。
参考文献[1]江路明,《模拟电子技术基础》,江西高校出版社,2008年[2]张成,周媛媛等.指纹采集技术及其产品发展趋势.电子技术应用,2004年[3]柴晓光,岑宝炽.民用指纹识别技术,北京:人民邮电出版社,2004[4]丁化成,耿德根等.AVR单片机应用设计,北京:北京航空航天大学出版社,2002[5]张毅刚.单片机原理与应用,北京:高等教育出版社,2006[6]张天凡.51单片机C语言开发详解,北京:电子工业出版社,2008[7]温正,何嘉扬等.AVR单片机开发从入门到精通,中国电力出版,2009[8]李泓.AVR单片机入门与实践,北京航空航天大学,2008[9]佟长福.AVR单片机GCC程序设计,北京航空航天大学出版社,2006[10]张军,宋涛.AVR单片机C语言程序设计实例精粹,电子工业出版社,2009年01月[11]严天峰.单片机应用系统设计与仿真调试,北京航天航空大学出版社,2005[12]周立民.单片机应用系统设计.北京:北京航空航天大学出版社,1990.[13]张维振.无线电设备装接调试与检测维修实用手册[M],北京:银声音像出版社,2004[14]李贵山,杨建平等.微型计算机测控技术。北京:机械工业出版社,2002.[15]张锡富.传感器.北京:机械工业出版社,2004.[16]曹承志.微型计算机控制技术.北京:机械工业出版社,2001.[17]黄贤武.传感器实用电路设计.成都:电子科技大学出版社,1998.[18]李贵山,周征等.检测与控制技术.西安:西安电子科技大学出版社,2006.[19]岳学军,陈姗,陆健强,徐兴,宋淑然.基于单片机与串行通信的电子密码锁设计[J].云南农业大学学报,2009,01:154-157.[20]张云,周明辉,周海林,李爱华,孟玮.基于AT89S51的多功能电子密码锁设计[J].电子设计工程,2010,06:23-25.[21]韩团军.基于单片机的电子密码锁设计[J].国外电子测量技术,2010,07:58-61.[22]戴文雯.采用AT89C51的电子密码锁的设计[J].电子产品世界,2013,10:61-64.[23]闫荷花.基于单片机与串行通信的电子密码锁设计[J].电子世界,2013,24:37.[24]胡绍忠.一种基于单片机AT89C51电子密码锁的设计与实现[J].无线互联科技,2013,11:84.[25]彭松,赵丽媛,王闳,武桐桐,张百发.智能电子密码锁的设计与研究[J].电子制作,2014,04:60-61.[26]李飞.基于单片机与串行通信的电子密码锁设计[J].电子制作,2014,06:6-7.[27]汪浩,陈学英.基于FPGA的电子密码锁设计[J].现代电子技术,2014,19:157-159.[28]董海棠,张旭,冯中毅.基于单片机的电子密码锁设计[J].自动化与仪器仪表,2014,10:42-44.[29]刘超.基于数字混沌的一次一密电子密码锁设计[D].大连海事大学,2015.[30]孙君曼,马庆华,扈刚.基于PIC16C57单片机的电子密码锁的设计与实现[J].工业控制计算机,2002,07:54-55+59.[31]李珍,王国宇,崔丽娟.基于FPGA的可靠性电子密码锁设计[J].现代电子技术,2013,07:151-153.[32]马桂云.基于单片机的电子密码锁设计[J].电子测试,2013,12:263-264.[33]李杰.基于非射频识别技术的非接触式电子密码锁的设计与实现[D].吉林大学,2009.[34]阎思明.新型射频遥控电子密码锁的设计[D].河北科技大学,2010.[35]范柳絮,李宏,陈娟,谷志敏.基于CPLD的电子密码锁设计[J].电子测量技术,2008,03:180-182+186.[36]姜华.基于单片机的电子密码锁设计[J].黑龙江科技信息,2012,02:58+311.[37]武红玉.电子密码锁的设计[J].科技视界,2012,15:185-186.[38]梁丽.电子密码锁的计算机仿真设计[J].计算机仿真,2005,02:218-220.
附录[1]系统整体电路图[2]仿真图[3]程序主要源代码#include<REG52.h>#include<intrins.h>#defineLCM_DataP0#defineucharunsignedchar#defineuintunsignedint//#definew6 //定义密码位数//时间计算#defineImax14000//此处为晶振为11.0592时的取值,#defineImin8000//如用其它频率的晶振时,#defineInum11450//要改变相应的取值。#defineInum2700#defineInum33000sbitlcd1602_rs=P2^7;sbitlcd1602_rw=P2^6;sbitlcd1602_en=P2^5;sbitScl=P3^4; //24C02串行时钟sbitSda=P3^5; //24C02串行数据sbitALAM=P2^1; //报警 sbitKEY=P3^6; //开锁sbitopen_led=P2^2; //开锁指示灯bitoperation=0; //操作标志位bitpass=0; //密码正确标志bitReInputEn=0; //重置输入充许标志 bits3_keydown=0; //3秒按键标志位bitkey_disable=0; //锁定键盘标志unsignedcharcountt0,second; //t0中断计数器,秒计数器//解码变量unsignedcharIm[4]={0x00,0x00,0x00,0x00};//全局变量ucharf;unsignedlongm,Tc;unsignedcharIrOK;//voidDelay5Ms(void);unsignedcharcodea[]={0xFE,0xFD,0xFB,0xF7}; //控盘扫描控制表unsignedcharcodestart_line[]={"password:"};unsignedcharcodename[] ={"===CodedLock==="}; //显示名称unsignedcharcodeCorrect[] ={"correct"}; //输入正确unsignedcharcodeError[] ={"error"}; //输入错误unsignedcharcodecodepass[]={"pass"};unsignedcharcodeLockOpen[]={"open"}; //OPENunsignedcharcodeSetNew[] ={"SetNewWordEnable"};unsignedcharcodeInput[] ={"input:"}; //INPUTunsignedcharcodeResetOK[] ={"ResetPasswordOK"};unsignedcharcodeinitword[]={"Initpassword..."};unsignedcharcodeEr_try[] ={"error,tryagain!"};unsignedcharcodeagain[] ={"inputagain"};unsignedcharInputData[6]; //输入密码暂存区unsignedcharCurrentPassword[6]={1,3,1,4,2,0}; //当前密码值unsignedcharTempPassword[6];unsignedcharN=0; //密码输入位数记数unsignedcharErrorCont; //错误次数计数unsignedcharCorrectCont; //正确输入计数unsignedcharReInputCont; //重新输入计数unsignedcharcodeinitpassword[6]={0,0,0,0,0,0};//==============================主函数===============================voidmain(){ unsignedcharKEY,NUM; unsignedchari,j; P1=0xFF; EA=1; TMOD=0x11; IT1=1;//下降沿有效 EX1=1;//外部中断1开 TH0=0;//T0赋初值 TL0=0; TR0=0;//t0开始计时 TL1=0xB0; TH1=0x3C; ET1=1; TR1=0; Delay400Ms(); //启动等待,等LCM讲入工作状态 lcd_init(); //LCD初始化 write_1602com(yi);//日历显示固定符号从第一行第0个位置之后开始显示 for(i=0;i<16;i++) { write_1602dat(name[i]);//向液晶屏写日历显示的固定符号部分 } write_1602com(er);//时间显示固定符号写入位置,从第2个位置后开始显示 for(i=0;i<16;i++) { write_1602dat(start_line[i]);//写显示时间固定符号,两个冒号 } write_1602com(er+9); //设置光标位置 write_1602com(0x0f); //设置光标为闪烁 Delay5Ms();//延时片刻(可不要) N=0; //初始化数据输入位数 while(1) { if(key_disable==1) Alam_KeyUnable(); else ALAM=1; //关报警 KEY=keynum(); if(KEY!=0||IrOK==1) { if(key_disable==1) { second=0; } else { NUM=coding(Im[2],KEY); { switch(NUM) { case('A'): ; break; case('B'): ; break; case('C'): ; break; case('D'):ResetPassword(); break;//重新设置密码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2027届炮车中学物理高三第一学期期中学业质量监测试题含解析
- 山东省枣庄、滕州市2027届高二物理第一学期期中监测模拟试题含解析
- 山东省济宁市第二中学2027届高二上物理期中学业水平测试试题含解析
- 云浮市重点中学2027届物理高二第一学期期中综合测试模拟试题含解析
- 文登市2026年数学三上期末综合测试模拟试题含解析
- 麻栗坡县2027届六年级数学第一学期期末教学质量检测试题含解析
- 2026年脚手架坍塌事故专项应急预案
- 3G-4G-5G业务实操测试题(含详细答案)
- 喷绘广告门店工地渠道拓客方案
- 合规转利润:降本增效全指南(2026)《GBT 39140.1-2020金刚石圆锯片用夹紧卡盘 第1部分:石材加工》
- 汉字偏旁部首读法大全
- 2023年军转自荐信多篇
- 卫生部手术分级目录(2023年1月份修订)
- 电力工程专业设计工日定额9.26
- 初高中英语衔接初高中英语衔接-课件
- 电路分析基础:第八章 阻抗与导纳
- 企业清产核资工作底稿模板-会计师事务所
- 校园环境卫生检查及记录表
- 实验室产品测试标准流程
- (人教部编版)二年级上册语文课课练(全册)含答案
- 学校安全管理ppt
评论
0/150
提交评论