www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATmega-pin als Ein- und Ausgang verwenden


Autor: Andi (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

bräuchte hier mal euren Rat zu der Schaltung im Anhang. Ich möchte um 
Pins zu "sparen" mit dem Selben Pin am Microcontroller erst prüfen ob 
der Dip-Schalter umgelegt ist und diesen Pin dann auch nutzen um ein 
Signal auszugeben (Switch anzusteuern).

Funktioniert das so mit dieser Schaltung?

laut meinem Verständnis würde die Schaltung dann so arbeiten:

Schalter aus: mega8pin: 1 durch R1 pullup und SWITCH: 0 durch R2 
pulldown

Schalter an: mega8pin und SWITCH: 0 durch pulldown R2, da R2<R1

ausserdem kann ich wenn der Schalter an ist dann mit dem mega8pin den 
Switch auf 1 schalten.

Funktioniert das so oder gibts ne bessere Lösung?

Danke,

Andi

Autor: AVRFan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Funktioniert das so oder gibts ne bessere Lösung?

Es funktioniert unter der Einschränkung, dass der Controller keinen 
Einfluss auf den Switch nehmen kann (der µC kann den Switch weder ein- 
noch ausschalten), solange der Schalter offen ist.

Ich denke nicht, dass es eine bessere Lösung gibt, weil Deine ja ohnehin 
nur zwei Widerstände benötigt.

Autor: AVRFan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch vergessen: Während der Zeitspanne, in dem der µC den 
Schalterzustand abfragt, liegt am Eingang des Switches in jedem Fall 
"L"-Pegel an.  Läßt Du den µC den Schalter zyklisch abfragen (z. B. alle 
10 ms), dann liegt am Switch folglich dieses Muster an:

...HHHHHHHHHHHHHLHHHHHHHHHHHHHHHHHLHHHHHHHHHHHHHHHHHLHHHHHHHH...
                |<---- 10 ms ---->|<---- 10 ms ---->|

In diesem Fall musst Du sicherstellen, dass die kurzen L-Unterbrechungen 
auf den Switch keine unerwünschte Wirkung haben können.

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der AVR hat interne PullUps. Das spart noch den einen externen ein. Wenn 
der S1 mit 4k7 an Masse gelegt wird, gibt es sichere Low-Pegel. Ist S1 
offen, zieht der interne PullUp nach High. Soll der Pin eine Ausgabe 
machen, einfach das DDRx auf "1" setzen. Den Strom über den S1 und den 
PullDown kann der Pin allemal liefern.

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.