Was nützt ein Pull-up/Pull-down mit einem Gegentaktausgang?

Zumindest für einige STM32F4-MCUs ist Push-Pull + Pull-Up/Pull-Down eine gültige GPIO-Konfiguration, aber wofür würden Sie es jemals verwenden und warum? Ich nehme an , es gibt einen vernünftigeren Grund als "Ich hatte wirklich das Gefühl, dass ich diese saftigen zusätzlichen 100 µA Stromverschwendung pro Pin brauche" ...

Die Konfiguration ist im Abschnitt 8.3 des Referenzhandbuchs auf Seite 269 aufgelistet:Geben Sie hier die Bildbeschreibung ein Geben Sie hier die Bildbeschreibung ein

Solche seltsamen Kombinationen illegal zu machen, wäre eine Verschwendung von Silizium, und selbst wenn jetzt niemand einen gültigen Anwendungsfall finden kann, heißt das nicht, dass morgen kein gefunden werden kann. Daher erscheint es mir logisch, solche Konfigurationen legal zu machen.

Antworten (2)

Grundsätzlich zeigt das Diagramm, dass die PUPDR-Bits die Pull-up- und Pull-down-Verbindungen unabhängig von dem OTYPER-Bit steuern, das zwischen Push-Pull und Open Drain umschaltet.

Wahrscheinlich würden Sie PUPDR normalerweise nicht auf etwas anderes als 00 setzen, wenn Sie die Push-Pull-Konfiguration verwenden.

Eine Situation, in der Sie dies tun könnten, wäre, wenn Sie den Pin zwischen Ausgangs- und Eingangsfunktionen umschalten würden. Möglicherweise möchten Sie, dass Pullup oder Pulldown konfiguriert werden, bevor Sie in den Eingabemodus wechseln, um zu vermeiden, dass sich der Eingang jemals in einem wirklich schwebenden Zustand befindet.

Es gibt auch einen analogen Modus (MODER=11, OTYPER=x), der nur für PUPDR=00 definiert ist und die Kombinationen mit anderen PUPDR-Werten vorbehalten lässt. Macht diese Erklärung noch Sinn? (dh wenn die seltsame Konfiguration der Bequemlichkeit dient, warum hat der analoge Modus keine Pullup-/Pulldown-Optionen oder PUPDR=xx?)
@AleksiTorhamo, Sie sollten im Allgemeinen keinen Modus verwenden, der als "reserviert" bezeichnet wird. Das bedeutet, dass das Verhalten im aktuellen Produkt undefiniert ist, aber in einer zukünftigen Version des Produkts möglicherweise als nützlicher Modus verwendet wird. Da Sie nicht wissen, wie sich das zukünftige Produkt verhalten wird, ist es am sichersten, diese Kombination von Bits niemals einzustellen.

Wenn Sie sich aus irgendeinem Grund dafür entscheiden, PP zu trennen, aber PD zu verlassen, treten beim Umschalten keine Störungen auf.