Der Fernsteuer Empfänger gibt die Servo Impulse raus. Diese Pulslänge möchte ich mit dem Arduino ermitteln und im Terminal ausgeben.
Dazu wird ein Servokanal an den Arduino angeschlossen.
+ an +5V
– an GND
Signal an D2
Hier das Programm mit serieller Ausgabe
// Servo Pulslänge vom Empfänger in den Arduino einlesen
//
// Matthias Busse 20.07.2015 Version 3.0
int empfaengerPin=2; // Empfänger Signalleitung
int pulslaenge; // Pulslänge in Mikrosekunden
void setup() {
pinMode(empfaengerPin, INPUT);
Serial.begin(38400);
}
void loop() {
pulslaenge = pulseIn(empfaengerPin, HIGH);
Serial.println(pulslaenge);
delay(100);
}
Bei mir werden Impulslängen von 998 bis 1983 ausgegeben und ca. 1490 in Mittelstellung, das passt gut.
Hier wird die pulseIn() Funktion beschrieben.
Software: Arduino 1.6.1
Hardware: Arduino Nano, Fernsteuerung TGY-i6 mit Empfänger TGY-iA6
von Matthias Busse

