<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            能防止多次試探密碼的單片機密碼鎖

            時間:2024-07-09 00:41:26 理工畢業論文 我要投稿
            • 相關推薦

            能防止多次試探密碼的單片機密碼鎖

            摘要:提出了一種能防止多次試探密碼的基于單片機的密碼鎖設計方案,根據用戶的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,#2

            【能防止多次試探密碼的單片機密碼鎖】相關文章:

            單片機電子密碼鎖論文03-28

            免費基于單片機控制的電子密碼鎖(一)03-08

            硬件密碼組件與軟件密碼組件的比較研究03-18

            試探唐代昆侖奴從事的主要工作03-07

            試探商標名稱的特點及其翻譯03-11

            試探建立每股收益分析指標體系03-21

            單片機的參考文獻05-27

            MultiMediacard及其與單片機接口03-20

            AVR單片機GCC編程03-18

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看