實(shí)物圖

功能
利用單片機(jī)和指紋識(shí)別模塊實(shí)現(xiàn)指紋密碼鎖,通過(guò)指紋模塊采集識(shí)別指紋,4*4矩陣鍵盤輸入密碼,能夠進(jìn)入管理系統(tǒng),進(jìn)入管理后能修改密碼、注冊(cè)指紋,刪除指紋等操作。
要求:
(1)查閱相關(guān)文獻(xiàn),熟悉課題背景、任務(wù);
(2)深入學(xué)習(xí)51系列單片機(jī)原理及C語(yǔ)言并且會(huì)用Keil軟件進(jìn)行編程;
(3)學(xué)習(xí)矩陣鍵盤和LCD的工作原理;
(4)學(xué)會(huì)利用Protel99se或DXP軟件進(jìn)行原理圖繪制;
(5)焊接并完成作品調(diào)試。
原理圖

PCB圖

程序源代碼
/*************************************************************
指紋密碼鎖
補(bǔ)充說(shuō)明:
***************************************************************/
#include //頭文件
#include
#include
#include
#include
#include
#define uchar unsigned char //宏定義
#define uint unsigned int
#define ulong unsigned long
/************************引腳定義************************/
sbit buzz=P3^7; //蜂鳴器
sbit led=P0^0; //LED燈
/************************變量定義************************/
#define MAX 5 //指紋最大數(shù)量
#define ID_MAX 3//輸入ID最大位數(shù)
uchar mode=0; //0正常解鎖,1管理界面,2注冊(cè)模式,3刪除模式,4修改密碼
uchar mode_num=0;//管理界面選擇項(xiàng)
uint ID=0; //存儲(chǔ)輸入編號(hào)ID
uchar n=0; //輸入的位數(shù)
bit zhiwen_f=0; //1=標(biāo)記進(jìn)入指紋采集
uchar a; //存儲(chǔ)按鍵值
uchar num; //記錄輸入的密碼位數(shù)
bit in_f; //輸入密碼的標(biāo)志
bit reset_f; //重設(shè)密碼的標(biāo)志
bit input_f; //六位密碼輸完的標(biāo)志
uchar reset_num; //標(biāo)記修改密碼階段,=1輸入舊密碼,=2輸入新密碼,=3再次輸入新密碼
ulong low_mima=0;//系統(tǒng)密碼
ulong in_mima=0; //暫存輸入的密碼
ulong new_mima=0;//暫存輸入新密碼
uchar temp[5]=" ?";//存儲(chǔ)顯示內(nèi)容
/********************************************************
函數(shù)名稱:void delayms(uint ms)
函數(shù)作用:毫秒延時(shí)函數(shù)
參數(shù)說(shuō)明:
********************************************************/
void delayms(uint ms)
{
unsigned char i=100,j;
for(;ms;ms--)
{
while(--i)
{
j=10;
while(--j);
}
}
}
/********************************************************
函數(shù)名稱:void didi(uchar i)
函數(shù)作用:蜂鳴器鳴叫
參數(shù)說(shuō)明:i為鳴叫次數(shù)
********************************************************/
void didi(uchar i)
{
uchar j;
for(j=0;j=1&&searchnum<=MAX)||searchnum==255)//最多MAX個(gè)指紋
{
if(searchnum>=1&&searchnum<=MAX) //指紋識(shí)別成功
{
temp[0]=searchnum%1000/100+0x30;
temp[1]=searchnum%100/10+0x30;
temp[2]=searchnum%10+0x30;
temp[3]=' ';
LCD12864_display_string(3,2,temp);//顯示卡號(hào)
LCD12864_display_string(3,3,"指紋解鎖");
LCD12864_display_string(1,4," ");
in_mima=0; //清除以輸入的密碼
num=0; //清除以輸入的密碼位數(shù)
input_f=0; //清除輸入密碼標(biāo)志
jdq=0; //打開電磁鎖
T2_num=0; //開啟重新開始計(jì)時(shí)
TR2=1;
}
else //不正確的指紋
{
LCD12864_display_string(3,3,"無(wú)效指紋");
didi(3); //報(bào)警三次
}
delay1ms(500); //延時(shí)后自動(dòng)清除顯示內(nèi)容
LCD12864_display_string(3,2," ");
LCD12864_display_string(3,3," ");
}
}
/********************************************************
函數(shù)名稱:void cunchu()
函數(shù)作用:存儲(chǔ)指紋
參數(shù)說(shuō)明:
********************************************************/
void cunchu()
{
LCD12864_display_string(0,3,"狀態(tài): ");
if(ID>0&&ID<=MAX) //輸入的存儲(chǔ)指紋位置正確
{
if(enroll()==1)//采集兩次,生成1個(gè)指紋模板成功
{
if(savefingure(ID)==1)//保存指紋成功
{
LCD12864_display_string(3,3,"錄入成功");
}
else //保存指紋失敗
LCD12864_display_string(3,3,"存儲(chǔ)失敗");
}
else //采集指紋失敗
LCD12864_display_string(3,3,"采集失敗");
}
else //輸入指紋編號(hào)錯(cuò)誤
LCD12864_display_string(3,3,"編號(hào)錯(cuò)誤");
n=0; //清除輸入編號(hào)位數(shù)
ID=0; //清除輸入編號(hào)
zhiwen_f=0;//關(guān)閉指紋采集
}
/********************************************************
函數(shù)名稱:void shanchu()
函數(shù)作用:刪除指紋
參數(shù)說(shuō)明:
********************************************************/
void shanchu()
{
LCD12864_display_string(0,3,"狀態(tài): ");
if(ID>0&&ID<=MAX) //輸入的存儲(chǔ)指紋位置正確
{
if(dellfingure(ID)==1)//刪除指紋成功
{
LCD12864_display_string(3,3,"刪除成功");
}
else //刪除指紋失敗
LCD12864_display_string(3,3,"刪除失敗");
}
else
{
if(ID==999) //如果輸入的是999表示清空指紋
{
if(Clear_All()==1)//清空指紋成功
LCD12864_display_string(3,3,"清空指紋");
else //清空指紋失敗
LCD12864_display_string(3,3,"清空失敗");
}
else //輸入的是其它錯(cuò)誤編號(hào)
LCD12864_display_string(3,3,"編號(hào)錯(cuò)誤");
}
n=0; //清除輸入編號(hào)位數(shù)
ID=0; //清除輸入編號(hào)
zhiwen_f=0;//關(guān)閉指紋采集
}
審核編輯:湯梓紅
-
單片機(jī)
+關(guān)注
關(guān)注
6072文章
45267瀏覽量
661156 -
lcd
+關(guān)注
關(guān)注
36文章
4565瀏覽量
175004 -
密碼鎖
+關(guān)注
關(guān)注
6文章
250瀏覽量
36426 -
指紋模塊
+關(guān)注
關(guān)注
0文章
27瀏覽量
4205
原文標(biāo)題:【畢業(yè)設(shè)計(jì)010】基于單片機(jī)指紋密碼鎖(源代碼、原理圖、參考論文、調(diào)試步驟、答辯解答等)
文章出處:【微信號(hào):精通單片機(jī)與嵌入式,微信公眾號(hào):精通單片機(jī)與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
單片機(jī)指紋密碼鎖,單片機(jī)小項(xiàng)目實(shí)操講解,實(shí)操運(yùn)用
基于51單片機(jī)的指紋密碼鎖 精選資料推薦
如何去實(shí)現(xiàn)一種基于51單片機(jī)的指紋密碼鎖設(shè)計(jì)
基于單片機(jī)指紋密碼鎖畢業(yè)設(shè)計(jì)資料分享
如何去實(shí)現(xiàn)一種基于單片機(jī)指紋密碼鎖指紋識(shí)別系統(tǒng)設(shè)計(jì)
如何去實(shí)現(xiàn)一種基于單片機(jī)的指紋密碼鎖雙重加密設(shè)計(jì)
基于單片機(jī)的指紋密碼鎖系統(tǒng)論文
基于51單片機(jī)的指紋密碼鎖電路設(shè)計(jì)方案
基于51單片機(jī)的指紋密碼鎖
52-基于51單片機(jī)的指紋密碼鎖設(shè)計(jì)
基于51單片機(jī)的指紋密碼鎖
52-基于51單片機(jī)的指紋密碼鎖設(shè)計(jì)
基于單片機(jī)的指紋密碼鎖雙重加密設(shè)計(jì)

基于單片機(jī)的指紋密碼鎖設(shè)計(jì)
評(píng)論