實物圖

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

PCB圖

程序源代碼
/*************************************************************
指紋密碼鎖
補充說明:
***************************************************************/
#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注冊模式,3刪除模式,4修改密碼
uchar mode_num=0;//管理界面選擇項
uint ID=0; //存儲輸入編號ID
uchar n=0; //輸入的位數(shù)
bit zhiwen_f=0; //1=標記進入指紋采集
uchar a; //存儲按鍵值
uchar num; //記錄輸入的密碼位數(shù)
bit in_f; //輸入密碼的標志
bit reset_f; //重設(shè)密碼的標志
bit input_f; //六位密碼輸完的標志
uchar reset_num; //標記修改密碼階段,=1輸入舊密碼,=2輸入新密碼,=3再次輸入新密碼
ulong low_mima=0;//系統(tǒng)密碼
ulong in_mima=0; //暫存輸入的密碼
ulong new_mima=0;//暫存輸入新密碼
uchar temp[5]=" ?";//存儲顯示內(nèi)容
/********************************************************
函數(shù)名稱:void delayms(uint ms)
函數(shù)作用:毫秒延時函數(shù)
參數(shù)說明:
********************************************************/
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ù)說明:i為鳴叫次數(shù)
********************************************************/
void didi(uchar i)
{
uchar j;
for(j=0;j=1&&searchnum<=MAX)||searchnum==255)//最多MAX個指紋
{
if(searchnum>=1&&searchnum<=MAX) //指紋識別成功
{
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);//顯示卡號
LCD12864_display_string(3,3,"指紋解鎖");
LCD12864_display_string(1,4," ");
in_mima=0; //清除以輸入的密碼
num=0; //清除以輸入的密碼位數(shù)
input_f=0; //清除輸入密碼標志
jdq=0; //打開電磁鎖
T2_num=0; //開啟重新開始計時
TR2=1;
}
else //不正確的指紋
{
LCD12864_display_string(3,3,"無效指紋");
didi(3); //報警三次
}
delay1ms(500); //延時后自動清除顯示內(nèi)容
LCD12864_display_string(3,2," ");
LCD12864_display_string(3,3," ");
}
}
/********************************************************
函數(shù)名稱:void cunchu()
函數(shù)作用:存儲指紋
參數(shù)說明:
********************************************************/
void cunchu()
{
LCD12864_display_string(0,3,"狀態(tài): ");
if(ID>0&&ID<=MAX) //輸入的存儲指紋位置正確
{
if(enroll()==1)//采集兩次,生成1個指紋模板成功
{
if(savefingure(ID)==1)//保存指紋成功
{
LCD12864_display_string(3,3,"錄入成功");
}
else //保存指紋失敗
LCD12864_display_string(3,3,"存儲失敗");
}
else //采集指紋失敗
LCD12864_display_string(3,3,"采集失敗");
}
else //輸入指紋編號錯誤
LCD12864_display_string(3,3,"編號錯誤");
n=0; //清除輸入編號位數(shù)
ID=0; //清除輸入編號
zhiwen_f=0;//關(guān)閉指紋采集
}
/********************************************************
函數(shù)名稱:void shanchu()
函數(shù)作用:刪除指紋
參數(shù)說明:
********************************************************/
void shanchu()
{
LCD12864_display_string(0,3,"狀態(tài): ");
if(ID>0&&ID<=MAX) //輸入的存儲指紋位置正確
{
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 //輸入的是其它錯誤編號
LCD12864_display_string(3,3,"編號錯誤");
}
n=0; //清除輸入編號位數(shù)
ID=0; //清除輸入編號
zhiwen_f=0;//關(guān)閉指紋采集
}
審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
單片機
+關(guān)注
關(guān)注
6076文章
45494瀏覽量
670262 -
lcd
+關(guān)注
關(guān)注
36文章
4615瀏覽量
177204 -
密碼鎖
+關(guān)注
關(guān)注
6文章
250瀏覽量
36705 -
指紋模塊
+關(guān)注
關(guān)注
0文章
27瀏覽量
4268
原文標題:【畢業(yè)設(shè)計010】基于單片機指紋密碼鎖(源代碼、原理圖、參考論文、調(diào)試步驟、答辯解答等)
文章出處:【微信號:精通單片機與嵌入式,微信公眾號:精通單片機與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
基于51單片機的指紋密碼鎖 精選資料推薦
1.系統(tǒng)功能概述本次分享的是一款基于51單片機的指紋識別電子密碼鎖系統(tǒng),該系統(tǒng)以STC89C52單片機作為模塊核心,通過串口通信控制指紋模塊
發(fā)表于 07-20 06:43
如何去實現(xiàn)一種基于51單片機的指紋密碼鎖設(shè)計
系統(tǒng)由STC89C51單片機+AT24C02數(shù)據(jù)存儲模塊+按鍵模塊+LCD12864顯示+FM10A指紋模塊等構(gòu)成。具體功能:1、能夠?qū)?b class='flag-5'>指紋進行錄入、識別和刪除;2、能夠?qū)崿F(xiàn)最多1000枚的指
發(fā)表于 11-10 06:18
基于單片機指紋密碼鎖畢業(yè)設(shè)計資料分享
【資源下載】下載地址如下1553:https://docs.qq.com/doc/DTlRSd01BZXNpRUxl#include #include//包含頭文件#include"24C0x.h"http://包含24C02函數(shù)#include"LCD12864.h" //包含液晶函數(shù)#define uchar unsigned char#define uint unsigned int//宏定義 #de
發(fā)表于 01-13 07:43
如何去實現(xiàn)一種基于單片機指紋密碼鎖指紋識別系統(tǒng)設(shè)計
【資源下載】下載地址:點擊下載(751)百度網(wǎng)盤基于單片機的指紋識別和鍵盤密碼鎖。里面包括程序,原理圖,pcb圖,原件清單和實物圖。#include #include//包含頭文件
發(fā)表于 01-13 07:48
如何去實現(xiàn)一種基于單片機的指紋密碼鎖雙重加密設(shè)計
設(shè)計簡介:本設(shè)計是基于單片機的指紋密碼鎖雙重加密設(shè)計,主要實現(xiàn)以下功能:LCD1602顯示提示信息具有指紋與密碼雙重加密(先確定
發(fā)表于 02-18 07:28
基于單片機的指紋密碼鎖系統(tǒng)論文
發(fā)表于 10-26 10:14
?9次下載
基于51單片機的指紋密碼鎖電路設(shè)計方案
本設(shè)計以單片機STC89C52作為密碼鎖監(jiān)控裝置的檢測和控制核心,采用矩陣鍵盤輸入的電子密碼和指紋密碼解鎖兩種解鎖方式。 系統(tǒng)采用LCD12
基于51單片機的指紋密碼鎖
1.系統(tǒng)功能概述本次分享的是一款基于51單片機的指紋識別電子密碼鎖系統(tǒng),該系統(tǒng)以STC89C52單片機作為模塊核心,通過串口通信控制指紋模塊
發(fā)表于 11-04 18:36
?35次下載
52-基于51單片機的指紋密碼鎖設(shè)計
系統(tǒng)由STC89C51單片機+AT24C02數(shù)據(jù)存儲模塊+按鍵模塊+LCD12864顯示+FM10A指紋模塊等構(gòu)成。具體功能:1、能夠?qū)?b class='flag-5'>指紋進行錄入、識別和刪除;2、能夠?qū)崿F(xiàn)最多1000枚的指
發(fā)表于 11-05 13:36
?8次下載
基于51單片機的指紋密碼鎖
本設(shè)計是基于單片機的指紋密碼鎖,主要實現(xiàn)以下功能:可實現(xiàn)LCD1602顯示門狀態(tài)以及密碼狀態(tài) 通過步進電機模擬門開關(guān) 通過4*4矩陣按鍵輸入開門密碼
發(fā)表于 11-23 16:36
?55次下載
52-基于51單片機的指紋密碼鎖設(shè)計
能夠?qū)?b class='flag-5'>指紋進行錄入、識別和刪除,能夠?qū)崿F(xiàn)最多1000枚的指紋錄入識別,能夠?qū)崿F(xiàn)指紋識別成功開鎖功能,并設(shè)有4*4按鍵鍵盤,實現(xiàn)密碼錄入、修改和特殊功能。
發(fā)表于 11-23 17:06
?11次下載
基于單片機的指紋密碼鎖雙重加密設(shè)計
設(shè)計簡介:本設(shè)計是基于單片機的指紋密碼鎖雙重加密設(shè)計,主要實現(xiàn)以下功能:LCD1602顯示提示信息 具有指紋與密碼雙重加密(先確定
發(fā)表于 12-23 19:32
?28次下載
基于單片機的指紋密碼鎖設(shè)計
評論