資源簡介
本系統(tǒng)采用51單片機(jī)作為控制器,12864作為顯示屏嗎,以及指紋模塊設(shè)計(jì)了一款指紋鎖,開機(jī)上電顯示菜單界面,可以通過按鍵設(shè)置管理員以及保存的指紋數(shù)據(jù),可以對(duì)已保存的指紋數(shù)據(jù)進(jìn)行增減,或者新加入新指紋數(shù)據(jù),用戶通過識(shí)別指紋,可以進(jìn)行解鎖,希望對(duì)大家有一定的幫助

代碼片段和文件信息
#include?
#include?
#include“24C02.h“
#define?uchar?unsigned?char
#define?uint?unsigned?int
/********************************************************************
*?名稱?:?flash()
*?功能?:?延時(shí)時(shí)間為5個(gè)NOP,大概為5US
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?flash(void)?
{
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}
/********************************************************************
*?名稱?:?x24c02_init()
*?功能?:?24c02初始化子程序
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?x24c02_init(void)?
{ ?
scl?=?1;
flash();
sda?=?1;
flash();
}
/********************************************************************
*?名稱?:?start(void)
*?功能?:?啟動(dòng)I2C總線
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?start(void)
{
scl?=?1;?
flash();
sda?=?1;
flash();?
sda?=?0;?
flash();?
scl?=?0;???//鉗住低電平,準(zhǔn)備發(fā)送信號(hào)
flash();
}
/********************************************************************
*?名稱?:?stop()
*?功能?:?停止I2C總線
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?stop()?
{
scl?=?0;
flash();
sda?=?0;?
flash();
scl?=?1;
flash();
sda?=?1;
flash();
}
/********************************************************************
*?名稱?:?writex()
*?功能?:?寫一個(gè)字節(jié)
*?輸入?:?j(需要寫入的值)
*?輸出?:?無
***********************************************************************/
void?writex(uchar?j)
{??
uchar?itemp;
temp?=?j;
for(i=0;?i<8;?i++)
{
scl?=?0;?
flash();?
sda?=?(bit)(temp?&?0x80);??//把數(shù)據(jù)的最高位電平賦值給SDA
flash();
scl?=?1;?
flash();
temp?=?temp?<1;? ???//數(shù)據(jù)左移一位
}
scl?=?0;
flash();?
}
/********************************************************************
*?名稱?:?readx()
*?功能?:?讀一個(gè)字節(jié)
*?輸入?:?無
*?輸出?:?讀出的值
***********************************************************************/
uchar?readx(void)
{
uchar?i?j?k?=?0;
for(i=0;?i<8;?i++)
{
scl?=?0;
flash();
if(sda?==?1)
{
j?=?1;
}
else?j?=?0;
k?=?(k?<1)?|?j;?
scl?=?1;
flash();
}?
return(k);
}
/********************************************************************
*?名稱?:?ack()
*?功能?:?I2C總線時(shí)鐘
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?ack(void)
{
uchar?i?=?0;
scl?=?1;
flash();
while((sda?==?1)?&&?(i?255))?
{
i++;???//i的作用是當(dāng)SDA時(shí)鐘為1時(shí),程序不會(huì)一直鎖死在這里
}
scl?=?0;
flash();
}
/********************************************************************
*?名稱?:?x24c02_write()
*?功能?:?想24c02中寫入數(shù)據(jù)
*?輸入?:?address(地址)?,?info(值)
*?輸出?:?無
***********************************************************************/
void?x24c02_write(uchar?address?uchar?info)
{
start();
writex(0xa0);
ack();
writex(address);
ack();
writex(info);
ack();
stop();
}
/************************************************
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-05-13?22:50??1-指紋密碼鎖源程序\
?????文件????????3595??2018-04-26?19:23??1-指紋密碼鎖源程序\24C02.c
?????文件?????????975??2018-05-11?11:42??1-指紋密碼鎖源程序\24C02.h
?????文件????????7923??2018-05-13?22:50??1-指紋密碼鎖源程序\24C02.LST
?????文件????????7156??2018-05-13?22:50??1-指紋密碼鎖源程序\24C02.OBJ
?????文件????????4031??2018-05-11?11:14??1-指紋密碼鎖源程序\LCD12864.c
?????文件?????????510??2018-04-25?20:37??1-指紋密碼鎖源程序\LCD12864.H
?????文件????????8199??2018-05-13?22:50??1-指紋密碼鎖源程序\LCD12864.LST
?????文件????????7712??2018-05-13?22:50??1-指紋密碼鎖源程序\LCD12864.OBJ
?????文件???????54496??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖
?????文件???????22357??2018-05-13?22:41??1-指紋密碼鎖源程序\指紋密碼鎖.c
?????文件???????15778??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.hex
?????文件??????????83??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.lnp
?????文件???????49528??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.LST
?????文件???????70677??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.M51
?????文件???????50624??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.OBJ
?????文件????????2066??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.plg
?????文件??????430735??2015-03-10?15:22??1-指紋密碼鎖源程序\指紋密碼鎖.uvgui.SP
?????文件??????430076??2015-03-04?08:41??1-指紋密碼鎖源程序\指紋密碼鎖.uvgui_SP.bak
?????文件???????58131??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖.uvopt
?????文件???????13612??2018-04-25?20:43??1-指紋密碼鎖源程序\指紋密碼鎖.uvproj
?????文件???????58131??2018-05-13?22:50??1-指紋密碼鎖源程序\指紋密碼鎖_uvopt.bak
?????文件???????13612??2018-04-25?18:47??1-指紋密碼鎖源程序\指紋密碼鎖_uvproj.bak
?????文件?????1796096??2014-12-25?19:14??1-指紋密碼鎖源程序\指紋識(shí)別系統(tǒng)原理圖.Bkp
評(píng)論
共有 條評(píng)論