您当前的位置:五五电子网电子知识电子制作综合-其它用PIC16F877A单片机制作的4位密码电子锁 正文
用PIC16F877A单片机制作的4位密码电子锁

用PIC16F877A单片机制作的4位密码电子锁

点击数:7229 次   录入时间:03-04 11:55:23   整理:http://www.55dianzi.com   综合-其它

  随着社会的发展,传统的机械锁被破解的概率越来越高了,“新型的盗贼”也学会了与时俱进,通过各种技术方法和手段即会在短时间内轻松的开启结构复杂的机械锁,会不留痕迹的登堂入室,会给失主和警方留下各种不易解惑的疑团。要是在家中现有的防盗门上再加上一把电子密码锁,就彻底杜绝了单一机械锁易被开启的弊端,可以极大的提高门锁的安全防范性能。特别是在防止“家贼和内鬼”的防盗方面电子密码锁有着无与伦比的优越性,机械锁是无法与之比拟的。

  电子密码锁是一个很有趣的电子制作项目,它具有一定的挑战性,能锻炼我们的电路设计能力,培养合理、正确的逻辑思维关系,验证电路设计的正确性、可行性与否以及动手制作电子装置的耐心和乐趣。用硬件电路制作的电子锁虽然也具有一定的保密性,但是它存在密码编制组数少,编制、更改密码呆板,不够方便灵活等不足,密码一旦被局外人识破、获取,修改密码的工作也需要一定的时间和过程,不利于安全防范的继续,还会给密码锁的使用者带来不安全的心理疑虑,故而,实用性相对较差。本文介绍的用PIC16F877A单片机制作的电子密码锁能够完全满足一般使用场所对物品管理的需要,它用4位LED数码管显示当前密码组的数字,具有显示醒目、清晰、亮丽,它还具有很好的保密性和操作的便捷性,修改、更换密码可随时进行,简单、快捷,不受任何主、客观条件的限制和约束。本密码锁具有多达16,000组的密码组合数供选择、设置、使用,同时设置了三次错误码开锁自动锁死键盘的功能,彻底杜绝了破码人想通过用无度输入数码组的方法开启密码锁的机会。

  PIC16F877A是一个40PIN引脚的8位单片机,其振荡器的工作频率高达20MHz。它具有33个I/O输入/输出端口引脚线可用,具有输出端口驱动能力强的特点,可直接用PIC单片机的1/0输出端口驱动LED数码管,同时PIC,I6F877A单片机片还内含有256字节×8位地址的EEPROM存储器(也称E2PROM存储器),这也是选择用其制作电子密码锁的重要资源之一。用PIC单片机片内的EEPROM存储器存储数据与某些单片机用片外数据存储芯片(如常用的24C02、24C04、93C46、6116等数据存储器芯片)存储数据相比不仅减少了硬件配置,不占用单片机的I/O端口线,从而降低了系统的总造价,简化了PCB电路板的设计工作量和PCB电路板的面积等优点。此外,不象外挂E-PROM、EEPROM芯片那样可从电路板上将其取下,并对其内部数据进行读取、拷贝,所以,相比之下其数据的保密性更好,数据更不容易被拷贝、读出、破解,可以获得更高的数据保密性和软件代码知识产权的自我保护能力。

  用PIC16F877A单片机制作的4位电子密码锁硬件电路如下图所示。

用PIC16F877A单片机制作的4位电子密码锁硬件电路

  上图电路中PIC16F877A的PROTA端口RAO~RA5设置为输出端口。其中RAO端口通过1KQ电阻R13接于Q5的b极,用于驱动Q52SD882中功率三极管(高电平使能),进而控制密码锁电磁铁L1的吸合与释放(或者开/关锁减速电机的动作),RA4、RA5、RA2、RA3分别用于驱动4位动态显示共阳极数码管的个位、十位、百位、千位的“位码”(低电平使能),(自定义最右边的数码管为个位。其实在本制作中原则上是不分个、十、百、千位的,4个数码管之间是没有数制、数值逻辑进位关系的,这里称呼个、十、百、千位的目的只是为了叙述方便而已)。单片机的PORTB端口的RBO~RB5设置为输入端口。其中:RBO通过10KΩ上拉电阻Rl所接的按键S1为密码保存、修改/存储按键;RBl~RB4分别通过各自的10KΩ上拉电阻R4—R7接于个位~千位数码值预置按键S3~S6,同时RB1端口所接的按键S3还兼有当前密码隐含控制功能,短按S3按键:用于个位数码置数;当长按S3按键12秒钟以上时,数码管从当前的显示码变为“0000”,故而,隐含了数码管的开锁密码值,RB5所接的按键S7为读取密码按键或者称开锁确认按键。单片机的①脚为1/MCLR复位端口,该端口与按键S2相接(低电平使能),每按下复位键S2-次,单片机系统即会立刻自动复位。复位后存储在单片机内EEPROM中的开锁密码不会消失、改变。单片机的PORTC端口的RC7~RCO设置为输出端口。其中:RCO~RC6分别通过R14~R20各自所接的470Ω限流电阻与数码管的a~g段码相连,用于段码驱动(低电平使能);RC7则通过1KQ的限流电阻R13接于蜂鸣器驱动三极管Q6的b极(高电平使能)。单片机的PORTD、PORTE两个端口本项目中未用,空置,电路上电后系统默认为输入端口。

  本密码锁设计的工作原理:本密码锁是将数码管显示的当前数码值存入单片机的EEPROM存储单元作为开锁密码,用电磁铁或减速电机作为执行元件控制保险柜或者门锁的锁闭状态的,电磁铁在非吸合状态下将保险柜或者门锁锁死。开锁时,首先输入开锁密码,再按下开锁确认键S7后,单片机将数码管显示的当前数码值与存储在单片机内EEPROM中的原始码值进行比对,若输入的当前开锁数码与存储在单片机内EEPROM中的数码值相一致,则认为开锁密码正确,同时单片机的RAO端口输出高电平,进而驱动开锁电池铁动作开锁;否则,在当前显示数码值与存储在单片机中的原始数码比对后不相等时,则开锁电磁铁不动作,若要是用三次错误的开锁码,单片机即认为是在处于非法开锁状态。程序将锁死面板上所有的操作按键锁死,同时蜂鸣器报警。

  密码锁的初次使用:电路首次上电后,四位数码管分别显示:“0000”四个数码值,蜂鸣器不响,电磁铁处于吸合状态,对应被保护的“保险柜或者门锁”处于可以打开的自由状态。此时,使用者可随心所欲的按动密码锁数码值预置按键S3~S6或者按动密码值保存按键S1。上述各按键每按动一次,蜂鸣器都会发出一声“嘀”的提示音,同时数码管则有对应的数码值变化。假若此时按下的是S3~S6中的任意一个数码值预置按键,除了蜂鸣器发出“嘀”的一声音响外,其对应的数码管显示值则会以“N+l”的计数模式递增变化,其中:千位(左边第一位数码)数值是从“O一1—2—3一…一9一A—B一…一E—F_+0”的规律循环显示;个位~百位数码值变化为:“O一1—2—3一…一9—0”循环显示,当我们随意选定一组数字码,如:2010作为开锁密码,并按下密码保存按键S1时,蜂鸣器会“嘀”的响一声;同时数码管显示:“EOOO”,表示意为此组数字码储存成功,电磁铁此刻处于释放状态,对应被保护的“保险柜或者门锁”处于锁闭状态。在数码管显示任何数值码的情况下,每按下密码保存键Sl-次,这个当前显示的数字组合码值都会被当作当前最新开锁密码保存在单片机内的EEPROM中,并作为唯一的开锁密码。在开锁时,我们要输入正确的、对应的四位组合数码,如:2010后再按下开锁确认键S7,则蜂鸣器“嘀”的响一声,同时电磁铁Ll吸合,密码锁即会被打开,保险柜或者门锁门随即可以开启。当关闭保险柜或者门时,为了快速的隐含当前的开锁密码,需要按住S3(个位数字预置/显示密码隐含)键1.2秒钟以上的时间,当再一次听到“嘀”的一声响后放开S3按键,此时,数码管显示“0000”四位数码值,同时密码锁电磁铁释放,保险柜或者门锁还原于锁闭状态,故而,开锁密码会快速的被隐含起来。当然,也可以随意按一下或几下、一次或几次S3。S6数码管显示值、预置键,同样可以将保险柜或者门锁锁闭。在保险柜或者门锁处于锁闭状态下,如果开锁的人输入了错误的组合密码,同时又按下了S7开锁键,此时除了在每按下一次开锁按键时蜂鸣器会发出“嘀”的响声外,保险柜或者门锁门是不会被打开的,在输入3次错误密码的情况下,又3次按下了S7开锁确认键,则本密码锁将自动锁死,同时蜂鸣器连续、长时间的鸣响,因此该电子密码锁具有很好的报警、威慑作用,同时密码锁面板上的所有可操作按键均被锁死、失灵,从而可以安全、可靠、有效地杜绝了猜码开锁的行为,保护了保险柜或者门中物品的遗失。在密码锁被锁死的状态下,只有主人采用机械的主、辅钥匙同时配合的方法才能将保险柜或者门锁打开。现行市面上销售的商品保险柜或者门锁就是采用这种方法“跨过电子密码锁”开启保险柜或者门锁的。在保险柜或者门锁打开的状态下,按下主电路板上的复位键S2(K-reset)方能消除蜂鸣器的报警。同时,密码锁显示码再次回复到初始上电时的状态,4位数码管再次显示0000四位数字码。而最后设定保存在单片机内EEPROM中的开锁密码仍然存在、有效。若要修改开锁密码,重复上述操作方法即可轻易实现。本密码锁可设置、编组、修改的密码组合数理论上可以做到164=65,536组,考虑到多数人特别是老年人对16进制数比较陌生,不是很习惯,并且本密码锁硬件电路及程序设计在16进制数的情况下输入一个正确开锁密码数也是一件很繁琐的事,所以,程序中除了在千位数码管显示值采用O—F—O十六进制数循环的计数方式外,个位~百位数码仍是采用了传统的人们习惯使用的十进制的计数方式,这样会满足大多数人的习惯,在这种计数方式的情况下本密码锁可获得的密码编码的组合数是16×10×10×10=16,000组,密码锁被非法开启的概率数就是1/16,000分之一乘以3次,由于密码被非法开启次数的限定设置只有3次机会,可见,其保密性和可靠性还是足够高的,16,000这一数字组合值是可以满足一般情况下应用电子密码锁的使用要求的。

[1] [2]  下一页


本文关键字:单片机  制作  密码  电子锁  综合-其它电子制作 - 综合-其它