/**************************************************************************************************************
* 名称:scoring
* 功能:计分
* 参数:NULL
* 返回:NULL
* 备注:采用非阻塞延时
**************************************************************************************************************/
void scoring(void)
{
if(state && (node != 2))
{
switch(Tbase % 20)
{
case 18: if(flag_c == 0 )
{
u8 i;
if(led15)
{
node = 2;
row = mark;
flag_c = 0;
return;
}
for(i = 0; i < 16; i++)
{
if(ledi == 0xff)
{
score++;
cnt = i;
node = 1;
flag1 = 1;
flag_c++;
return;
}
}
}
break;
case 19: if((flag_c == 2) && flag2)
{
u8 i;
for(i = cnt; i < 16; i++)
{
ledi = ledi + 1;
}
led16 = 0x00;
led17 = 0x00;
cnt = 0;
flag2 = 0;
flag_c = 0;
}
break;
default: break;
}
}
}