www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM-Signal aus Fernsteuerempfänger auslesen


Autor: Bernhard S. (dk9nw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

Ich möchte aus eine vorhandenen Fernsteuerung das Ausgangssignal
eines Servokanals auslesen, um dessen Pulslänge feststellen
und in einer Variablem im mc ablegen.

Dieses PWM-Servorsignal ist - wie zu erwaten - ein Rechtecksignal
mit einer der Steuerknüppel entsprechenden Pulslänge zwischen
0.9 und 2.1 ms - alle 22 ms wiederholt. 0 auf 4.8 Volt
So sehe ich es auf dem Oszi.

Allerdings nehme ich erst mal ein wesentlich langsameres Rechteck
(1sec lang und alle 3 sec wiederholt) aus dem Signalgenerator,
um die Vorgänge an den LEDs besser beobachten zu können.

Vorhanden ist eine Experimentierplatine (AVR-Ctrl) mit einem ATmega644.

Das PWM-Signal habe ich an PA0=ADC0 angeschlossen.
Der eigentliche Comparatoreingang AIN1 ist schon mit einer LED belegt.

Deshalb habe ich per Muxer auf AIN1 geschwenkt
ADMUX &= ~( (1<<MUX2) | (1<<MUX1) | (1<<MUX0) );

Das geht alles so weit. Das Problem: Eigentlich wollte ich den
IR nur bei steigender Flanke auslösen. Er löst aber momentan
sowohl bei steigender, als auch fallender Flanke aus.
Reagiert irgendwie nicht auf ACIS1 oder ACIS0

Das gilt sowohl, wenn ich auf den IR ANALOG_COMP_vect schaue,
als auch bei einer Weiterleitung in Richtung Counter1 beim
TIMER1_CAPT_vect  wie im Programmbeispiel zu sehen.

Wo könnte da der Fehler stecken?

Bernhard

Autor: Bernhard S. (dk9nw)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hat vorhin irgendwie den Sourcecode nicht mitkopiert.
Deshalb hier der zugehörige C-Code.

Autor: Bernhard S. (dk9nw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fall erledigt. Habe einfach auf External IR mit Eingang INT1 = PD3
umgestellt und schon geht es perfekt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.