Hallo,
ich habe (wie aus der Überschrift ersichtlich) ein Problem mit der PWM-Auswertung eines RC-Empfängers. Ich kriege irgendwie immer Werte die einfach nicht stimmen können.
Doch zuerst einmal zum Projekt:
Ich möchte über meine RC-Anlage Steuerbefehle senden und je nach "Knüppelposition" mehrere Servos unterschiedlich ansteuern.
Hardware:
Als Microcontroller verwende ich einen MEGA 2560 (brauche ich aufgrund der Anzahl von zu steuernden Servos)
Die Sender sind entweder eine Robbe Futaba F-14 40MHz(Periodendauer des Signals etwa 21ms bei 1-2 ms HIGH mit 3V)
oder eine Robbe Futaba T8FG SUPER 2,4GHz(Periodendauer 14ms ebenfalls mit 1-2ms HIGH und 3V)
Die Werte für die Empfängersignale habe ich mit einem PC-Oszilloskop bestimmt.
Problem:
Wenn ich nun Versuche diese Signale über meinen Microcontroller mittels "pulseIn" einzulesen und vorerst auf dem seriellen Monitor anzuzeigen bekomme ich fortlaufend Werte von etwa 10000 (müssten us sein, da ich noch keinen Teiler verwendet habe).
Da mich dieser Wert stutzig gemacht hat bin ich auf Fehlersuche gegangen und habe gemerkt, dass der Microcontroller diese Werte ausgibt, sobald ich eine Leitung an den betreffenden Ausgangspin des Controllers lege (bei nicht angeschlossener Leitung wird ein Wert von 0 ausgegeben). Die betreffende Leitung ist am anderen Ende NICHT angeschlossen. Auch wenn ich die entsprechende Leitung auf den gewählten Empfänger-Ausgang lege, werden mir die gleichen Werte angezeigt.
Ich habe schon überlegt, ob die Leitung evtl. als Antenne irgendwelche Störsignale einfängt (z.B. Signale vom Sender oder auch WLAN-Signale) , dachte jedoch diese müssten vom Empfängersignal überlagert werden.
Ich habe auch schon die Pinbelegung geändert, um einen Defekt auszuschließen und es war das Selbe.
Ich hoffe jemand hat eine Idee was ich falsch gemacht habe.
Ach so habe sicherheitshalber einen 150 Ohm Vorwiderstand hinter dem Empänger eingebaut um den Strom auf etwa 20mA zu begrenzen...