qq_31339387
我会一直在
2015-09-16 23:21
采纳率: 0%
浏览 1.5k

刚进入大学 求教这个C语言编程 求教 求教

小车在下面 芯片AT89S52图片说明
这是我自己写的 求把加速减速停止写进去
#include
#include
#define LeftIR P1_2 //左边红外接收连接到P12
#define RightIR P1_3 //右边红外接收连接到P13
void Forward(int Velocity)
/* Velocity should be between 0 and 200 */
{

    P1_1=1;
    delay_nus(1500+ Velocity);
    P1_1=0;
    P1_0=1;
    delay_nus(1500- Velocity);
    P1_0=0;
    delay_nms(80);

}
void Left()
/* Velocity should be between 0 and 200 */
{

    P1_1=1;
    delay_nms(20);  
    P1_1=0;
    P1_0=0;
    P1_0=0;

   delay_nus(1300);

}
void Right()
/* Velocity should be between 0 and 200 */
{

    P1_1=0;
    P1_1=0;
    P1_0=1;
    delay_nus(1300);
    P1_0=0;
    delay_nms(20);

}
void Backward(int PulseCount,int Velocity)
/* Velocity should be between 0 and 200 */
{
int i;
for(i=1;i<= PulseCount;i++)
{
P1_1=1;
delay_nus(1500-Velocity);
P1_1=0;
P1_0=1;
delay_nus(1500+ Velocity);
P1_0=0;
delay_nms(20);
}
}
int main(void)
{

while(1)
{

uart_Init();
printf("Program Running!\n");


if&&(RightIR==0)&&(LeftIR==0))  
 {Forward(600);}                                                       //前进



if((RightIR==1)||(RightIR==))                                                //左weitiao
{
Left();
}


if((LeftIR==1)||(LeftIR==1))                                                      //右weitiao
{
Right();
}

}

}

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • qq_31339387
    我会一直在 2015-09-16 23:21

    图片说明

    点赞 评论
  • 91program
    91program 2015-09-16 23:30

    这不是C语言的问题,而是你想搞清楚如何通过C语言来控制的问题,这个你知道吗?我是不知道。

    点赞 评论
  • qq_27564553
    Crawl.W 2015-09-17 00:25

    加速减速无非是空了电压高低,自己看看 占空比 这个概率,看看怎么控制电压

    点赞 评论
  • Reoger
    Reoger 2015-09-17 00:28

    只玩过半个学期的51单片机,这样的板子没玩过,不过原理应该差不多吧,你可以通过调节马达的占空比来控制速度,或者你可以设置延时来控制(不推荐这种方式),这样车子在前进的时候才不会脱离轨道.

    点赞 评论

相关推荐