新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 防止多次試探密碼的單片機密碼鎖方案介紹

        防止多次試探密碼的單片機密碼鎖方案介紹

        作者: 時間:2012-06-06 來源:網絡 收藏

        AJMP SET

        本文引用地址:http://www.104case.com/article/171337.htm

        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才能開鎖。否則不能開鎖,同時開始報警。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 综艺| 左贡县| 石首市| 崇阳县| 准格尔旗| 大方县| 绥棱县| 盐津县| 白山市| 滨州市| 渝中区| 大方县| 中卫市| 西贡区| 彩票| 巴里| 祁连县| 乐都县| 理塘县| 揭东县| 永川市| 滨州市| 安图县| 玛曲县| 万州区| 凌海市| 金堂县| 呼玛县| 大足县| 闻喜县| 云阳县| 竹北市| 西平县| 客服| 奉新县| 武冈市| 镇宁| 阿拉善左旗| 洛扎县| 陇川县| 靖远县|