自己做的基于單片機的密碼鎖設計(c語言設計)
if(h1==0)
{
delay(1);
if(h1==0)
{
while(!h1);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=4;break;
case 1:k2=4;break;
case 2:k3=4;break;
case 3:k4=4;break;
case 4:k5=4;break;
case 5:k6=4;break;
}
sex++;
}
}
if(h2==0)
{
delay(1);
if(h2==0)
{
while(!h2);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=5;break;
case 1:k2=5;break;
case 2:k3=5;break;
case 3:k4=5;break;
case 4:k5=5;break;
case 5:k6=5;break;
}
sex++;
}
}
if(h3==0)
{
delay(1);
if(h3==0)
{
while(!h3);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=6;break;
case 1:k2=6;break;
case 2:k3=6;break;
case 3:k4=6;break;
case 4:k5=6;break;
case 5:k6=6;break;
}
sex++;
}
}
/*--------------------------------*/
P1=0x5f;
if(h1==0)
{
delay(1);
if(h1==0)
{
while(!h1);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=7;break;
case 1:k2=7;break;
case 2:k3=7;break;
case 3:k4=7;break;
case 4:k5=7;break;
case 5:k6=7;break;
}
sex++;
}
}
if(h2==0)
{
delay(1);
if(h2==0)
{
while(!h2);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=8;break;
case 1:k2=8;break;
case 2:k3=8;break;
case 3:k4=8;break;
case 4:k5=8;break;
case 5:k6=8;break;
}
sex++;
}
}
if(h3==0)
{
delay(1);
if(h3==0)
{
while(!h3);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=9;break;
case 1:k2=9;break;
case 2:k3=9;break;
case 3:k4=9;break;
case 4:k5=9;break;
case 5:k6=9;break;
}
sex++;
}
}
/*-----------------------------------*/
P1=0x3f;
if(h1==0)//*鍵掃描
{
delay(1);
if(h1==0)
{
while(!h1);
writen_com(0x0f);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm16;unm++)
{
writen_dat(table6[unm]);
delay(5);
}
while(!flge1)
cheak_identity();
}
}
if(h2==0)//0鍵掃描
{
delay(1);
if(h2==0)
{
while(!h2);
writen_com(0x80+0x45+sex);
writen_dat('*');
switch(sex)
{
case 0:k1=0;break;
case 1:k2=0;break;
case 2:k3=0;break;
case 3:k4=0;break;
case 4:k5=0;break;
case 5:k6=0;break;
}
sex++;
}
}
if(h3==0) //#鍵掃描
{
delay(1);
if(h3==0)
{
while(!h3);
flge=1;
}
}
}
}本文引用地址:http://www.ex-cimer.com/article/172558.htm
/*-------------------------------------*/ //密碼檢查
void init();
void check_code()
{
if(k1==M1)
{
if(k2==M2)
{
if(k3==M3)
{
if(k4==M4)
{
if(k5==M5)
{
if(k6==M6)
{
writen_com(0x01);
kd=0;
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table2[unm]);
delay(5);
}
delay1(6);
kd=1;
main();
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table4[unm]);
delay(5);
}
delay1(6);
main();
}
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table4[unm]);
delay(5);
}
delay1(6);
main();
}
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table4[unm]);
delay(5);
}
delay1(6);
main();
}
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table4[unm]);
delay(5);
}
delay1(6);
main();
}
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table4[unm]);
delay(5);
}
delay1(6);
main();
}
}
writen_com(0x0c);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table4[unm]);
delay(5);
}
delay1(6);
main();
}
void now_mima()
{
M1=0;
M2=0;
M3=0;
M4=0;
M5=0;
M6=0;
g=0;
}
void init()
{
if(g==0)
now_mima();
g=1;
flge1=0;
flge=0;
sex=0;
lcdrw=0;
lcden=0;
writen_com(0x01);
writen_com(0x38);
writen_com(0x0f);
writen_com(0x06);
writen_com(0x80);
for(unm=0;unm14;unm++)
{
writen_dat(table[unm]);
delay(5);
}
writen_com(0x80+0x40);
for(unm=0;unm5;unm++)
{
writen_dat(table1[unm]);
delay(5);
}
}
void main()
{
while(1)
{
init();
set_mima();
while(!flge)
keyscan();
check_code();
}
}
評論