遥控小车是每个人童年的最爱,不仅好奇它的奇妙,更是喜欢它带来的刺激。小编为大家带来几篇博客,来给大家讲讲制作遥控小车的程序。
看大标题可知我们一共有五个方法去制作一款带有遥控功能的小车,小编分开来给大家讲解。
本文为基于arduino的手机蓝牙遥控小车
int receive;
void rev(void);
void setup()
{
Serial.begin(9600); //串口波特率115200(PC端使用)
pinMode (leftA_PIN, OUTPUT); //设置引脚为输出引脚
pinMode (leftB_PIN, OUTPUT); //设置引脚为输出引脚
pinMode (righA_PIN, OUTPUT); //设置引脚为输出引脚
pinMode (righB_PIN, OUTPUT); //设置引脚为输出引脚
}
void loop()
{
rev();
}
void rev(void)
{
receive=Serial.parseInt();
if(receive==0) {forward( ) ;delay(1000);_stop();}//前进
else if(receive==6) {back( ) ;delay(1000);_stop();}//后退
else if(receive==1) {_stop() ;delay(1000);_stop();}//停车
else if(receive==3) {turnLeftforword( ) ;delay(1000);_stop();}//左前
else if(receive==2) {turnRightforword( );delay(1000);_stop();}//右前
else if(receive==5) {turnLeftback( ) ;delay(1000);_stop();}//左后
else if(receive==4) {turnRightback( ) ;delay(1000);_stop();}//右后
}
/**************************************************
forward子函数——前进子函数
函数功能:控制车前进
**************************************************/
void forward( )
{
analogWrite(leftA_PIN,120);
analogWrite(leftB_PIN,0); //左轮前进
analogWrite(righA_PIN,120);
analogWrite(righB_PIN,0); //右轮前进
}
/**************************************************
back子函数——后退子函数
函数功能:控制车后退
**************************************************/
void back( )
{
analogWrite(leftA_PIN,0);
analogWrite(leftB_PIN,120); //左轮后退
analogWrite(righA_PIN,0);
analogWrite(righB_PIN,120); //右轮后退
}
/**************************************************
turnRightforword子函数——原地右转子函数
函数功能:控制车右前
**************************************************/
void turnRightforword( )
{
analogWrite(leftA_PIN,200);
analogWrite(leftB_PIN,0); //左轮前进
analogWrite(righA_PIN,120);
analogWrite(righB_PIN,0); //右轮前进
}
/**************************************************
turnLeftforword子函数——原地右转子函数
函数功能:控制车左前
**************************************************/
void turnLeftforword( )
{
analogWrite(leftA_PIN,120);
analogWrite(leftB_PIN,0); //左轮前进
analogWrite(righA_PIN,200);
analogWrite(righB_PIN,0); //右轮前进
}
/**************************************************
turnRightforword子函数——原地右转子函数
函数功能:控制车右后
**************************************************/
void turnRightback( )
{
analogWrite(leftA_PIN,0);
analogWrite(leftB_PIN,200); //左轮前进
analogWrite(righA_PIN,0);
analogWrite(righB_PIN,120); //右轮前进
}
/**************************************************
turnLeftforword子函数——原地右转子函数
函数功能:控制车左后
**************************************************/
void turnLeftback( )
{
analogWrite(leftA_PIN,0);
analogWrite(leftB_PIN,120); //左轮前进
analogWrite(righA_PIN,0);
analogWrite(righB_PIN,200); //右轮前进
}
/**************************************************
stop子函数—停止子函数
函数功能:控制车停止
**************************************************/
void _stop()
{
analogWrite(leftA_PIN,0);
analogWrite(leftB_PIN,0); //左轮静止不动
analogWrite(righA_PIN,0);
analogWrite(righB_PIN,0); //右轮静止不动
}
细节待更