当前位置:首页 > 单片机 > 单片机
[导读]提出了一种能防止多次试探密码的基于单片机的密码锁设计方案,根据用户的10条总体要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择、硬件设计、软件流程图、单片机存储单元的分配、汇编语言源程序及详细注释等内容。

   摘要:提出了一种能防止多次试探密码的基于单片机的密码锁设计方案,根据用户的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,开锁脉冲由P3.5输出,报警和提示音由P3.7输出。BL是用于报警与声音提示的喇叭,发光管D1用于报警和提示,L是电磁锁的电磁线圈。

3 软件设计

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

3.1 存储单元的分配

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

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

R0:指向密码地址;

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

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

R4至R7:延时用;

00H:错码标志位。

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

    3.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 

4 应用说明

若按键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才能开锁。否则不能开锁,同时开始报警。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

特朗普集团近日取消了其新推出的T1智能手机“将在美国制造”的宣传标语,此举源于外界对这款手机能否以当前定价在美国本土生产的质疑。

关键字: 特朗普 苹果 AI

美国总统特朗普在公开场合表示,他已要求苹果公司CEO蒂姆·库克停止在印度建厂,矛头直指该公司生产多元化的计划。

关键字: 特朗普 苹果 AI

4月10日消息,据媒体报道,美国总统特朗普宣布,美国对部分贸易伙伴暂停90天执行新关税政策,同时对中国的关税提高到125%,该消息公布后苹果股价飙升了15%。这次反弹使苹果市值增加了4000多亿美元,目前苹果市值接近3万...

关键字: 特朗普 AI 人工智能 特斯拉

3月25日消息,据报道,当地时间3月20日,美国总统特朗普在社交媒体平台“真实社交”上发文写道:“那些被抓到破坏特斯拉的人,将有很大可能被判入狱长达20年,这包括资助(破坏特斯拉汽车)者,我们正在寻找你。”

关键字: 特朗普 AI 人工智能 特斯拉

1月22日消息,刚刚,新任美国总统特朗普放出重磅消息,将全力支持美国AI发展。

关键字: 特朗普 AI 人工智能

特朗普先生有两件事一定会载入史册,一个是筑墙,一个是挖坑。在美墨边境筑墙的口号确保边境安全,降低因非法移民引起的犯罪率过高问题;在中美科技产业之间挖坑的口号也是安全,美国企业不得使用对美国国家安全构成威胁的电信设备,总统...

关键字: 特朗普 孤立主义 科技产业

据路透社1月17日消息显示,知情人士透露,特朗普已通知英特尔、铠侠在内的几家华为供应商,将要撤销其对华为的出货的部分许可证,同时将拒绝其他数十个向华为供货的申请。据透露,共有4家公司的8份许可被撤销。另外,相关公司收到撤...

关键字: 华为 芯片 特朗普

曾在2018年时被美国总统特朗普称作“世界第八奇迹”的富士康集团在美国威斯康星州投资建设的LCD显示屏工厂项目,如今却因为富士康将项目大幅缩水并拒绝签订新的合同而陷入了僵局。这也导致富士康无法从当地政府那里获得约40亿美...

关键字: 特朗普 富士康

今年5月,因自己发布的推文被贴上“无确凿依据”标签而与推特发生激烈争执后,美国总统特朗普签署了一项行政令,下令要求重审《通信规范法》第230条。

关键字: 谷歌 facebook 特朗普

众所周知,寄往白宫的所有邮件在到达白宫之前都会在他地进行分类和筛选。9月19日,根据美国相关执法官员的通报,本周早些时候,执法人员截获了一个寄给特朗普总统的包裹,该包裹内包含蓖麻毒蛋白。

关键字: 美国 白宫 特朗普
关闭