mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR Eingangsbeschaltung - 12V, 0V und offen erkennen


Autor: André Wippich (sefiroth)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen!

Ich suche einen Eingangsbeschaltung für Atmel Mikrocontroller (wie 
ATmega168), die in der Lage ist sicher mit Spannungssignalen aus dem 
KfZ-Bordnetz umzugehen.

Bevor es Kritik hagelt: Im folgenden nenne ich die KfZ-Bordspannung 
einfach 12V - ich weiß, dass diese zwischen 9 und 15V liegt und mit 
Spannungsspitzen behaftet sein kann. Aber 12V ist der verbreitete Wert 
und einfach kürzer zu schreiben ;-)

Ich habe bereits eine Eingangsbeschaltung, die einen Schalter auf 12V 
(ansonsten Leitung offen) erkennt. Ich habe auch eine 
Eingangsbeschaltung, die einen Schalter auf GND (ansonsten Leitung 
offen) erkennt. Ich hatte nun die Idee, ob es nicht möglich ist mit ein 
paar robusten Bauteilen eine wie auch immer geartete Schaltung 
aufzubauen, die eine offene Leitung als Low Pegel und eine Leitung mit 
entweder 0V oder 12V als High-Pegel ausgibt.

Aber außer einer Operationsverstärkerschaltung ist mir da nichts 
eingefallen... Damit könnte man ja auf die Bordnetz-Leitung mittels 
Pull-Up Widerstand eine Grundspannung auf die Leitung legen und je ein 
Komparator schaut ob die Spannung nach unten gezogen (GND) oder nach 
oben angehoben (12V) wird.

WICHTIG: Das Ganze ist mehr ein Gedankenspiel, ob so etwas überhaupt 
möglich ist. Einen realen Anwendungsfall wüsste ich jetzt nicht 
unbedingt - normalerweise weiß man ja, mit welchen Signalen an der 
eigenen Schaltung zu rechnen ist ;-)

Gruß,
André

Autor: Thomas Eckmann (Firma: Thomas Eckmann Informationst.) (thomase)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst einem GPIO 2 Zustände erfassen: 0 und 1.

Begingung: Port = Eingang, kein Pullup

Liegen 12V an, die Massnahme, dass deine Eingangsspannung Vcc nicht 
übersteigt, überlasse ich dir, erhälst du 1.

1 == 12V. Abgehakt.

Liegt GND an, erhältst du 0.
Ist der Eingang offen erhältst du auch 0.
Jetzt schaltest du den Pullup ein.
Liegt GND an, bleibt der Eingang 0.
Ist der Eingang offen, erhältst du 1.


mfg.

Autor: Loonix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas Eckmann schrieb:
> Begingung: Port = Eingang, kein Pullup

Erlaube mir die kleine Korrektur:

Bedingung: Port = Eingang, kein externer Pullup

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Ist der Eingang offen erhältst du auch 0.

Das ist eine gewagte Annahme.

MfG Spess

Autor: Loonix (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
spess53 schrieb:
>>Ist der Eingang offen erhältst du auch 0.
>
> Das ist eine gewagte Annahme.

Stimmt, da fehlen noch weitere kleine Korrekturen:

Interner Pullup eingeschalten:
- Liegt GND an, erhältst du 0.
- Ist der Eingang offen erhältst du 1.

Jetzt schaltest du den Pullup aus:
- Liegt GND an, bleibt der Eingang 0.
- Ist der Eingang offen, floatet der Eingang

Floatende Pins sind immer böse, mal davon abgesehen dass sie 
naturgemäß keinen stabilen Zustand annehmen. Man erhält also keinen 
Vorteil aus dieser Schaltungsvariante. Kannst genausogut raten oder 
einen Zufallsgenerator als Orakel gebrauchen ;)

Autor: Thomas Eckmann (Firma: Thomas Eckmann Informationst.) (thomase)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
spess53 schrieb:
> Das ist eine gewagte Annahme.

Was denn sonst?

mfg.

Autor: Thomas Eckmann (Firma: Thomas Eckmann Informationst.) (thomase)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Loonix schrieb:
> Jetzt schaltest du den Pullup aus:
>
> - Liegt GND an, bleibt der Eingang 0.
>
> - Ist der Eingang offen, floatet der Eingang

Ok. Dann hängt man eben noch 100K an Masse.

mfg.

Autor: hp-freund (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da fällt mir wieder der gute alte A277D im Punktbetrieb ein. Den Eingang 
durch 2 gleiche R auf halbe Spannung legen und die gewünschten 
Ausgangsspannungen (LED-Ausgang) durch Dioden ODER-Schaltung verknüpfen.

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.