Ich haben ein Code für ein ferngesteuertes Auto geschrieben und das Bluetooth geht nicht könnte mir jemand damit helfen?
Das ist der Code (ich benutze ein Arduino Mega):
#include <Servo.h>
Servo myservo;
char command = 0;
const int motorPin1 = 2;
const int motorPin2 = 3;
int trigger = 5;
int echo = 6;
int buzzer = 7;
long dauer = 0;
long entfernung = 0;
void setup() {
Serial.begin(9600); // Für den seriellen Monitor
Serial1.begin(9600); // Für Bluetooth über Serial1 (Pin 18 = TX1, 19 = RX1)
pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
myservo.attach(4);
myservo.write(90);
pinMode(trigger, OUTPUT);
pinMode(echo, INPUT);
pinMode(buzzer, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
}
void loop() {
if (Serial1.available()) {
command = Serial1.read();
Serial.print("Command: ");
Serial.println(command);
switch (command) {
case 'F':
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
break;
case 'B':
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, HIGH);
digitalWrite(12, HIGH);
digitalWrite(13, HIGH);
break;
case 'S':
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
myservo.write(90);
break;
case 'L':
myservo.write(45);
break;
case 'R':
myservo.write(135);
break;
case 'Y':
tone(buzzer, 250);
delay(2000);
break;
case 'U':
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
break;
case 'u':
digitalWrite(8, LOW);
digitalWrite(9, LOW);
break;
}
}
// Ultraschallmessung und Abstandssensor
digitalWrite(trigger, LOW);
delay(5);
digitalWrite(trigger, HIGH);
delay(10);
digitalWrite(trigger, LOW);
dauer = pulseIn(echo, HIGH);
entfernung = (dauer / 2) * 0.03432;
Serial.print(entfernung);
Serial.println(" cm");
if (entfernung <= 3) {
tone(buzzer, 1000, 100);
delay(100);
}
else if (entfernung <= 6) {
tone(buzzer, 1000, 100);
delay(250);
}
else if (entfernung <= 10) {
tone(buzzer, 1000, 100);
delay(500);
}
else {
noTone(buzzer);
delay(500);
}
}