伺服舵机控制程序

来源:互联网 发布:java刘备猜拳游戏代码 编辑:程序博客网 时间:2024/06/09 14:27

/***********************************************************
功能:KC伺服舵机测试程序
说明:P1_0接左电机,P1_1接右电机
时间:2012.12.12
作者:荆轩道
************************************************************/
#include<BoeBot.h>
#include<uart.h>


/*小车全速前进*/
void forward()
{
  P1_0=1;              //P1_0输出高电平 
  delay_nus(1700);       //延时1700ns
  P1_0=0;              //P1_0输出低电平               
  delay_nms(20);     //延时20ms

  P1_1=1;      //P1_1输出高电平
  delay_nus(1300);       //延时1500ns
  P1_1=0;     //P1_1输出低电平
  delay_nms(20);     //延时20ms
}  
/*小车停止*/
void stop()
{
  P1_0=0;              //P1_0输出高电平
  P1_1=0;      //P1_1输出高电平
  delay_nus(1500);       //延时1500ns
  P1_0=0;              //P1_0输出低电平
  P1_1=0;              //P1_1输出低电平
  delay_nms(20);     //延时20ms
}

/*小车全速后退*/
void back()
{
  P1_0=1;              //P1_0输出高电平 
  delay_nus(1300);       //延时1500ns
  P1_0=0;              //P1_0输出低电平               
  delay_nms(20);     //延时20ms

  P1_1=1;      //P1_1输出高电平
  delay_nus(1700);       //延时1500ns
  P1_1=0;     //P1_1输出低电平
  delay_nms(20);     //延时20ms
}  
/*绕中心右转*/
void turn_right_center()

  P1_0=1;              //P1_0输出高电平
  P1_1=1;      //P1_1输出高电平
  delay_nus(1300);   //延时500ms
  P1_0=0;              //P1_0输出低电平
  P1_1=0;              //P1_1输出低电平
  delay_nms(20);     //延时20ms
}

/*绕中心左转*/
void turn_lift_center()

  P1_0=1;              //P1_0输出高电平
  P1_1=1;      //P1_1输出高电平
  delay_nus(1700);   //延时500ms
  P1_0=0;              //P1_0输出低电平
  P1_1=0;              //P1_1输出低电平
  delay_nms(20);     //延时20ms
}
void direction_right()
{
   int i;
 for(i=0;i<=2000;i+=4)
 {
   P1_2=1;
   delay_nus(500+i);
   P1_2=0;              //P1_1输出低电平
   delay_nms(20);
 }
}

int main(void)
{
 int i;
 uart_Init();             //初始化串口
 printf("The LEDs connected to P1_0 and P1_1 are blinking!\n ");
 while(1)

 {

   for(i=0;i<50;i++)
   {
      forward();
   }
    for(i=0;i<20;i++)
   {
      stop();
   }

    for(i=0;i<16;i++)
   {
     turn_lift_center();
   }
    for(i=0;i<20;i++)
   {
      stop();
   }
    for(i=0;i<50;i++)
   {
      back();
   }
   for(i=0;i<20;i++)
   {
      stop();
   }
   direction_right();

 }

}

 

原创粉丝点击