mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PWM-Signal durch A/D Kanäle lesen


Autor: Harald M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Ich plane gerade ein System für den Modellbau. Es sollen die Signale
zwischen Funk-Empfänger und Servo abgefangen, verarbeitet und
weitergeleitet werden.

Allerdings habe ich beim Mega8 ja nur 14 Digitale Ein-/Ausgänge. Das
ist für mein Projekt zu wenig. Einen anderen Controller kann ich,
mangels Verfügbarkeit an meiner Hochschule, leider nicht benutzen.
Deshalb würde ich gerne statt den Digitaleingängen die A/D Wandler
Kanäle des Controllers verwenden, um die Signale vom Empfänger
einzulesen.

Meine Sorge dabei ist allerdings, dass diese Methode zu langsam ist.
Die A/D Kanäle werden ja meines Wissens gemultiplext, und ich muss
mindestens 8 dieser PWM Signale gleichzeitig abfangen.

Als Programmiersprache will ich möglichst C verwenden. Assembler wäre
evtl. zwar möglich aber das mach ich nur sehr ungern.

Meint ihr das ist so möglich ?
Welche Alternativen hätte ich ?

Vielen Dank schonmal,
Harald M.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Analog-Eingänge lassen sich doch auch als ganz normale Digital-IOs
verwenden.

Autor: wolli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Alle ADC-Kanäle bzw. Pins sind auch ganz normal als digitale Pins
ansteuerbar.

Autor: Harald M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ähm, der richtige Begriff für das Signal ist wohl doch nicht PWM.
Es handelt sich dabei um einen Impuls von 1-2 ms Dauer der alle 20 ms
gesendet wird. Die Länge dieses Impulses gibt die Stellung des Servos
an. 1,5ms = Zentralstellung und 1ms bzw. 2ms das Ausschlags Min- bzw.
Maximum.

Meine Emailadresse war auch falsch :)

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hm,
1. kannst du die Analogeingänge auch als Digitalein/ausgänge nutzen,
max. also 23 I/Os
2. kommen die Servosignale nicht gleichzeitig, sondern immer einer nach
dem anderen. D.h. du kannst alle Signale über Dioden zusammenführen und
alle an einen, idealerweise den ICP, legen. Vorraussetzung: eine
winzige Pause zwischen den einzelnen Signalen. Bei meiner etwas älteren
Graupner-Anlage ging das problemlos. Synchronisieren kann man das ganze
über die Impulspause.

_|-|________ Kanal1
___|-|______ Kanal2
_____|-|____ Kanal3

_|-|-|-|____ Gesamtsignal, die einzelnen Impulslängen lassen sich
messen und eindeutig zuordnen.

Autor: Harald M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wolli, Andreas Schwarz:

Das beudeutet für mich ich kann PD0-PD7,PB0-PB5 und PC0-PC5 = 20
Digitale Pins benutzen ?

Wunderbar, danke für eure (schnelle) Hilfe!

Harald M.

Autor: Harald M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
crazy horse:

Dir auch danke für deine Hilfe.

Leider kommt das zusammenführen der Signale für mich nicht in Frage da
das ganze System mit möglichst vielen verschiedenen Empfängern mit
unterschiedlicher Anzahl von Känalen ohne weitere Konfiguration
funktionieren soll. Plug and Pray praktisch :)

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.