/***********************************
课题:KC机器人的学习
功能:利用数组实现车的Move
说明:机器人的移动
时间:2012.12.12
附录:脉冲数量:3/0.023=130个(3S)
***********************************/
#include<BoeBot.h>
#include<uart.h>
void Move(int count,int pulse1,int pulse2) //count代表运行时间,pulse1,pulse2,分别代表小车的左右伺服电机速度(1300~1700之间,1500为静止)
{
int i;
for(i=0;i<count;i++)
{
P1_1=1;
delay_nus(pulse1);
P1_1=0;
P1_0=1;
delay_nus(pulse2);
P1_0=0;
delay_nms(20);
}
}
int main()
{
char Navigation[10]={'F','L','F','F','R','B','L','B','B','Q'};
int address=0;
uart_Init();
printf("Program Running!!\n");
while(Navigation[address]!='Q')
{
switch(Navigation[address])
{
case 'F': Move(65,1700,1300); delay_nms(200); break; //前进1.5S
case 'L': Move(17,1300,1300); delay_nms(200);break; //左转90度
case 'R': Move(17,1700,1700); delay_nms(200);break; //右转90度
case 'B': Move(65,1300,1700); delay_nms(200);break; //后退1.5S
}
address++;
}
while(1);
}