能防止多次试探密码的单片机密码锁
AA6:DJNZR3,AA7
MOVR5,#24
L5:MOVR4,#200
L4:ACALLBP
DJNZR4,L4
DJNZR5,L5
MOVR3,#3
AA7:MOVR5,#40
ACALLBP
DJNZR5,AA7
AA8:CLR00H
AJMPAA1
BP:CLRP3.7
MOVR7,#250
L2:MOVR6,#124
L1:DJNZR6,L1
CPLP3.7
DJNZR7,L2
SETBP3.7
RET
DELAY?MOVR7,#20
L7:MOVR6,#125
L6:DJNZR6,L6
DJNZR7,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才能开锁。否则不能开锁,同时开始报警。
《能防止多次试探密码的单片机密码锁(第2页)》
本文链接地址:http://www.oyaya.net/fanwen/view/175787.html
MOVR5,#24
L5:MOVR4,#200
L4:ACALLBP
DJNZR4,L4
DJNZR5,L5
MOVR3,#3
AA7:MOVR5,#40
ACALLBP
DJNZR5,AA7
AA8:CLR00H
AJMPAA1
BP:CLRP3.7
MOVR7,#250
L2:MOVR6,#124
L1:DJNZR6,L1
CPLP3.7
DJNZR7,L2
SETBP3.7
RET
DELAY?MOVR7,#20
L7:MOVR6,#125
L6:DJNZR6,L6
DJNZR7,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才能开锁。否则不能开锁,同时开始报警。
《能防止多次试探密码的单片机密码锁(第2页)》