Forum: Mikrocontroller und Digitale Elektronik Erkennen ob bei einem AVR ein IC mit einem Ausgang oder Eingang angeschlossen ist.


von Barny (Gast)


Lesenswert?

Guten Tag

Ich habe das Problem, dass bei einer bestehenden Schaltung an einem Port 
des AVR's IC's mit einem Eingang bzw. mit einem Ausgang angeschlossen 
werden können.
Leider hat diese Schaltung an diesem Port keinerlei Schutzbeschaltung.
Es wird rein über die Software vorgegeben ob jetzt der Port ein Einfgang 
oder ein Ausgang ist.

Wenn 2 Eingänge aufeinandertreffen ist es ja nicht so schlimm.
Wenn 2 Ausgänge aufeinandertreffen sieht's nicht so gut aus.

Gibt es eine Möglichkeit softwaremäßig festzustellen, was da am Port 
angeschlossen ist?
Ich habe leider nur nach dem Power-Up nur maximal 2 Sekunden Zeit.

Leider fangen angeschlossene Komponenten zwischen 1 und 5 Sekunden nach 
dem Power up an zu senden.
Das kann ich nicht beeinflussen.

Gibt es da eine Change sicher herauszufinden was angeschlossen ist oder 
muss ich darauf vertrauen, dass die richtige Einstellung / Software 
ausgewählt worden ist?

von Detlev T. (detlevt)


Lesenswert?

Mir fallen da zwei Möglichkeiten ein:

1.) Warten, ob der andere sendet. Wenn ja, dann ist das ein Ausgang ;-)
2.) Mit einem externen (hochohmigen >= 100k) Pull-Down den Pin erst auf 
Masse ziehen, Pin einlesen, dann den internen Pull-Up einschalten und 
gucken, ob der Pegel dadurch von low auf high geht. Falls ja, handelt es 
sich um einen Eingang.

Gruß, DetlevT

von henne (Gast)


Lesenswert?

...oder es ein Ausgang in einem momentanen TriState ist...

sorry,
hendrik

von Michael U. (amiga)


Lesenswert?

Hallo,

habe ich auch kurz drüber nachgedacht, aber was passiert wohl, wenn das 
externe Gerät dort einen Eingang mit 4,7k PullUp hat?

PS: wer entwickelt sowas?
Hat der zuhause auch einen Haufen Kabel mit Netzstecker und probiert 
eben mal, ob am anderen Ende eine Lampe oder vielleicht das Kraftwerk 
dran ist?

Gruß aus Berlin
Michael

von Winfried J. (Firma: Nisch-Aufzüge) (winne) Benutzerseite


Lesenswert?

Hallo,
über den Schrottwert derartiger Kostruktionen muss wohl icht lametiert 
werden.

Lösung: keine,
da du zwar de Pegel testen kannst icht aber den Widerstand des 
ageschlossenen Zweiges und somit weder kollisionen noch 
darausresultierende Schäden vermeiden kannst.

dies kann bei mehree sendern nur die HWbusarchitektur (z.b.I²C) und 
daraus abgeleitet das protokoll siehe Arbitierug. das protokoll muss dan 
dafür sorge tragen das dass Gesedete mit dem zu Sendenden Übereinstimmt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.