mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Signalanpassung an ATMEGA


Autor: Christian Besemann (christianbesemann)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich bekomme von einem Fremdgerät folgendes Signal geliefert (sihe Bild, 
jeweils 5V positiv wie auch negativ). Impuls nach oben bedeutet 1, 
Impuls nach unten bedeutet 0. So weit so gut.

Ich möchte diese Siganle aber jatzt im MP über einen Interrupt einlesen 
und entsprechend als 0 und 1 im MP weiter verarbeiten. Hat jemand eine 
Idee, wie ich die positiven und negativen Impulse anpassen kann, so dass 
es mit einem INT des MP erfasst werden kann?

Grüße Chris

Autor: MaWin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst mit einem Eingang nur den Pegel aber nicht den Takt erkennen, 
Du brauchst also 2 Eingänge.

Entweder einen für Takt und den anderen für 0 oder 1,
oder 1 für 1-Takt und den anderen für 0-Takt.

Du kannst ja relativ einfach den Spannungspegel bei gelben Kreuz 
vergleichen (und auf der Unterseite in ähnlichem Abstamd), mit einem 
Komparator. Obwohl einer in vielen AVRs eingebaut ist, haben die nicht 
2. Also ein externer LM393 ?

Da die Impulse recht deutlich sind, reicht vielleicht auch die normale 
Schmitt-Trigger Schaltschwelle eines AVR-Eingangs, wenn du die Spannung 
so weit verschiebst. Das kann man oft durch Spannungsteiler erreichen, 
wenn deren Einfluss auf die Signalamplitude (höhe) tolerabel ist.

Da du NATÜRLICH nicht die Spannungspegel angegeben hast, musst du die 
Schaltung selbst konstruieren.

Eventuell reicht:
                  +------- AVR-Eingang (1-Impuls)
                  |
Signal  --+--10k--+--10k-- Masse
          |
          +--10k---------- AVR-Eingang (0-Impuls (invertiert))

Autor: Rainer M. (excogitator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nur mal so ne Idee:

Das Signal mit nem Einweggleichrichter auf einen µC-Pin und das Signal 
zusätzlich über einen Zweiweggleichrichter auf den INT-Eingang führen. 
Wird nun ein Interrupt ausgelöst in einer entsprechenden ISR den ersten 
Eingang checken -> ist der Einweg-Eingang low kam eine 0 bzw. eine 1 
wenn der Eingang high ist.
Evtl. noch die Eingänge vom µC noch mit nem Reihenwiderstand und ner 
Z-Diode schützen falls die Einganghssignale auch >5V sein können.

Gruß
Rainer

Autor: Christian Besemann (christianbesemann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
super, danke Euch für das Anschupsen!

Chris

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.