久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
用24c04與1602液晶屏設計的簡易加密電子鎖 程序+原理圖+仿真下載
[打印本頁]
作者:
2947450351
時間:
2015-11-1 17:18
標題:
用24c04與1602液晶屏設計的簡易加密電子鎖 程序+原理圖+仿真下載
用24c04與1602液晶屏設計的簡易加密電子鎖源程序+仿真文件下載:
用24c04與1602液晶屏設計的簡易加密電子鎖.rar
(96 KB, 下載次數: 228)
2015-11-4 00:58 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
主程序預覽:
#include"LCD1602.h"
#include"AT24C04.h"
//上次按鍵和當前按鍵序號,該矩陣中序號范圍為0~15,16表示無按鍵
INT8U Key_Value = 0xFF, Pre_KeyNo = 0xFF;
INT8U DSY_BUFFER[10]= ""; //顯示緩沖區
INT8U UserPassword[7]; //用戶輸入密碼
INT8U I2C_Password[7]; //從I2C存儲器讀取的密碼
sbit LED_OPEN = P2^7; //開鎖亮燈
sbit BEEP = P3^7; //蜂鳴器
void Beep();
void Clear_Pwd();
void Read_I2C_Pwd();
void Write_I2C_Pwd();
void Keys_Scan();
//----------主程序------------
void main()
{
INT8U i = 0;
INT8U IS_Valid_User = 0;
P0 = 0xFF; P1 = 0xFF; P2 = 0xFF;
Delay_ms(10);
Init_LCD(); //初始化LCD
Write_LCD_String(0, 0, "Your Password...");
Read_I2C_Pwd(); //將密碼讀入I2C
while(1)
{
P1 = 0x0F;
while(P1 == 0x0F); Keys_Scan();
Pre_KeyNo = Key_Value; //掃描鍵盤獲取鍵序號
switch(Pre_KeyNo)
{
case 0: case 1: case 2: case 3: case 4:
case 5: case 6: case 7: case 8: case 9:
if(i <= 5)
{
//如果i為0則執行一次清屏
if(i == 0) Write_LCD_String(1, 0, " ");
UserPassword[i] = Pre_KeyNo + '0';
UserPassword[i+1] = '\0';
DSY_BUFFER[i] = '*';
DSY_BUFFER[i+1] = '\0'; i++;
Write_LCD_String(1, 0,DSY_BUFFER );
} break;
case 10: //按A鍵開鎖
Read_I2C_Pwd(); //從I2C存儲器讀回密碼
if(strcmp(UserPassword,I2C_Password) == 0)
{
LED_OPEN = 0; //點亮LED
Clear_Pwd();
Write_LCD_String(1, 0, "Unlock OK! ");
IS_Valid_User = 1;
}
else
{
LED_OPEN = 1; //關閉LED
Clear_Pwd();
Write_LCD_String(1, 0, "ERROR ! ");
IS_Valid_User = 0;
}
i = 0; break;
case 11: //按B鍵上鎖
LED_OPEN = 1;
Clear_Pwd();
Write_LCD_String(0, 0, "Your Password... ");
Write_LCD_String(1, 0, " ");
i = 0; IS_Valid_User = 0; break;
case 12: //按C鍵設置新密碼
//如果是合法用戶則提示輸入新密碼
if(!IS_Valid_User)
Write_LCD_String(1, 0, "No right ! ");
else
{
i = 0; //密碼輸入緩沖索引歸零
Write_LCD_String(0, 0, "New Password:... ");
Write_LCD_String(1, 0, " ");
} break;
case 13: //按D鍵保存新密碼
if(!IS_Valid_User)
Write_LCD_String(1, 0, "No right ! ");
else
{
//寫入新設置的密碼,并重新讀回
Write_I2C_Pwd(); Delay_ms(5); Read_I2C_Pwd();
i = 0; //密碼輸入緩沖索引歸零
Write_LCD_String(0, 0, "Your Password ... ");
Write_LCD_String(1, 0, "Password Saved ! ");
} break;
case 14: //按E鍵消除所有輸入
i = 0; Clear_Pwd();
Write_LCD_String(0, 0, "Your Password... ");
Write_LCD_String(1, 0, " ");
}
Beep(); Delay_ms(100);
while(P1 != 0xF0); //如果有鍵未釋放則等待
}
}
//-----------蜂鳴器子程序------------
void Beep()
{
INT8U i;
for(i = 0; i < 100; i++)
{
Delay_ms(1);
BEEP = ~BEEP;
}
BEEP = 0;
}
//------------清除密碼--------------
void Clear_Pwd()
{
UserPassword[0] = '\0';
DSY_BUFFER[0]='\0';
}
//----------讀取密碼字符串(以'\0'為結束標志)----------
void Read_I2C_Pwd()
{
INT8U i = -1; //只限于讀取存儲器前半部分
do { i++; I2C_Password[i] = Random_Read(0xA0,(INT16U)i); }
while(I2C_Password[i] != '\0' && i < 6);
//如果循環結束后未遇到結束標志,則直接在字符串末尾補上結束標志
if(I2C_Password[i] != '\0') I2C_Password[i] = '\0';
}
//----------寫密碼字符串(結束標志'\0'注意一并寫入)---------
void Write_I2C_Pwd()
{
INT8U i = 0;
//循環寫入密碼字符,字符串末尾的'\0'也要寫入,最多7個字符
while(i <= 6)
{
Random_Write(0xA0, i,UserPassword[i]); Delay_ms(5);
if(UserPassword[i] == '\0') break;
i++;
}
//如果循環結束時密碼字符串末尾未遇到'\0'則直接向I2C補充寫入'\0'
if(UserPassword[i] != '\0') Random_Write(0xA0, i,'\0');
}
//-----------------鍵掃描------------------------------------
void Keys_Scan()
{
/*列判斷*/
P1 = 0x0F; Delay_ms(1);
if(P1 == 0x0F)
{
Key_Value = 0xFF; return;
}
switch(P1)
{
case 0x0E: Key_Value = 0; break;
case 0x0D: Key_Value = 1; break;
case 0x0B: Key_Value = 2; break;
case 0x07: Key_Value = 3; break;
default : Key_Value = 0xFF; return;
}
/*行判斷*/
P1 = 0xF0; Delay_ms(1);
switch(P1)
{
case 0xE0: Key_Value += 0; break;
case 0xD0: Key_Value += 4; break;
case 0xB0: Key_Value += 8; break;
case 0x70: Key_Value += 12; break;
default : Key_Value = 0xFF;
}
}
復制代碼
作者:
niyaolin
時間:
2017-3-26 16:24
66666厲害額大神6666
作者:
2408150817
時間:
2018-12-18 09:55
y有沒有點h文件
作者:
820590074
時間:
2018-12-18 11:03
可以,玩玩。
作者:
chj666326
時間:
2022-4-5 19:15
666簡直是寶地
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产精品久久国产精品
|
91视频久久
|
91高清视频在线观看
|
成人免费xxxxx在线视频
|
日韩视频在线一区
|
成人免费看片网
|
亚洲国产精品久久人人爱
|
亚洲三区视频
|
日韩成人免费中文字幕
|
亚洲欧美日韩精品久久亚洲区
|
91久久
|
美国a级毛片免费视频
|
精品国产精品国产偷麻豆
|
中文字幕在线播放第一页
|
成人国产午夜在线观看
|
欧美久久精品一级c片
|
国产日韩欧美二区
|
亚洲精品一
|
一区二区视频
|
你懂的在线视频播放
|
精品国产乱码久久久久久果冻传媒
|
国产精品一区在线
|
成人二区
|
在线一区观看
|
一区二区视频在线观看
|
国产日产精品一区二区三区四区
|
精品久久久久久亚洲精品
|
国产高清视频在线观看播放
|
91毛片在线看
|
国产成人精品在线
|
人妖av
|
日日淫
|
亚洲国产精品久久
|
一级毛片视频在线观看
|
久久一区二区精品
|
成人国产免费视频
|
日韩一级精品视频在线观看
|
国产精成人
|
亚洲视频在线观看
|
亚洲成人久久久
|
国产在线a
|