Forum: Mikrocontroller und Digitale Elektronik PUE Pins und Ports


von Paul (Gast)


Lesenswert?

Hallo
In einer Beschreibung zu einem Attiny gibt es die Bezeichnung PUE. Die 
wird in Zusammenhang mit Pins und Ports genannt.
Was ist das genau? oder wie wird es angewendet?

LG Paul

von Einer K. (Gast)


Lesenswert?

Pull-Up-Enable
Bei den älteren wird das über das PORT Register gemacht.
Die neueren haben dafür das PUE Register

Zweck?
Naja...

Es lässt sich leichter ein OpenDrain Pin emulieren, ohne kurzzeitig 
floatenden Pin.
Es erlaubt u.U. den Verzicht auf einen externer Pullup.

von Paul (Gast)


Lesenswert?

Hat du mal ein Beispiel dazu, damit ich es besser verstehe?

von Einer K. (Gast)


Lesenswert?

Weißt du wie ein  OpenDrain Pin funktioniert?
z.B. bei I2C ?

von Paul (Gast)


Lesenswert?

Meinst du damit das ein Pin für den I2C Bus nach 5 V gelegt wird. Wenn 
der Transistor im IC schaltet wird der Pin nach GND gezogen.

von Paul (Gast)


Lesenswert?

In meinem C-Buch steht nichts dazu drin. Gibt es Wiki oder Artikel dazu?

von Oliver S. (oliverso)


Lesenswert?

Ja

Oliver

von Einer K. (Gast)


Lesenswert?


von Manfred (Gast)


Lesenswert?

Paul schrieb:
> Meinst du damit das ein Pin für den I2C Bus nach 5 V gelegt wird.

Paul schrieb:
> In meinem C-Buch steht nichts dazu drin.

Da fehlen Grundlagen der Schaltungstechnik, das hat mit der 
Programmiersprache nichts zu tun.

Vereinfacht stellen wir uns einen Schalter mit drei Anschlüssen 
(Umschalter) vor: Eine Seite an Masse (GND), die andere an +5V, das wäre 
ein Standard µC-Ausgang. Da kommen entweder 5V raus oder der Ausgang ist 
mit GND verbunden.

Jetzt klemmen wir die +5V ab: Der Ausgang ist dann offen und nur in der 
anderen Schalterstellung mit GND verbunden - das wäre der OpenDrain-Out, 
wie er für den I2C-Bus benötigt wird.

Beim I2C-Bus sind beide Leitungen mit einem Widerstand nach Plus 
beschaltet. Keines der angeschlossenen ICs darf Spannung liefern. 
I2C-ICs, die gerade nichts zu tun haben, sind offen, also elektrisch 
garnicht da. Wenn ein IC etwas zu melden hat, zieht es die Leitung nach 
Masse, geht danach aber wieder aus. In der Fachliteratur heißt das 
"wired OR".

Die Register im Controller haben den Sinn, dessen Anschlüsse passend 
einzustellen: Als Ausgang, als openDrain-Ausgang, als Eingang oder als 
Eingang mit Pullup.

------

So, liebes Forum, jetzt verhaut mich, weil ich einige Details 
vereinfacht habe :-)

von W.A. (Gast)


Lesenswert?

Manfred schrieb:
> Wenn ein IC etwas zu melden hat, zieht es die Leitung nach
> Masse, geht danach aber wieder aus. In der Fachliteratur heißt das
> "wired OR".

Man könnte auch sagen, dass Masse auf I2C den dominanten Zustand 
darstellt.

von Manfred (Gast)


Lesenswert?

W.A. schrieb:
> Man könnte auch sagen, dass Masse auf I2C den dominanten Zustand darstellt.

Erkläre bitte Deine Definition von "dominant".

Im zeitlichen Verlauf wird der I2C überwiegend "offen" sein, also per 
pullup an Ub. Auf Masse kommt er nur während aktiver Datenübertragungen.

von Paul (Gast)


Lesenswert?

So weit klar. Das benutze ich z.B. um LEDs oder über einen zusätzlichen 
Transistor Relais zu schalten.
Bei der Programmierung eines I/O benutze ich dann DDRx, Portx um Pins 
als Eingang oder Ausgang zu setzen.
Doch wie mache ich das mit PUE? Was schalte/defeniere ich damit?
Es wurden verschiedene Quellen angegeben. Leider empfinde ich es so, das 
sie nicht zutreffen. Es werden OpenDrain beschrieben. Direkt zu PUE oder 
was ich genau damit mache steht nicht viel drin. (mehr garnichts) So wie 
ich das anhand der Datenblätter vom Attiny 441 und 841 gesehen habe 
werden die Pins damit eingestellt.
Könnte jemand an Hand eines Beispiel es kurz zeigen?
LG Paul

von W.A. (Gast)


Lesenswert?

Manfred schrieb:
> Erkläre bitte Deine Definition von "dominant".

Wenn ein Teilnehmer den dominanten Pegel auf den Bus legt, können die 
anderen sagen was sie wollen. Auf dem Bus bleibt der dominante Zustand 
bestehen.

von Einer K. (Gast)


Lesenswert?

Paul schrieb:
> Doch wie mache ich das mit PUE? Was schalte/defeniere ich damit?

Mit Pull-Up-Enable schaltest du die Pullups ein.
Was verstehst du daran nicht?

Paul schrieb:
> Leider empfinde ich es so, das sie nicht zutreffen.
OK.
Natürlich kann man Empfindungen höher bewerten, als Logik, Datenblätter 
usw., das macht dich vielleicht zu einem besseren Menschen, aber nicht 
unbedingt zu einem besseren Entwickler.

Klarer:
Was verstehst du an "Pullup Einschalten" nicht?
Zweifelst du die Notwendigkeit an?

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.