unsigned int j=0;
Hang1=0;Hang2=0;Hang3=0;Hang4=0;
while(Lie1!=0&&Lie2!=0&&Lie3!=0);
if(Lie1==0)
{
j=0;
do
{
j++;
if(j==5) j=1;
switch(j)
{
case 1: Hang1=0;Hang2=1;Hang3=1;Hang4=1;break;
case 2: Hang1=1;Hang2=0;Hang3=1;Hang4=1;break;
case 3: Hang1=1;Hang2=1;Hang3=0;Hang4=1;break;
case 4: Hang1=1;Hang2=1;Hang3=1;Hang4=0;break;
}
} while(Lie1!=0);
DLY_ms(10);
if(Lie1==0)
{
switch(j)
{
case 1: Key=1;break;
case 2: Key=4;break;
case 3: Key=7;break;
case 4: Key=10;break;
}
}
}
if(Lie2==0)
{
j=0;
do
{
j++;
if(j==5) j=1;
switch(j)
{
case 1: Hang1=0;Hang2=1;Hang3=1;Hang4=1;break;
case 2: Hang1=1;Hang2=0;Hang3=1;Hang4=1;break;
case 3: Hang1=1;Hang2=1;Hang3=0;Hang4=1;break;
case 4: Hang1=1;Hang2=1;Hang3=1;Hang4=0;break;
}
} while(Lie2!=0);
DLY_ms(10);
if(Lie2==0)
{
switch(j)
{
case 1: Key=2;break;
case 2: Key=5;break;
case 3: Key=8;break;
case 4: Key=0;break;
}
}
}
if(Lie3==0)
{
j=0;
do
{
j++;
if(j==5) j=1;
switch(j)
{
case 1: Hang1=0;Hang2=1;Hang3=1;Hang4=1;break;
case 2: Hang1=1;Hang2=0;Hang3=1;Hang4=1;break;
case 3: Hang1=1;Hang2=1;Hang3=0;Hang4=1;break;
case 4: Hang1=1;Hang2=1;Hang3=1;Hang4=0;break;
}
} while(Lie3!=0);
DLY_ms(10);
if(Lie3==0)
{
switch(j)
{
case 1: Key=3;break;
case 2: Key=6;break;
case 3: Key=9;break;
case 4: Key=11;break;
}
}
}