0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种安全的密码锁设计电路

电子设计 来源:xx 2019-02-15 16:03 次阅读

一种能防止多次试探密码的基于单片机的密码锁设计方案,根据用户的10条总体要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。很多行业的许多地方都需要密码锁,但普通密码锁的密码容易被多次试探而破译。本文给出了一种能防止多次试探密码的密码锁设计方法,从而有效地克服了上述缺点。

硬件电路

图1所示是笔者设计的一种密码锁电路。该密码锁主要 是以下10条特点:

(1)总共可以设置8位密码,每位的取值范围为1~8。

(2)用户可以自行设定和修改密码。

(3)按每个密码键时都有声音提示。

(4)若键入的8位开锁密码不完全正确,则报警5秒钟,以提醒他人注意。

(5)开锁密码连续错3次要报警1分钟,报警期间输入密码无效,以防窃贼多次试探密码。

(6)键入的8位开锁密码完全正确才能开锁,开锁时要有1秒的提示音。

(7)电磁锁的电磁线圈每次通电5秒,然后恢复初态。

(8)密码键盘上只允许有8个密码按键。锁内有备用电池,只有内部上电复位时才能设置或修改密码,因此,仅在门外按键是不能修改或设置密码的。

(9)密码设定完毕后要有2秒的提示音。

(10)成本低,硬件和软件都很简洁可靠,易于批量生产。

根据总体要求分析,该密码锁电路所需要的I/O口线少于15个,若设计得当,程序不会超过200条指令,所以可选择质优价廉的AT89C1051/2051或者GMS1051/2051,而且不需要外接程序存储器和数据存储器及其它扩展部件,所以成本很经济。

图1 电磁锁原理图

在图1所示电路中,P1口连接8个密码按键AN1~AN8,开锁 信号由P3.2输出,报警和提示音由P3.7输出。BL是用于报警与声音提示的喇叭,K是继电器控制电磁线圈。

软件设计

图2给出了该单片机密码锁电路的软件流程图。图中AA1~AA8以及START、SET、SAVE是程序中的标号,是为了理解程序而专门标在流程图的对应位置的,分析程序时可以仔细对照参考。

3.1 存储单元的分配

该密码锁中RAM存储单元的分配方案如下:

31H~38H:依次存放8位设定的密码,首位密码存放在31H单元;

R0:指向密码地址;

R2:已经键入密码的位数;

R3:存放允许的错码次数3与实际错码次数的差值;

R4至R7:延时用;

00H:错码标志位。

对于ROM存储单元的分配,由于程序比较短,而且占用的存储空间比较少,因此,在无特殊要求时,可以从0030H单元(其它地址也可以)开始存放主程序。

图2 电磁锁程序流程图

源程序

下面是该电子密码锁的软件源程序代码

ORG 0000H

AJMP START

ORG 0030H

START:ACALL BP

MOV R0,#31H

MOV R2,#8

SET: MOV P1,#0FFH

MOV A,P1

CJNE A,#0FFH,L8

AJMP SET

L8: ACALL DELAY

CJNE A,#0FFH,SAVE

AJMP SET

SAVE: ACALL BP

MOV @R0A

INC R0

DJNZ R2,SET

MOV R5,#16

D2S: ACALL BP

DJNZ R5,D2S

MOV R0,#31H

MOV R3,#3

AA1: MOV R2,#8

AA2: MOV P1,#0FFH

MOV A,P1

CJNE A,#0FFH, L9

AJMP AA2

L9 ACALL DELAY

CJNE A,#0FFH,AA3

AJMP AA2

AA3: ACALL BP

CLR C

SUBB A, @R0

INC R0

CJNE A,#00H,AA4

AJMP AA5

AA4: SETB 00H

AA5: DJNZ R2,AA2

JB 00HAA6

CLR P3.5

L3 MOV R5,#8

ACALL BP

DJNZ R4,L3

MOV R3,#3

SETB P3.5

AJMP AA1

AA6: DJNZ R3,AA7

MOV R5,#24

L5: MOV R4,#200

L4: ACALL BP

DJNZ R4,L4

DJNZ R5,L5

MOV R3,#3

AA7: MOV R5,#40

ACALL BP

DJNZ R5,AA7

AA8: CLR 00H

AJMP AA1

BP: CLR P3.7

MOV R7,#250

L2: MOV R6,#124

L1: DJNZ R6,L1

CPL P3.7

DJNZ R7,L2

SETB P3.7

RET

DELAYMOV R7,#20

L7: MOV R6,#125

L6: DJNZ R6,L6

DJNZ R7,L7

RET

END

应用说明

若按键AN1~AN7分别代表数码1~7,按键AN0代表数码8。在没有键按下时,P1.0~P1.7全是高电平1,若某个键被按下,相应的口线就变为低电平0。假如设定的密码是61234578,当按键AN6被按下时,P1.6变为低电平,P1端口其余口线为高电平,此时从P1端口读入的数值为10111111,存到31H单元的密码值就是10111111,也就是BFH。依此类推,存到32H至38H单元的密码值分别是FDH、FBH、F7H、EFH、DFH、7FH、FEH。开锁时必须先按AN6,使从P1口读入的第一个密码值与31H单元存储的设定值相同,再顺序按AN1、AN2、AN3、AN4、AN5、AN7、AN0才能开锁。否则不能开锁,同时开始报警。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43977

    浏览量

    620862
  • 密码锁
    +关注

    关注

    6

    文章

    249

    浏览量

    34572
收藏 人收藏

    评论

    相关推荐

    密码锁电路

    密码锁电路 使用中小型集成运放电路设计电阻密码锁要求完成以下功能Ø用个特定阻值的电阻作为密钥;Ø用Ucc/2作为比较电压;Ø用发光二极管的
    发表于 08-31 13:01

    智能密码锁设计

    本课题是要发设计一种基于单片机控制的智能电子密码锁,主要功能有:按用户使用要求可设置、修改密码,遥控或按键开锁,错误报警、显示等辅助功能。密码可设4~8位,并可在线修改并存储;
    发表于 12-10 20:43

    基于单片机的电子密码锁设计

    密码锁电路失效,使用户免遭麻烦。   密码锁电路包含:键盘输入、密码修改、密码检测、开锁
    发表于 09-24 08:50

    怎样去设计一种基于51单片机的WIFI遥控防盗电子密码锁APP?

    基于51单片机的WIFI遥控防盗电子密码锁APP的原理是什么?怎样去设计一种基于51单片机的WIFI遥控防盗电子密码锁APP?
    发表于 07-16 06:36

    请问怎样去设计一种基于51单片机的密码锁

    怎样去设计一种基于51单片机的密码锁?如何对密码锁的开关进行仿真?
    发表于 07-16 11:04

    怎样去设计一种基于51单片机的汇编密码锁

    单片机课程设计设计课题:密码锁目 录选题背景密码锁目的与意义密码锁的原理系统方案和总体结构整体实验功能硬件设计实验仪器电路原理图软件设计程序设计流程图所用到的函数、功能和原理硬软件调试
    发表于 07-19 06:33

    怎样去设计一种基于51单片机的电子密码锁电路

    怎样去设计一种基于51单片机的电子密码锁电路?基于51单片机的电子密码锁为什么仿真会不成功呢?
    发表于 08-31 07:35

    怎样去设计一种基于单片机的指纹识别电子密码锁

    指纹识别的原理是什么?怎样去设计基于单片机的指纹识别电子密码锁的硬件电路?怎样去设计基于单片机的指纹识别电子密码锁的软件部分?
    发表于 09-18 08:06

    如何去实现一种基于单片机的智能电子密码锁设计

    摘要:随着信息技术的不断发展,信息化时代也逐步进入普通家庭,人们对个人的信息安全以及隐私等私密信息的安全要求不断提高,传统的机械已经不能满足要求。针对此现状设计
    发表于 11-09 08:35

    基于单片机的电子密码锁设计

    系统的开锁功能。蜂鸣器是一种采用直流电压供电的电子讯响器。图3-9是用蜂鸣器指示的开锁机构仿真图。因为在设计中是以蜂鸣器发生来指示开锁是否成功,当密码输入正确时蜂鸣器响起来,代表开了。图3-9开...
    发表于 11-30 08:24

    怎样去设计一种基于51单片机的红外遥控密码锁系统

    安全性即大打折扣。具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。设计功能描述:1、采用51单片机作为主控单
    发表于 12-06 08:26

    怎样利用矩阵键盘去制作一种密码锁

    怎样利用矩阵键盘去制作一种密码锁呢?利用矩阵键盘制作密码锁有何优势?
    发表于 01-20 06:31

    怎样去设计一种基于单片机的四位密码锁

    怎样去设计一种基于单片机的四位密码锁呢?其程序代码该怎样去实现呢?
    发表于 01-21 06:32

    怎样去设计一种基于51单片机+LCD1602的数字密码锁

    数字密码锁电路是由哪些部分组成的的?怎样去设计一种基于51单片机+LCD1602的数字密码锁呢?
    发表于 01-26 07:49

    如何去实现一种电子密码锁掉电存储系统设计

    安全性即大打折扣。具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。随着科学技术的不断发展,人们对日常生活中的
    发表于 02-18 07:17