蓝牙小车代码代码记录
#include <Stepper.h>
#include <Servo.h>
#define STEPS 2038
//这里设置步进电机旋转一圈是多少步
Servo myservo;
Stepper stepper(STEPS, PA5, PA6, PA7, PA8);
int cmd;
int du = 0;//角度
void setup() {
Serial.begin(9600);
Serial2.begin(9600);
stepper.setSpeed(6);
myservo.attach(PA11); // 控制线连接数字11
}
void loop() {
while(Serial.available())
{
cmd=Serial.read();//读取蓝牙模块发送到串口的数据
delay(5);
Serial2.println(cmd);
}
controll_motor();
controll_serve();
// digitalWrite(led1,HIGH);
}
void controll_motor(){
if(cmd==1){
stepper.step(2038);
}
if(cmd==5){
stepper.step(-2038);
}
}
void controll_serve(){
if(du<0){
du=0;
}
if(du>180){
du=180;
}
if(cmd==2){
if(du<180){
du+=10;
myservo.write(du); // 舵机角度写入
delay(5);//等待写入
cmd=0;
}
}
if(cmd==3){
if(du>0){
du-=10;
myservo.write(du); // 舵机角度写入
delay(5);//等待写入
cmd=0;
}
}
}