|
方法2的switch意义是什么,直接把小车运行状态放在if后面不久行了?
while(1)//无限循环
{
//有信号为0 没有信号为1
if(Left_1_led==0&&Right_1_led==0)
run(); //调用前进函数
else if(Left_1_led==1&&Right_1_led==0) //左边检测到黑线
{
leftrun(); //调用小车左转函数
}
else if(Right_1_led==1&&Left_1_led==0)//右边检测到黑线
{
rightrun(); //调用小车右转函数
}
else
stop();
}
方法2
void xunji()
{
if((left==0)&&(right==1))
{
flag = 0;//左边检测到黑线
}
else if((left==1)&&(right==0))
{
flag = 1;//右边检测到黑线
}
else if((left==1)&&(right==1))
{
flag = 3; //两边都没检测到黑线
}
else
{
flag = 4;
}
switch(flag)
{
case 0: Right_turning();break;
case 1: Left_turning();break;
case 3: forward_move();break;
case 4: forward_move();break;
default: forward_move();break;
} |
|