library/esp32_servo/esp32_servo.ino

45 lines
2 KiB
C++

#include <ESP32Servo.h>
#define SERVOPIN 16 // Pin an dem der Servomotor angeschlossen ist. 'GPIO' muss man weglassen -> also nicht GPIO88 sondern nur 88.
#define SERVO_45GRAD_LINKS 136 // Wert um den Servo 45 Grad nach links zu drehen ... der kann je nach Servo anders sein
#define SERVO_45GRAD_RECHTS 45 // Wert um den Servo 45 Grad nach rechtss zu drehen ... der kann je nach Servo anders sein
#define SERVO_0GRAD_MITTE 90 // Wert um den Servo in die Mitte zu drehen ... der kann je nach Servo anders sein
Servo myservo; // ein Servo-Objekt anlegen, um den Servo Motor steuern zu können
void setup() {
Serial.begin(115200); // Serial Monitor aktivieren. Mit dem Monitor kann man sich Werte und Meldungen anzeigen lassen.
myservo.attach(SERVOPIN); // dem Servo Objekt "sagen" an welchen Pin am Schaltkreis der Server angeschlossen ist
}
void loop() {
ServoMitte();
ServoRechts();
ServoMitte();
ServoLinks();
}
//-------------- Funktionen und Prozeduren -------------------------
void ServoRechts(void){
Serial.println("SERVO_RECHTS"); // Meldung am Monitor ausgeben
myservo.write(SERVO_45GRAD_RECHTS); // Servo auf den Winkel rechts drehen
delay(1000); // Kurz warten, dass der Servo die Stellung erreicht
}
void ServoLinks(void){
Serial.println("SERVO_LINKS"); // Meldung am Monitor ausgeben
myservo.write(SERVO_45GRAD_LINKS); // Servo auf den Winkel links drehen
delay(1000); // Kurz warten, dass der Servo die Stellung erreicht
}
void ServoMitte(void){
Serial.println("SERVO_MITTE"); // Meldung am Monitor ausgeben
myservo.write(SERVO_0GRAD_MITTE); // Servo auf den Winkel links drehen
delay(1000); // Kurz warten, dass der Servo die Stellung erreicht
}