久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
電子密碼鎖仿真有代碼下載
[打印本頁]
作者:
798314770
時間:
2015-5-23 18:56
標題:
電子密碼鎖仿真有代碼下載
密碼鎖
0.png
(30.66 KB, 下載次數: 317)
下載附件
2016-1-13 22:41 上傳
1.png
(33.19 KB, 下載次數: 287)
下載附件
2016-1-13 22:41 上傳
51單片機密碼鎖全部代碼和仿真下載:
電子密碼鎖仿真有代碼.zip
(3.92 MB, 下載次數: 446)
2015-5-23 18:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
部分源碼預覽:
#include <reg52.h>
#include "delay_ms.h"
#include "矩陣鍵盤.h"
#include "i2c.h"
#include "1602.h"
#include "delay_ms.h"
#include "mima.h"
#define uchar unsigned char
#define uint unsigned int
#define A 0x0a //輸入密碼
#define B 0x0b //修改密碼
#define D 0x0d //關鎖
#define enter 0x0c //確認
#define backspace 0x0f //退格鍵
sbit baojing = P3^7; //蜂鳴器接口
sbit lock = P3^3;//鎖信號
sbit set = P3^2;
uchar idata mima_5[6] = {1,2,3,4,5,6}; //初始密碼
uchar flag_change;
uchar aa;//存放密碼錯誤的次數,夠三次報警
uchar bb;
uchar flag_t0;
void baoj1()//報警函數
{
int i;
for(i = 0;i < 5; i++)
{
baojing = 1;
delay_ms(5);
baojing = 0;
delay_ms(5);
}
}
void baoj()
{
uchar i;
for(i = 0; i < 10; i++)
baoj1();
}
/*密碼處理函數*/
void mimachuli()
{
uchar key,i;
uchar idata mima_1[6]={' ',' ',' ',' ',' ',' '};//存放密碼緩沖區
uchar idata mima_2[6]={' ',' ',' ',' ',' ',' '};
uchar idata mima_3[6]={' ',' ',' ',' ',' ',' '};
key = step_choose();
if(key == A)//A被按下,接收輸入密碼,處理
{
read_n_add(mima_1,0x00,6);
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_com(0x0f);//顯示光標
lcd_pos(0,0);
write_n_char(" press password ");
if(input_mima(mima_2)) //處理輸入密碼
{
if(mimaduibi(mima_2,mima_1)) //密碼正確
{
lcd_pos(0,0);
write_com(0x0c);
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char(" password right ");
aa = 0; //清除密碼錯誤次數
lock = 0; //開鎖
baojing = 1; //響一下
delay_ms(1000);
baojing = 0;
TR0 = 1;
flag_t0 = 1;
while(key != D && flag_t0) //D沒按下一直開
{
key = keyscan();
}
TR0 = 0;
lock = 1;//D按下了關鎖
}
else //密碼 不正確
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char(" password wrong");
delay_ms(1000);
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //密碼不正確報警
while(i--)
baoj();
}
}
}
else //密碼沒有輸入正確或完成
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char(" password wrong");
delay_ms(1000);
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //密碼不正確報警
while(i--)
baoj();
}
}
}
if(key == B)//B被按下,修改密碼
{
read_n_add(mima_1,0x00,6);
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_com(0x0f);//顯示光標
lcd_pos(0,0);
write_n_char(" input password");
write_com(0x0f);//顯示光標
if(input_mima(mima_2)) //處理輸入密碼
{
if(mimaduibi(mima_2,mima_1)) //密碼正確
{
lcd_pos(0,0);
write_com(0x0c);
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("password right ");
aa = 0; //清除密碼錯誤次數
delay_ms(1500);
flag_change = 1;
while(flag_change) //下面開始修改密碼
{
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_com(0x0f);//顯示光標
lcd_pos(0,0);
write_n_char("In new password");
delay_ms(1500);
if(input_mima(mima_2)) //處理輸入密碼
{
lcd_pos(0,0);
write_com(0x0c);
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("Input new pass"); //確定新密碼
lcd_pos(1,0);
write_n_char("word again");
delay_ms(2000);
lcd_pos(0,0);
write_com(0x0f);//顯示光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("In new password");
if(input_mima(mima_3)) //處理輸入密碼
{
if(mimaduibi(mima_2,mima_3)) //密碼正確
{
lcd_pos(0,0);
write_com(0x0c);
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("password has");
lcd_pos(1,0);
write_n_char("change already");
write_n_add(mima_3,0x00,6); //把修改的密碼存進24C02
delay_ms(2000);
flag_change = 0;
}
else //密碼 不正確
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("password wrong");
delay_ms(1000);
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //3次輸入密碼不正確報警
while(i--)
baoj();
}
flag_change = 0;
}
}
else //密碼沒有輸入正確或完成
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char(" password wrong");
delay_ms(1000);
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //3次輸入密碼不正確報警
while(i--)
baoj();
}
}
}
else //密碼沒有輸入正確或完成
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("password wrong");
delay_ms(1000);
flag_change = 0;
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //3次輸入密碼不正確報警
while(i--)
baoj();
}
}
}
}
else //密碼 不正確
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("password wrong");
delay_ms(1000);
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //3次輸入密碼不正確報警
while(i--)
baoj();
}
}
}
else //密碼沒有輸入正確或完成
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("password wrong");
delay_ms(1000);
aa++;
if(aa == 4)
{
aa = 0;
i = 20; //3次輸入密碼不正確報警
while(i--)
baoj();
}
}
}
}
/*外部中斷函數,恢復出廠設置,長按set鍵恢復*/
void int0() interrupt 0
{
delay_ms(2000);
if(!set)
{
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
i2cinit();//24C02總線初始化
write_n_add(mima_5,0x00,6);
write_n_char("password renew");
lcd_pos(1,0);
write_n_char("already");
delay_ms(1000);
lcd_pos(0,0);
write_com(0x0c); //關光標
write_com(0x06);//寫一個字符后地址指針加 1
write_com(0x01);//顯示清零,數據指針清零
write_n_char("Input password");
lcd_pos(1,0);
write_n_char("Press key A");
}// 引起了三個警告
}
void timer0() interrupt 1 //定時器0中斷,50ms定時
{
TH0 = 0x4c;//50ms定時
TL0 = 0x00;
bb++;
if(bb == 200)//10秒時間到
{
bb = 0;
flag_t0 = 0;
}
}
void main()
{
yjinit();//液晶初始化
i2cinit();//24C02總線初始化
baojing = 0;
lock = 1; //關鎖
TMOD = 0x01;//選擇定時器0方式1
EA = 1;//打開總中斷
ET0 = 1;//打開定時器0中斷
EX0 = 1; //打開外部中斷0
IT0 = 1;//下降沿觸發
TR0 = 0;//關閉定時器
TH0 = 0x4c;//50ms裝初值
TL0 = 0x00;
while(1)
{
mimachuli();
}
}
復制代碼
作者:
LZJ1113
時間:
2015-7-12 14:42
51黑有你更精彩!
作者:
linx
時間:
2015-11-25 18:35
看看,希望能幫到我
作者:
無敵喚醒
時間:
2015-12-12 18:55
能運行的嗎?是不是用proteus的?
作者:
hl0227
時間:
2015-12-12 22:49
看看咋樣
作者:
hl0227
時間:
2015-12-12 22:49
下載看看
作者:
hl0227
時間:
2015-12-12 22:50
論壇好棒
作者:
wangyanjun1995
時間:
2015-12-29 09:18
太給力了,贊
作者:
晨曦916
時間:
2016-2-19 10:50
感謝分享,力挺
作者:
nihaoqisiba
時間:
2016-3-31 13:25
密碼輸入123456
不對,
作者:
人生如夢超
時間:
2016-4-20 23:17
看著不錯哦
作者:
我叫路人8
時間:
2016-5-31 19:20
請問樓主,最多輸入幾位密碼,輸入密碼的位數與24C04有關嗎?
作者:
人生如夢超
時間:
2016-9-7 10:20
pcb有嗎?
作者:
1115475664
時間:
2016-12-7 14:48
謝謝樓主
作者:
故人以北
時間:
2016-12-22 22:59
編譯了一下好像又錯誤欸
作者:
dawei1935
時間:
2017-4-27 19:38
好好學習一下,樓主給力!
作者:
yjs
時間:
2017-4-27 21:34
不錯不錯哦
作者:
一入51深似海
時間:
2017-6-16 17:09
感謝樓主,完美!!!!
作者:
51busy
時間:
2017-10-29 15:36
51黑有你更精彩!!!!
作者:
15061662869
時間:
2017-12-23 09:55
您好,請問,下載的代碼不是一整段,而是分成好幾個部分,如果我要對整個程序rebuild,刷新HEX文件,該怎么做
作者:
xbd1h11
時間:
2017-12-25 11:00
感謝樓主,完美!!!!
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产精品一区久久久久
|
久久99国产精品久久99果冻传媒
|
最新超碰
|
亚洲高清视频在线观看
|
久久成人一区二区三区
|
日韩免费一区二区
|
亚洲国产成人久久久
|
国产精品视频专区
|
亚洲一区黄色
|
国产高清在线精品一区二区三区
|
亚洲三区在线观看
|
久久久亚洲一区
|
亚洲精品成人网
|
v片网站
|
亚洲视频免费在线观看
|
99re6在线视频
|
久久一区二区三区电影
|
欧美极品少妇xxxxⅹ免费视频
|
91性高湖久久久久久久久_久久99
|
国产日韩精品一区
|
欧美一区二区三区四区五区无卡码
|
久久中文字幕一区
|
国产女人精品视频
|
亚洲国产精品99久久久久久久久
|
在线视频一区二区三区
|
国产精品中文字幕一区二区三区
|
欧美精品一区二区三区四区 在线
|
色视频在线免费观看
|
国产一级大片
|
亚洲欧美日本国产
|
亚洲国产成人久久久
|
99久久精品国产毛片
|
黄色大片免费网站
|
污书屋
|
96国产精品久久久久aⅴ四区
|
国产精品视频一
|
欧美日韩国产一区二区三区
|
五月天天丁香婷婷在线中
|
综合色在线
|
国产一区二区影院
|
日韩午夜网站
|