單片機電子密碼鎖的設(shè)計
出處:xwj 發(fā)布于:2011-09-02 21:46:05 | 4864 次閱讀
密碼鎖是鎖的一種,開啟時用的是一系列的數(shù)字或符號。密碼鎖的密碼通常都只是排列而非真正的組合。部分密碼鎖只使用一個轉(zhuǎn)盤,把鎖內(nèi)的數(shù)個碟片或凸輪轉(zhuǎn)動;亦有些密碼鎖是轉(zhuǎn)動一組數(shù)個刻有數(shù)字的撥輪圈,直接帶動鎖內(nèi)部的機械。
1.實驗任務(wù)
根據(jù)設(shè)定好的密碼,采用二個按鍵實現(xiàn)密碼的輸入功能,當(dāng)密碼輸入正確之后,鎖就打開,如果輸入的三次的密碼不正確,就鎖定按鍵3秒鐘,同時發(fā)現(xiàn)報警聲,直到?jīng)]有按鍵按下3種后,才打開按鍵鎖定功能;否則在3秒鐘內(nèi)仍有按鍵按下,就重新鎖定按鍵3秒時間并報警。
2.電路原理圖
3.系統(tǒng)板上硬件連線
(2).把“音頻放大模塊”區(qū)域中的SPK OUT端子接喇叭和;
(3).把“單片機系統(tǒng)”區(qū)域中的P2.0/A8-P2.7/A15用8芯排線連接到“四路靜態(tài)數(shù)碼顯示”區(qū)域中的任一個ABCDEFGH端子上;
(4). 把“單片機系統(tǒng)“區(qū)域中的P1.0用導(dǎo)線連接到“八路發(fā)光二極管模塊”區(qū)域中的L1端子上;
(5). 把“單片機系統(tǒng)”區(qū)域中的P3.6/WR、P3.7/RD用導(dǎo)線連接到“獨立式鍵盤”區(qū)域中的SP1和SP2端子上;
4.程序設(shè)計內(nèi)容
(1). 密碼的設(shè)定,在此程序中密碼是固定在程序存儲器ROM中,假設(shè)預(yù)設(shè)的密碼為“12345”共5位密碼。
(2). 密碼的輸入問題:
由于采用兩個按鍵來完成密碼的輸入,那么其中一個按鍵為功能鍵,另一個按鍵為數(shù)字鍵。在輸入過程中,首先輸入密碼的長度,接著根據(jù)密碼的長度輸入密碼的位數(shù),直到所有長度的密碼都已經(jīng)輸入完畢;或者輸入確認(rèn)功能鍵之后,才能完成密碼的輸入過程。進入密碼的判斷比較處理狀態(tài)并給出相應(yīng)的處理過程。
(3).按鍵禁止功能:初始化時,是允許按鍵輸入密碼,當(dāng)有按鍵按下并開始進入按鍵識別狀態(tài)時,按鍵禁止功能被激活,但啟動的狀態(tài)在3次密碼輸入不正確的情況下發(fā)生的。
5.C語言源程序
#include
unsigned char code ps[]={1,2,3,4,5};
unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};
unsigned char pslen=9;
unsigned char templen;
unsigned char digit;
unsigned char funcount;
unsigned char digitcount;
unsigned char psbuf[9];
bit cmpflag;
bit hibitflag;
bit errorflag;
bit rightflag;
unsigned int second3;
unsigned int aa;
unsigned int bb;
bit alarmflag;
bit exchangeflag;
unsigned int cc;
unsigned int dd;
bit okflag;
unsigned char oka;
unsigned char okb;
void main(void)
{
unsigned char i,j;
P2=dispcode[digitcount];
TMOD=0x01;
TH0=(65536-500)/256;
TL0=(65536-500)%6;
TR0=1;
ET0=1;
EA=1;
while(1)
{
if(cmpflag==0)
{
if(P3_6==0) //function key
{
for(i=10;i>0;i--)
for(j=248;j>0;j--);
if(P3_6==0)
{
if(hibitflag==0)
{
funcount++;
if(funcount==pslen+2)
{
funcount=0;
cmpflag=1;
}
P1=dispcode[funcount];
}
else
{
second3=0;
}
while(P3_6==0);
}
}
if(P3_7==0) //digit key
{
for(i=10;i>0;i--)
for(j=248;j>0;j--);
if(P3_7==0)
{
if(hibitflag==0)
{
digitcount++;
if(digitcount==10)
{
digitcount=0;
}
P2=dispcode[digitcount];
if(funcount==1)
{
pslen=digitcount;
templen=pslen;
}
else if(funcount>1)
{
psbuf[funcount-2]=digitcount;
}
}
else
{
second3=0;
}
while(P3_7==0);
}
}
}
else
{
cmpflag=0;
for(i=0;i
{
if(ps[i]!=psbuf[i])
{
hibitflag=1;
i=pslen;
errorflag=1;
rightflag=0;
cmpflag=0;
second3=0;
goto a;
}
}
cc=0;
errorflag=0;
rightflag=1;
hibitflag=0;
a: cmpflag=0;
}
}
}
void t0(void) interrupt 1 using 0
{
TH0=(65536-500)/256;
TL0=(65536-500)%6;
if((errorflag==1) && (rightflag==0))
{
bb++;
if(bb==800)
{
bb=0;
alarmflag=~alarmflag;
}
if(alarmflag==1)
{
P0_0=~P0_0;
}
aa++;
if(aa==800)
{
aa=0;
P0_1=~P0_1;
}
second3++;
if(second3==6400)
{
second3=0;
hibitflag=0;
errorflag=0;
rightflag=0;
cmpflag=0;
P0_1=1;
alarmflag=0;
bb=0;
aa=0;
}
}
if((errorflag==0) && (rightflag==1))
{
P0_1=0;
cc++;
if(cc<1000)
{
okflag=1;
}
else if(cc<2000)
{
okflag=0;
}
else
{
errorflag=0;
rightflag=0;
hibitflag=0;
cmpflag=0;
P0_1=1;
cc=0;
oka=0;
okb=0;
okflag=0;
P0_0=1;
}
if(okflag==1)
{
oka++;
if(oka==2)
{
oka=0;
P0_0=~P0_0;
}
}
else
{
okb++;
if(okb==3)
{
okb=0;
P0_0=~P0_0;
}
}
}
}
電子密碼鎖的性能特點
1.保密性好: 編碼量多,遠(yuǎn)遠(yuǎn)大于彈子鎖。隨機開鎖成功率幾乎為零。
2.密碼可變: 用戶可以經(jīng)常更改密碼,防止密碼被盜,同時也可以避免因人員的更替而使鎖的密級下降。
3.誤碼輸入保護: 當(dāng)輸入密碼多次錯誤時,報警系統(tǒng)自動啟動。
4. 電子密碼鎖操作: 簡單易行,一學(xué)即會。
5. 干擾碼功能: 在輸入正確密碼前可輸入任意碼。
6. 安保功能: 如果連續(xù)輸錯4次密碼將會自動斷電3分鐘。
7. 緊急開啟功能: 出門時無需其他操作,只需的把手動作,可機械的開啟門,所以遇到火災(zāi)等應(yīng)急狀況下也迅速,安全的開啟門。
8. 入侵感應(yīng)功能: 在門上鎖的狀態(tài)下,有人破鎖而入時,會發(fā)出強力的報警音。
9. 火災(zāi)報警功能: 在室內(nèi)如果溫度達到75°左右,將會發(fā)出強力的報警音,同時鎖會自動開啟。
10. 雙重鎖定功能: 外部強制鎖定,在內(nèi)部不能開啟,適用于外出時,防止有人入侵。 內(nèi)部強制鎖定,在外部不能開啟,讓您在家時更安心、安全。
11. 弱電提醒當(dāng)電量不足時: 在啟動開門時,會有美妙的音樂提示您及時更換電池。
12. 自動上鎖功能: 采用全自動鎖芯,門關(guān)后6秒內(nèi)自動上鎖,外出更加安全。
13. 外部顯示功能: 當(dāng)密碼輸入錯誤,鎖舌沒正常鎖到位,室內(nèi)反鎖,弱電等情況下,外部都有提示功能。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。






![6OXT(1.0)電腦主板設(shè)計圖[_]05](https://image.dzsc.com/diagram/2011/05/19/20110519175517469.jpg)
![電腦主板設(shè)計圖440LX2[_]23](https://image.dzsc.com/diagram/2011/05/19/20110519175127344.jpg)
![電腦主板430TX電路圖[_]15](https://image.dzsc.com/diagram/2011/05/19/20110519180239360.jpg)
![810E電腦主板設(shè)計圖[_]12](https://image.dzsc.com/diagram/2011/05/19/20110519181312578.jpg)
![電腦主板設(shè)計圖440LX2[_]32](https://image.dzsc.com/diagram/2011/05/19/20110519175314750.jpg)



