Forum: Mikrocontroller und Digitale Elektronik Tabelle Ausgang DDR,PORT,PUE beim Attiny841


von Pauli (Gast)


Angehängte Dateien:

Lesenswert?

Hallo
Im Datenblatt des Attiny 841 ist die Tabelle drin mit den Zuständen beim 
DDR,PORT und PUE. Leider ist mir der Kommentar vollkommen unklar. Die 
Übersetzer helfen beim Sinn leider nur wenig weiter.
Habe das mal übersetzt, stimmt aber nicht so richtig:

0 X 0   Eingang nein   Tri-State (hi-Z)

0 X 1   Eingang Ja   Stromquellen, wenn extern niedrig gezogen

1 0 0   Ausgang nein   Ausgang niedrig (Senke)

1 0 1   Ausgabe Ja  NICHT EMPFOHLEN.
Ausgang niedrig (Senke) und interner Pull-up aktiv. Quellen: Strom durch 
internen Pull-up-Widerstand und verbraucht Macht ständig

1 1 0   Ausgang nein   Ausgang hoch (Quelle)
1 1 1    Ausgang Ja   Ausgang hoch (Quelle) und interner Pull-up aktiv
Hat jemand eine bessere übersetzung?
LG Pauli

von S. Landolt (Gast)


Lesenswert?

> der Kommentar vollkommen unklar
Obwohl die drei Sätze vor dieser Tabelle gelesen wurden? Vielleicht 
nochmals lesen, die sind ausführlich, wohingegen dieser Kommentar ja nur 
die Zusammenfassung darstellt.

von Achim H. (pluto25)


Lesenswert?

Nich so richtig :-)
Das DDR schaltet die Ausgangstreiber 0=Eingang(Treiber deaktiviert)
Das Port enthält den Wert den die Treiber ausgeben.Daher ist sein Wert 
auch egal (X) solange sie deaktiviert sind.
Das Nein/Ja bezieht sich auf einen internen Pullup-Widerstand. Ca 75kohm 
die nach Vcc geschaltet werden wenn PUE 1 ist. Das 1 0 1 bedeutet das 
die Treiber  Gnd treiben während der Pullup zugeschaltet ist. Kein 
Beinbruch (wenige µA), dem Chip macht das nichts nur die Batterie wäre 
schneller leer.

von Pauli (Gast)


Lesenswert?

Du meinst diese Sätze:

Jeder Port-Pin besteht aus vier Registerbits: DDRxn, PORTxn, PUExn und 
PINxn.

Das DDRxn-Bit im DDRx-Register wählt die Richtung dieses Pins aus. Wenn 
DDRxn als logische Eins geschrieben wird, wird PINxn zum Ausgangspin.
Wenn DDRxn mit logischer Null geschrieben wird, wird PINxn als 
Eingangspin konfiguriert.

Wenn PORTxn als logisch Eins gesetzt wird und PINxn als Ausgangspin 
konfiguriert ist, wird der Port-Pin auf High (Eins) gesetzt.

Wenn PORTxn als logische Null gesetzt wird und PINxn als Ausgangspin 
konfiguriert ist, wird der Port-Pin auf Low (Null) gesetzt.

Wenn ein Pull-up-Freigabebit, PUExn, gesetzt wird, wird der 
Pull-up-Widerstand am entsprechenden Port-Pin, PINxn, aktiviert.

DDR, PORT, PUE, PIN – Registerbits
x – Angabe der Ports (A, B)
n – Angabe der PINS (0-7)

Das beschreibt was die Register machen, das ist klar. Aber gerade das 
was erlaubt ist und warum das so ist. Deshalb such ich nach einer 
vernünftigen übersetzung.

von S. Landolt (Gast)


Lesenswert?

Jetzt bin ich etwas ratlos - offenbar wurde doch alles verstanden. Dann 
sollte sich der Kommentar von selbst ergeben. Und "erlaubt" ist alles, 
nur ist nicht alles sinnvoll.

Vielleicht PINxn etwas deutlicher: das ist immer ein Eingangspin, 
"independent of the setting of Data Direction bit DDxn".

von S. Landolt (Gast)


Lesenswert?

Ich versuch's mal:

- hochohmig
- liefert (etwas) Strom, wenn gegen Masse (GND) gezogen
- Ausgang low (zieht Strom)
- nicht empfohlen, da unnötiger Stromverbrauch
- Ausgang high (liefert Strom)
- Ausgang high mit internem Pull-up-Widerstand

Pardon, sieht merkwürdig aus, ich kann's nicht besser.

von S. Landolt (Gast)


Lesenswert?

> Vielleicht PINxn etwas deutlicher: das ist immer ein Eingangspin
Sollte besser 'Eingangsregister' heißen.

von Pauli (Gast)


Lesenswert?

Pauli schrieb:
> 0 X 0   Eingang nein   Tri-State (hi-Z --> hochohmig, Tri-State ??

S. Landolt schrieb:
> liefert (etwas) Strom, wenn gegen Masse (GND) gezogen--> bei einem R von 75 kOhm 
fliesst nur wenig Strom

S. Landolt schrieb:
> Ausgang low (zieht Strom)--> das ist mir unklar

Das sieht richtig gut aus. Leider sind mir diese 3 Sachen noch unklar

von S. Landolt (Gast)


Lesenswert?

0 X 0 : Ausgangstreiber abgeschaltet, kein Pull-up-Widerstand, also 
hochohmiger Eingang, mit PINxn zu lesen

0 X 1 : (interner) Pull-up-Widerstand an Vcc, was dieser eben an Strom 
gegen ein niedrigeres Niveau, z.B. GND, liefern kann

1 0 0 : Ausgangstreiber zugeschaltet und auf low, zieht Strom von einem 
höheren Niveau, z.B. Vcc, und das mit niedrigem Widerstand, also 
mindestens einige mA

von S. Landolt (Gast)


Lesenswert?

PS:
0 X 1 ist natürlich auch eine typische Konfiguration als Eingang, nur 
eben mit internem Pull-up, man spart sich damit einen externen.

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.