1

如何在案例中添加条件。我想添加一个功能,如果结果小于 15 厘米,汽车停止,返回并左转或右转。

if (Serial.available())
  { val = Serial.read();
  switch(val)
{
 case 'a':
   servoX.write(lx);
    qian(); // forward
    break;
  case 'b':
    hou(); //back
    break; 
4

1 回答 1

0

@Barmar 是正确的,没有什么可以阻止您在 switch 语句中形成嵌套逻辑,因此可以在其中一个 case 块中添加 if 条件。

附带说明:如果这是您第一次在墙壁上跑步,避免开车,请注意当某些东西离传感器太近时您的信号会发生什么,与大多数传感器一样,您将开始获得读数,表明您正在远离传感器移动到比它的工作范围更近的地方。出于这个原因,您需要尝试并比仅仅设置一个限制更聪明,或者将您的限制设置为比传感器的最小工作范围高一点。在这方面,超声波传感器比便宜的红外距离传感器要好,但在加快速度时仍然需要小心。我还建议使用非常灵敏的超声波传感器,在对它们做出反应之前,您需要连续读取几个一致的读数。

于 2013-01-28T16:01:39.123 回答