1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>能防止多次試探密碼的單片機(jī)密碼鎖

    能防止多次試探密碼的單片機(jī)密碼鎖

    時(shí)間:2023-02-21 00:16:43 電子通信論文 我要投稿
    • 相關(guān)推薦

    能防止多次試探密碼的單片機(jī)密碼鎖

      摘要:提出了一種能防止多次試探密碼的基于單片機(jī)的密碼鎖設(shè)計(jì)方案,根據(jù)用戶的10條總體要求,給出了該單片機(jī)密碼鎖的硬件電路和軟件程序,同時(shí)給出了單片機(jī)型號(hào)的選擇、硬件設(shè)計(jì)、軟件流程圖、單片機(jī)存儲(chǔ)單元的分配、匯編語言源程序及詳細(xì)注釋等內(nèi)容。
      關(guān)鍵詞:單片機(jī);密碼鎖;密碼
      
     。币
      
      很多行業(yè)的許多地方都需要密碼鎖,但普通密碼鎖的密碼容易被多次試探而破譯。本文給出了一種能防止多次試探密碼的密碼鎖設(shè)計(jì)方法,從而有效地克服了上述缺點(diǎn)。
      
     。灿布娐
      
      圖1所示是筆者設(shè)計(jì)的一種密碼鎖電路。該密碼鎖主要是按照以下10條用戶要求進(jìn)行設(shè)計(jì)的:
      
     。ǎ保┕玻肝幻艽a,每位的取值范圍為1~8。
      
     。ǎ玻┯脩艨梢宰孕性O(shè)定和修改密碼。
      
     。ǎ常┌疵總(gè)密碼鍵時(shí)都有聲、光提示。
      
     。ǎ矗┤翩I入的8位開鎖密碼不完全正確,則報(bào)警5秒鐘,以提醒他人注意。
      
     。ǎ担╅_鎖密碼錯(cuò)3次要報(bào)警10分鐘,報(bào)警期間輸入密碼無效,以防竊賊多次試探密碼。
      
      (6)鍵入的8位開鎖密碼完全正確才能開鎖,開鎖時(shí)要有1秒的提示音。
      
      (7)電磁鎖的電磁線圈必須用脈沖驅(qū)動(dòng),每次通電時(shí)間不多于2秒,以防燒壞。
      
     。ǎ福┟艽a鍵盤上只允許有8個(gè)密碼按鍵和1個(gè)發(fā)光管。鎖內(nèi)有備用電池,只有內(nèi)部上電復(fù)位時(shí)才能設(shè)置或修改密碼,因此,僅在門外按鍵是不能修改或設(shè)置密碼的。
      
      (9)密碼設(shè)定完畢后要有2秒的提示音。
      
     。ǎ保埃┏杀疽容^低,硬件和軟件都要盡可能簡潔可靠,易于批量生產(chǎn)。
      
      根據(jù)總體要求分析,該密碼鎖電路所需要的I/O口線少于15個(gè),若設(shè)計(jì)得當(dāng),程序不會(huì)超過200條指令,所以可選擇質(zhì)優(yōu)價(jià)廉的AT89C1051/2051或者GMS1051/2051,而且不需要外接程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器及其它擴(kuò)展部件。
      
      在圖1所示電路中,P1口連接8個(gè)密碼按鍵AN1~AN8,開鎖脈沖由P3.5輸出,報(bào)警和提示音由P3.7輸出。BL是用于報(bào)警與聲音提示的喇叭,發(fā)光管D1用于報(bào)警和提示,L是電磁鎖的電磁線圈。
      
     。耻浖O(shè)計(jì)
      
      圖2給出了該單片機(jī)密碼鎖電路的軟件流程圖。圖中?AA1~AA8以及START、SET、SAVE是程序中的標(biāo)號(hào),是為了理解程序而專門標(biāo)在流程圖的對(duì)應(yīng)位置的,分析程序時(shí)可以仔細(xì)對(duì)照參考。
      
     。常贝鎯(chǔ)單元的分配
      
      該密碼鎖中RAM存儲(chǔ)單元的分配方案如下:
      
     。常保取常福龋阂来未娣牛肝辉O(shè)定的密碼,首位密碼存放在31H單元;
      
     。遥埃褐赶蛎艽a地址;
      
      R2:已經(jīng)鍵入密碼的位數(shù);
      
     。遥常捍娣旁试S的錯(cuò)碼次數(shù)3與實(shí)際錯(cuò)碼次數(shù)的差值;
      
      R4至R7:延時(shí)用;
      
     。埃埃龋哄e(cuò)碼標(biāo)志位。
      
      對(duì)于ROM存儲(chǔ)單元的分配,由于程序比較短,而且占用的存儲(chǔ)空間比較少,因此,在無特殊要求時(shí),可以從0030H單元(其它地址也可以)開始存放主程序。
      
     。常苍闯绦
      
      下面是該電子密碼鎖的軟件源程序代碼:
      
     。希遥牵埃埃埃埃
      
     。粒剩停校樱裕粒遥
      
      ORG0030H
      
     。樱裕粒遥裕海粒茫粒蹋蹋拢
      
      MO
      
      
      
      VR0,#31H
      
     。停希郑遥,#8
      
     。樱牛裕海停希郑校,#0FFH
      
      MOVA,P1
      
     。茫剩危牛,#0FFH,L8
      
     。粒剩停校樱牛
      
     。蹋福海粒茫粒蹋蹋模牛蹋粒
      
      CJNEA,#0FFH,SAVE
      
      AJMPSET
      
     。樱粒郑牛海粒茫粒蹋蹋拢
      
     。停希郑溃遥?A
      
      INCR0
      
     。模剩危冢遥,SET
      
     。停希郑遥,#16
      
     。模玻樱海粒茫粒蹋蹋拢
      
     。模剩危冢遥担模玻
      
      MOVR0,#31H
      
      MOVR3,#3
      
     。粒粒保海停希郑遥,#8
      
     。粒粒玻海停希郑校,#0FFH
      
     。停希郑粒校
      
      CJNEA,#0FFH,L9
      
     。粒剩停校粒粒
      
     。蹋?ACALLDELAY
      
     。茫剩危牛,#0FFH,AA3
      
     。粒剩停校粒粒
      
     。粒粒常海粒茫粒蹋蹋拢
      
     。茫蹋遥
      
     。樱眨拢拢,@R0
      
      INCR0
      
      CJNEA,#00H,AA4
      
      AJMPAA5
      
     。粒粒矗海樱牛裕拢埃埃
      
     。粒粒担海模剩危冢遥,AA2
      
      JB00H?AA6
      
     。茫蹋遥校常
      
     。蹋?MOVR5,#8
      
     。粒茫粒蹋蹋拢
      
     。模剩危冢遥,L3
      
      MOVR3,#3
      
     。樱牛裕拢校常
      
      AJMPAA1
      
     。粒粒叮海模剩危冢遥,AA7
      
     。停希郑遥担#玻
      
     。蹋担海停希郑遥,#200
      
     。蹋矗海粒茫粒蹋蹋拢
      
     。模剩危冢遥,L4
      
     。模剩危冢遥担蹋
      
     。停希郑遥,#3
      
     。粒粒罚海停希郑遥,#40
      
     。粒茫粒蹋蹋拢
      
     。模剩危冢遥担粒粒
      
      AA8:CLR00H
      
     。粒剩停校粒粒
      
     。拢校海茫蹋遥校常
      
      MOVR7,#250
      
      L2:MOVR6,#124
      
     。蹋保海模剩危冢遥,L1
      
      CPLP3.7
      
     。模剩危冢遥,L2
      
     。樱牛裕拢校常
      
     。遥牛
      
     。模牛蹋粒?MOVR7,#20
      
      
      
      
     。蹋:MOVR6,#125
      
     。蹋:DJNZR6,L6
      
     。模剩危冢遥,L7
      
      RET
      
     。牛危
      
     。磻(yīng)用說明
      
      若按鍵AN1~AN7分別代表數(shù)碼1~7,按鍵AN0代表數(shù)碼8。在沒有鍵按下時(shí),P1.0~P1.7全是高電平1,若某個(gè)鍵被按下,相應(yīng)的口線就變?yōu)榈碗娖剑。假如設(shè)定的密碼是61234578,當(dāng)按鍵AN6被按下時(shí),P1.6變?yōu)榈碗娖剑校倍丝谄溆嗫诰為高電平,此時(shí)從P1端口讀入的數(shù)值為10111111,存到31H單元的密碼值就是10111111,也就是BFH。依此類推,存到32H至38H單元的密碼值分別是FDH、FBH、F7H、EFH、DFH、7FH、FEH。開鎖時(shí)必須先按AN6,使從P1口讀入的第一個(gè)密碼值與31H單元存儲(chǔ)的設(shè)定值相同,再順序按AN1、AN2、AN3、AN4、AN5、AN7、AN0才能開鎖。否則不能開鎖,同時(shí)開始報(bào)警。
      
      
      
      

    【能防止多次試探密碼的單片機(jī)密碼鎖】相關(guān)文章:

    教學(xué)生學(xué)會(huì)“試探”08-05

    幼兒英語教學(xué)試探08-17

    小學(xué)生興趣作文試探08-17

    夏的密碼08-10

    密碼的作文12-19

    《密碼》作文05-11

    “密碼”作文06-10

    硬件密碼組件與軟件密碼組件的比較研究08-06

    初中作文教學(xué)方法試探08-05

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      亚洲一区二区三区精品视频 | 婷婷四月开心色房播播手机 | 中文字幕日本一区 | 专区在线一区二区 | 制服肉丝袜亚洲中文字幕 | 亚欧V视频免费在线观看 |