0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一種安全的密碼鎖設(shè)計(jì)電路

電子設(shè)計(jì) ? 來(lái)源:xx ? 2019-02-15 16:03 ? 次閱讀

一種能防止多次試探密碼的基于單片機(jī)的密碼鎖設(shè)計(jì)方案,根據(jù)用戶(hù)的10條總體要求,給出了該單片機(jī)密碼鎖的硬件電路和軟件程序,同時(shí)給出了單片機(jī)型號(hào)的選擇、硬件設(shè)計(jì)、軟件流程圖、單片機(jī)存儲(chǔ)單元的分配、匯編語(yǔ)言源程序及詳細(xì)注釋等內(nèi)容。很多行業(yè)的許多地方都需要密碼鎖,但普通密碼鎖的密碼容易被多次試探而破譯。本文給出了一種能防止多次試探密碼的密碼鎖設(shè)計(jì)方法,從而有效地克服了上述缺點(diǎn)。

硬件電路

圖1所示是筆者設(shè)計(jì)的一種密碼鎖電路。該密碼鎖主要 是以下10條特點(diǎn):

(1)總共可以設(shè)置8位密碼,每位的取值范圍為1~8。

(2)用戶(hù)可以自行設(shè)定和修改密碼。

(3)按每個(gè)密碼鍵時(shí)都有聲音提示。

(4)若鍵入的8位開(kāi)鎖密碼不完全正確,則報(bào)警5秒鐘,以提醒他人注意。

(5)開(kāi)鎖密碼連續(xù)錯(cuò)3次要報(bào)警1分鐘,報(bào)警期間輸入密碼無(wú)效,以防竊賊多次試探密碼。

(6)鍵入的8位開(kāi)鎖密碼完全正確才能開(kāi)鎖,開(kāi)鎖時(shí)要有1秒的提示音。

(7)電磁鎖的電磁線(xiàn)圈每次通電5秒,然后恢復(fù)初態(tài)。

(8)密碼鍵盤(pán)上只允許有8?jìng)€(gè)密碼按鍵。鎖內(nèi)有備用電池,只有內(nèi)部上電復(fù)位時(shí)才能設(shè)置或修改密碼,因此,僅在門(mén)外按鍵是不能修改或設(shè)置密碼的。

(9)密碼設(shè)定完畢后要有2秒的提示音。

(10)成本低,硬件和軟件都很簡(jiǎn)潔可靠,易于批量生產(chǎn)。

根據(jù)總體要求分析,該密碼鎖電路所需要的I/O口線(xiàn)少于15個(gè),若設(shè)計(jì)得當(dāng),程序不會(huì)超過(guò)200條指令,所以可選擇質(zhì)優(yōu)價(jià)廉的AT89C1051/2051或者GMS1051/2051,而且不需要外接程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器及其它擴(kuò)展部件,所以成本很經(jīng)濟(jì)。

圖1 電磁鎖原理圖

在圖1所示電路中,P1口連接8?jìng)€(gè)密碼按鍵AN1~AN8,開(kāi)鎖 信號(hào)由P3.2輸出,報(bào)警和提示音由P3.7輸出。BL是用于報(bào)警與聲音提示的喇叭,K是繼電器控制電磁線(xiàn)圈。

軟件設(shè)計(jì)

圖2給出了該單片機(jī)密碼鎖電路的軟件流程圖。圖中AA1~AA8以及START、SET、SAVE是程序中的標(biāo)號(hào),是為了理解程序而專(zhuān)門(mén)標(biāo)在流程圖的對(duì)應(yīng)位置的,分析程序時(shí)可以仔細(xì)對(duì)照參考。

3.1 存儲(chǔ)單元的分配

該密碼鎖中RAM存儲(chǔ)單元的分配方案如下:

31H~38H:依次存放8位設(shè)定的密碼,首位密碼存放在31H單元;

R0:指向密碼地址;

R2:已經(jīng)鍵入密碼的位數(shù);

R3:存放允許的錯(cuò)碼次數(shù)3與實(shí)際錯(cuò)碼次數(shù)的差值;

R4至R7:延時(shí)用;

00H:錯(cuò)碼標(biāo)志位。

對(duì)于ROM存儲(chǔ)單元的分配,由于程序比較短,而且占用的存儲(chǔ)空間比較少,因此,在無(wú)特殊要求時(shí),可以從0030H單元(其它地址也可以)開(kāi)始存放主程序。

圖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

應(yīng)用說(shuō)明

若按鍵AN1~AN7分別代表數(shù)碼1~7,按鍵AN0代表數(shù)碼8。在沒(méi)有鍵按下時(shí),P1.0~P1.7全是高電平1,若某個(gè)鍵被按下,相應(yīng)的口線(xiàn)就變?yōu)榈碗娖剑?。假如設(shè)定的密碼是61234578,當(dāng)按鍵AN6被按下時(shí),P1.6變?yōu)榈碗娖?,P?a target="_blank">端口其余口線(xiàn)為高電平,此時(shí)從P1端口讀入的數(shù)值為10111111,存到31H單元的密碼值就是10111111,也就是BFH。依此類(lèi)推,存到32H至38H單元的密碼值分別是FDH、FBH、F7H、EFH、DFH、7FH、FEH。開(kāi)鎖時(shí)必須先按AN6,使從P1口讀入的第一個(gè)密碼值與31H單元存儲(chǔ)的設(shè)定值相同,再順序按AN1、AN2、AN3、AN4、AN5、AN7、AN0才能開(kāi)鎖。否則不能開(kāi)鎖,同時(shí)開(kāi)始報(bào)警。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6030

    文章

    44499

    瀏覽量

    632166
  • 密碼鎖
    +關(guān)注

    關(guān)注

    6

    文章

    249

    瀏覽量

    34932
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    典型密碼鎖電路圖分享

    密碼鎖一種通過(guò)輸入密碼來(lái)解鎖或上鎖的安全鎖具。它廣泛應(yīng)用于各種場(chǎng)合,如家庭、酒店、公寓、商業(yè)場(chǎng)所等,以保護(hù)個(gè)人和物品的安全。
    的頭像 發(fā)表于 02-18 14:49 ?4533次閱讀
    典型<b class='flag-5'>密碼鎖</b><b class='flag-5'>電路</b>圖分享

    基于單片機(jī)的電子密碼鎖設(shè)計(jì)

    密碼鎖電路失效,使用戶(hù)免遭麻煩。? ?密碼鎖電路包含:鍵盤(pán)輸入、密碼修改、密碼檢測(cè)、開(kāi)鎖
    發(fā)表于 09-24 08:50

    請(qǐng)問(wèn)怎樣去設(shè)計(jì)一種基于51單片機(jī)的密碼鎖

    怎樣去設(shè)計(jì)一種基于51單片機(jī)的密碼鎖?如何對(duì)密碼鎖的開(kāi)關(guān)進(jìn)行仿真?
    發(fā)表于 07-16 11:04

    怎樣去設(shè)計(jì)一種基于51單片機(jī)的匯編密碼鎖

    單片機(jī)課程設(shè)計(jì)設(shè)計(jì)課題:密碼鎖目 錄選題背景密碼鎖目的與意義密碼鎖的原理系統(tǒng)方案和總體結(jié)構(gòu)整體實(shí)驗(yàn)功能硬件設(shè)計(jì)實(shí)驗(yàn)儀器電路原理圖軟件設(shè)計(jì)程序設(shè)計(jì)流程圖所用到的函數(shù)、功能和原理硬軟件調(diào)試
    發(fā)表于 07-19 06:33

    怎樣去設(shè)計(jì)一種基于51單片機(jī)的電子密碼鎖電路

    怎樣去設(shè)計(jì)一種基于51單片機(jī)的電子密碼鎖電路?基于51單片機(jī)的電子密碼鎖為什么仿真會(huì)不成功呢?
    發(fā)表于 08-31 07:35

    如何去實(shí)現(xiàn)一種基于單片機(jī)的智能電子密碼鎖設(shè)計(jì)

    摘要:隨著信息技術(shù)的不斷發(fā)展,信息化時(shí)代也逐步進(jìn)入普通家庭,人們對(duì)個(gè)人的信息安全以及隱私等私密信息的安全要求不斷提高,傳統(tǒng)的機(jī)械已經(jīng)不能滿(mǎn)足要求。針對(duì)此現(xiàn)狀設(shè)計(jì)
    發(fā)表于 11-09 08:35

    怎樣利用矩陣鍵盤(pán)去制作一種密碼鎖

    怎樣利用矩陣鍵盤(pán)去制作一種密碼鎖呢?利用矩陣鍵盤(pán)制作密碼鎖有何優(yōu)勢(shì)?
    發(fā)表于 01-20 06:31

    怎樣去設(shè)計(jì)一種基于51單片機(jī)+LCD1602的數(shù)字密碼鎖

    數(shù)字密碼鎖電路是由哪些部分組成的的?怎樣去設(shè)計(jì)一種基于51單片機(jī)+LCD1602的數(shù)字密碼鎖呢?
    發(fā)表于 01-26 07:49

    電子密碼鎖電路

    電子密碼鎖電路圖 汽車(chē)電子密碼鎖電路
    發(fā)表于 04-25 12:38 ?9187次閱讀
    電子<b class='flag-5'>密碼鎖</b><b class='flag-5'>電路</b>圖

    555電子密碼鎖電路

    555電子密碼鎖電路:這個(gè)電子密碼鎖密碼安排在鑰匙和鎖孔中,只有兩者密碼,致才能開(kāi)鎖。
    發(fā)表于 05-20 21:46 ?2002次閱讀
    555電子<b class='flag-5'>密碼鎖</b><b class='flag-5'>電路</b>

    一種基于單片機(jī)的電子密碼鎖的設(shè)計(jì)

    一種基于單片機(jī)的電子密碼鎖的設(shè)計(jì),有需要的下來(lái)看看。
    發(fā)表于 02-17 16:47 ?45次下載

    一種基于單片機(jī)和串行EEPROM的智能密碼鎖

    一種基于單片機(jī)和串行EEPROM的智能密碼鎖。
    發(fā)表于 02-17 16:46 ?14次下載

    一種由單片機(jī)實(shí)現(xiàn)的多功能密碼鎖

    一種由單片機(jī)實(shí)現(xiàn)的多功能密碼鎖,有需要的下來(lái)看看。
    發(fā)表于 02-17 16:46 ?24次下載

    密碼鎖仿真 51密碼鎖protues仿真 密碼鎖程序仿真圖pro

    密碼鎖仿真 51密碼鎖protues仿真 密碼鎖程序仿真圖protues仿真
    發(fā)表于 01-14 22:32 ?246次下載

    基于模擬電路的電子密碼鎖設(shè)計(jì)

    隨著科技的不斷發(fā)展和進(jìn)步,電子密碼鎖已經(jīng)成為了人們?nèi)粘I钪斜夭豢缮俚?b class='flag-5'>一種安全防護(hù)措施。傳統(tǒng)的機(jī)械密碼鎖存在著許多缺陷,例如使用不便、易損壞、安全
    的頭像 發(fā)表于 06-09 16:13 ?1016次閱讀
    基于模擬<b class='flag-5'>電路</b>的電子<b class='flag-5'>密碼鎖</b>設(shè)計(jì)