Nicht verwendete GPIO-Pins müssen als Pull-Up oder Pull-Down konfiguriert werden [geschlossen]

Ich arbeite seit kurzem an eingebetteten Systemen. Ich konfiguriere GPIO-Pins für MCU. Aber ich bin etwas verwirrt, ob ich sie nach oben oder nach unten ziehen soll. Gibt es eine Konfigurationsregel, die befolgt werden muss, um den Stromverbrauch zu minimieren, oder sind diese Konfigurationen MCU-spezifisch? Bitte beachten Sie, dass ich unbenutzte Pins als Eingangs-GPIOs gelassen habe. Ich verwende derzeit ARM Coprtex M0+ MCU

Es hängt von der genauen Marke des Controllers ab. Auf STM32 habe ich den kleinsten Strom bekommen, wenn ich sie als analogen Eingang konfiguriert habe, auf dem MSP430-Ausgang war Low ziemlich gut. Wenn Sie unverbundene Pins als Eingang belassen, kann dies zu Problemen mit Interferenzen führen.
Lesen Sie das Datenblatt und Sie werden vielleicht finden, wonach Sie suchen. Sie haben einen separaten Abschnitt darüber, was mit unbenutzten Stiften zu tun ist.
Wie die Eingangspins konfiguriert werden sollten, hängt ganz von Ihrer Anwendung ab. Wir können diese Frage nicht beantworten, ohne viel mehr darüber zu wissen, was Sie tun.
Vielen Dank, ich werde das Datenblatt beziehen. Ich dachte, dass es eine allgemeine Regel gibt, die branchenweit befolgt wird. Aber es scheint, dass basierend auf Transistoren (N-Typ oder p-Typ) und anderen Schaltkreisen unbenutzte Gpio-Pins konfiguriert sind.

Antworten (1)

Die Antwort lautet: "Es hängt von Ihrem uC und Ihrem System ab", da einige ICs einen geringeren Strom ziehen, wenn der Eingang intern hochgezogen wird, andere bei einem Herunterziehen. Andere ICs (die meisten AVR) haben nur eine Pull-up-Option, also gibt es nichts zu wählen, außer pu ja/nein.

Dennoch sollten Sie vermeiden, sie ohne Pullup/Down unkonfiguriert zu lassen. Die hohe Eingangsimpedanz würde dazu führen, dass sie das gesamte Rauschen aufnehmen (sogar durch, aber nicht beschränkt auf, kapazitive Kopplung mit Schaltsignalen in der Nähe). Dies wiederum bringt den Eingangspuffer zum Schwingen und verschwendet "viel" Energie. Alternativ könnte die Eingangsspannung in die Nähe der Mittelschiene kommen, wo sowohl die N- als auch die P-MOSFETs des Eingangspuffers eingeschaltet sind, was Sie vermeiden möchten.

Ein weiteres Problem ist: "Was passiert, wenn der IC initialisiert wird"? Die unbenutzten Eingänge werden dekonfiguriert. Die Lösungen?

  • Kurzschluss nach GND/VCC: Dies könnte keine gute Idee sein, denn wenn Sie versehentlich (aufgrund eines Fehlers oder während des Testens) die PIN als Ausgabe konfigurieren, führt dies natürlich zu Problemen. Darüber hinaus könnte ein dauerhafter Kurzschluss schädlich sein, wenn Sie später Ihre Schaltung modifizieren müssen oder einen unbenutzten Pin zu Debugging-Zwecken überwachen müssen. Ein Kurzschluss mit VDD kann auch zu Latch-up-Problemen (oder unregelmäßigem Verhalten) in ICs führen, die mehrere Versorgungsspannungen haben.
  • Anschließen eines Pull-Up/Down-Widerstands. Dies erfordert Platz und Stücklistenkosten.
  • Lebe damit. Wenn Sie eine sehr kurze Initialisierungs-/Resetzeit erwarten, können Sie damit leben und das interne pu/pd verwenden.
Danke für deine Antwort. Mein uC gibt mir sowohl die Möglichkeit, intern hochzuziehen als auch intern herunterzuziehen. Deswegen war ich etwas verwirrt. Es scheint, dass die Konfiguration von nicht verwendeten GPIOs Controller-spezifisch ist, ich muss auf das Datenblatt und andere relevante Dokumente verweisen.