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

代碼片段和文件信息
#include?
#include?
#include“24C02.h“
#define?uchar?unsigned?char
#define?uint?unsigned?int
/********************************************************************
*?名稱?:?flash()
*?功能?:?延時時間為5個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)
*?功能?:?啟動I2C總線
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?start(void)
{
scl?=?1;?
flash();
sda?=?1;
flash();?
sda?=?0;?
flash();?
scl?=?0;???//鉗住低電平,準備發送信號
flash();
}
/********************************************************************
*?名稱?:?stop()
*?功能?:?停止I2C總線
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?stop()?
{
scl?=?0;
flash();
sda?=?0;?
flash();
scl?=?1;
flash();
sda?=?1;
flash();
}
/********************************************************************
*?名稱?:?writex()
*?功能?:?寫一個字節
*?輸入?:?j(需要寫入的值)
*?輸出?:?無
***********************************************************************/
void?writex(uchar?j)
{??
uchar?itemp;
temp?=?j;
for(i=0;?i<8;?i++)
{
scl?=?0;?
flash();?
sda?=?(bit)(temp?&?0x80);??//把數據的最高位電平賦值給SDA
flash();
scl?=?1;?
flash();
temp?=?temp?<1;? ???//數據左移一位
}
scl?=?0;
flash();?
}
/********************************************************************
*?名稱?:?readx()
*?功能?:?讀一個字節
*?輸入?:?無
*?輸出?:?讀出的值
***********************************************************************/
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總線時鐘
*?輸入?:?無
*?輸出?:?無
***********************************************************************/
void?ack(void)
{
uchar?i?=?0;
scl?=?1;
flash();
while((sda?==?1)?&&?(i?255))?
{
i++;???//i的作用是當SDA時鐘為1時,程序不會一直鎖死在這里
}
scl?=?0;
flash();
}
/********************************************************************
*?名稱?:?x24c02_write()
*?功能?:?想24c02中寫入數據
*?輸入?:?address(地址)?,?info(值)
*?輸出?:?無
***********************************************************************/
void?x24c02_write(uchar?address?uchar?info)
{
start();
writex(0xa0);
ack();
writex(address);
ack();
writex(info);
ack();
stop();
}
/************************************************
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????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-指紋密碼鎖源程序\指紋識別系統原理圖.Bkp
- 上一篇:校醫院門診收費管理系統設計
- 下一篇:DNA序列分類模型2000數模
評論
共有 條評論