OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4281|回复: 2

循迹小车如何在第三次通过终点线之后停车

[复制链接]

1

主题

2

帖子

0

精华

新手入门

积分
26
金钱
26
注册时间
2015-11-16
在线时间
0 小时
发表于 2015-11-21 11:13:48 | 显示全部楼层 |阅读模式
5金钱

if((GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==1)&(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==0))
  flag=1;
  if((GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==0)&(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==1))
  flag=2;
  if((GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==1)&(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==1))
  flag=3;
  if(flag==1) 
 { 
   if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==1)
  {
    delay();
    if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==1)
    START_TIME;
  } 
 
  if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==1)
  {
     delay();
     if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==1)
     STOP_TIME;
     TIMCounter = TIM_GetCounter(TIM2);
    }
 
  if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) //?ì?é???¨??TIM????·??ú??·?:TIM ??????
  {

  if(0<TIMCounter<65535)
     {
        i++;
      if(i>=3)

      {
  TIM_SetCompare2(TIM4,0); 
  TIM_SetCompare3(TIM4,0);
  u=0;

      }
      
     }
  TIM_ClearITPendingBit(TIM2, TIM_IT_Update  );
  }
  
     STOP_TIME;
     
    

  }
 
 if(flag==2) 
 { 
   if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==1)
  {
    delay();
    if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_10)==1)
    START_TIME;
  } 
 
  if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==1)
  {
    delay();
    if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_3)==1)
    STOP_TIME; flag=0;
    TIMCounter = TIM_GetCounter(TIM2);
   }  
 if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) //?ì?é???¨??TIM????·??ú??·?:TIM ??????
  {
 
  if(0<TIMCounter<65535)
     {
      i++;
      if(i>=3)
   {
  TIM_SetCompare2(TIM4,0); 
  TIM_SetCompare3(TIM4,0);
 u=0;
   }
     }
  TIM_ClearITPendingBit(TIM2, TIM_IT_Update  );
  }

 

     STOP_TIME;
     
    
 }
 if(flag==3) 
 {
  i++;
  if(i>=3)
{
  TIM_SetCompare2(TIM4,0); 
  TIM_SetCompare3(TIM4,0);
  u=0;
}
 }

这是我的程序,可是车第一次通过终点线就停下来了,麻烦各位大神帮忙看看

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5781
金钱
5781
注册时间
2013-11-22
在线时间
1212 小时
发表于 2015-11-21 23:49:56 | 显示全部楼层
思路:  经过终点线 计数(用一个变量 u8 cnt;)加1, 当cnt==3, 停车
回复

使用道具 举报

1

主题

2

帖子

0

精华

新手入门

积分
26
金钱
26
注册时间
2015-11-16
在线时间
0 小时
 楼主| 发表于 2015-11-22 14:27:38 | 显示全部楼层
回复【2楼】lycreturn:
---------------------------------
已经设置了啊,你看我的程序都写了,到底为什么不行啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 08:02

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表