红外遥控器控制小车,小车自带超声波避障,遥控器可以打开循迹,打开循迹后自己循迹走。没打开循迹就红外遥控器控制小车走。
按键如下
1 进入或者退出循迹功能,循迹模式下对小车操作无效
2 前进
5 左转
6 停止
7 右转
10 后退


循迹依靠P1.3 P1.4的红外探测:
c展开代码/* 寻迹 */
void tracking()
{
 /* 为0 没有识别到黑线 为1识别到黑线 */
 if ( left_led1 == 1 && right_led1 == 1 )                /* 左右寻迹探头识别到黑线 */
 {
  forward();                                      /* 前进 */
 }else  {
  if ( left_led1 == 1 && right_led1 == 0 )        /* 小车右边出线,左转修正 */
  {
   left();                                 /* 左转 */
  }
  if ( left_led1 == 0 && right_led1 == 1 )        /* 小车左边出线,右转修正 */
  {
   right();                                /* 右转 */
  }
  if ( left_led1 == 0 && right_led1 == 0 )        /* 左右寻迹探头都没识别到黑线 */
  {
   backward();                             /* 后退 */
  }
 }
}
避障一直带有:
c展开代码/*超声波避障111111*/
void Avoid1()
{
 if ( distance < 50 )                                    /* 如果前方有障碍物进行左转   前方没有障碍物就直行 */
 {
  left();
 }else
 {
  forward();
 }
}


本文作者:Dong
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!