如何在案例中添加条件。我想添加一个功能,如果结果小于15厘米,车停,后退,左转或右转。
if (Serial.available())
{ val = Serial.read();
switch(val)
{
case 'a':
servoX.write(lx);
qian(); // forward
break;
case 'b':
hou(); //back
break;
答案 0 :(得分:0)
@Barmar是正确的,没有什么可以阻止你在switch语句中形成嵌套逻辑,所以可以在你的一个case块中添加if条件。
侧面注意:如果这是你第一次在墙上跑,避免汽车注意当信号太靠近传感器时你的信号发生了什么,就像大多数传感器一样,你会开始得到读数,表明你正在移动当你靠近它的操作范围时离开。因此,您需要尝试比设置限制更聪明,或者将限制设置为高于传感器的最小操作范围。为此,超声波传感器比廉价的红外距离传感器要好,但是在提速时仍需要小心。我还建议使用相当灵敏的超声波传感器,在对它们做出反应之前,需要连续几个读数。