下载此文档

防止多次试探密码的单片机密码锁设计方法.doc


文档分类:IT计算机 | 页数:约6页 举报非法文档有奖
1/6
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/6 下载此文档
文档列表 文档介绍
防止多次试探密码的单片机密码锁设计方法    本文提出了一种能防止多次试探密码的基于单片机的密码锁设计方案,根据用户的10条总体要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。    1 引言    很多行业的许多地方都需要密码锁,但普通密码锁的密码容易被多次试探而破译。本文给出了一种能防止多次试探密码的密码锁设计方法,从而有效地克服了上述缺点。2 硬件电路    图1所示是笔者设计的一种密码锁电路。该密码锁主要是按照以下10条用户要求进行设计的:    (1)共8位密码,每位的取值范围为1~8。    (2)用户可以自行设定和修改密码。    (3)按每个密码键时都有声、光提示。    (4)若键入的8位***密码不完全正确,则报警5秒钟,以提醒他人注意。    (5)***密码错3次要报警10分钟,报警期间输入密码无效,以防窃贼多次试探密码。    (6)键入的8位***密码完全正确才能***,***时要有1秒的提示音。    (7)电磁锁的电磁线圈必须用脉冲驱动,每次通电时间不多于2秒,以防烧坏。    (8)密码键盘上只允许有8个密码按键和1个发光管。锁内有备用电池,只有内部上电复位时才能设置或修改密码,因此,仅在门外按键是不能修改或设置密码的。   (9)密码设定完毕后要有2秒的提示音。    (10)成本要比较低,硬件和软件都要尽可能简洁可靠,易于批量生产。    根据总体要求分析,该密码锁电路所需要的I/O口线少于15个,若设计得当,程序不会超过200条指令,所以可选择质优价廉的AT89C1051/2051或者GMS1051/2051,而且不需要外接程序存储器和数据存储器及其它扩展部件。    在图1所示电路中,P1口连接8个密码按键AN1~AN8,***,。BL是用于报警与声音提示的喇叭,发光管D1用于报警和提示,L是电磁锁的电磁线圈。3 软件设计    图2给出了该单片机密码锁电路的软件流程图。图中?AA1~AA8以及START、SET、SAVE是程序中的标号,是为了理解程序而专门标在流程图的对应位置的,分析程序时可以仔细对照参考。        该密码锁中RAM存储单元的分配方案如下:    31H~38H:依次存放8位设定的密码,首位密码存放在31H单元;    R0:指向密码地址;    R2:已经键入密码的位数;    R3:存放允许的错码次数3与实际错码次数的差值;    R4至R7:延时用;    00H:错码标志位。    对于ROM存储单元的分配,由于程序比较短,而且占用的存储空间比较少,因此,在无特殊要求时,可以从0030H单元(其它地址也可以)开始存放主程序。       下面是该电子密码锁的软件源程序代码:    ORG0000H    AJMPSTART    ORG0030H    START:ACALLBP    MOVR0,#31H    MOVR2,#8    SET:MOVP1,#0FFH    MOVA,P1    CJNEA,#0FFH,L8    AJMPSET    L8:ACALLDELAY    CJNEA,#0FFH,S

防止多次试探密码的单片机密码锁设计方法 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数6
  • 收藏数0 收藏
  • 顶次数0
  • 上传人q1188830
  • 文件大小28 KB
  • 时间2020-01-13