Könnte eine triviale Frage sein, aber wann verwendet man Pull up und Pull down als PUPDR
Register des GPIO? Ich vermute, es wird verwendet, um den Standardzustand des Pins zu definieren.
Das Folgende enthält das Bild der Drucktaste auf der STM32F401 Nucleo-Platine. Es ist offensichtlich, dass PC13
IO über einen Pull-up-Widerstand hochgezogen wird, falls die Taste nicht gedrückt wird.
Der IO-Pin, wie unten gezeigt, ist also bereits hochgezogen, oder? Spielt es eine Rolle, ob das Ereignis PC13
im Pull up
oder im Pull down
Modus konfiguriert ist?
Zweitens, für die LED ( LD2
), die angeschlossen ist PA5
: Wenn der PUPDR
dieses Pins auf Pulldown eingestellt ist, gibt es einen Pulldown-Widerstand (wie im IO-Bild oben gezeigt), der mit PA5
und für Pullup verbunden ist, es gibt einen Pullup auf VDD ? Angenommen, das ist der Fall, sollte LD2
beim Start des Programms nicht "on" sein, wenn PUPDR
auf gesetzt ist PULL UP
? (scheint bei mir nicht der Fall zu sein)
Aus dem Datenblatt ist der Wert sowohl des Pull-Up- als auch des Pull-Down-Widerstands nominell 40K
. (Beachten Sie, dass Pull-Up- und Down-Werte oft unterschiedlich sein können.)
Notieren Sie sich für den Fall PC13
den Wert des externen Pull-up-Widerstands - 4K7
. Dies ist viel niedriger als die internen Pull-Widerstände.
Wenn Pull-up aktiviert ist, ist der resultierende Wert 4K7 || 40K
, was 4K2
.
Wenn der Pulldown aktiviert ist, bildet er einen Spannungsteiler. Da der Pulldown viel größer als der ist 4K7
, liegt die Eingangsspannung über dem oberen Schwellenwert.
Sie haben hier wahrscheinlich einen stärkeren Zug angebracht, da sie wissen, dass er für einen Schalter verwendet wird und möglicherweise externe Störungen aufnimmt. C15
Auch hier hilft der Kondensator .
Für PA5
ist der Wert des Pull-up-Widerstands so hoch, dass nicht genug Strom vorhanden ist, um die LED zum Leuchten zu bringen.
Pokloha
4K7
größer ist als der interne Zug, der ist40K
awjlogan
4K7 > 40k
. Weitere Informationen hinzugefügt. Die Eingangsimpedanz ist so groß, dass es keine Rolle spielt. Es wird parallel zum Pull-Widerstand sein, also wird der Effektivwert sein~40K
. Ist das sinnvoll?Pokloha
40K || 4k7 ~ 4k7
und nicht~40K
, es sei denn, Sie beziehen sich auf etwas anderes? sieht es nicht so aus, wie es für die Drucktaste aussieht ( tinyurl.com/yddcgj6h )?Pokloha
~4k7
Eingangsimpedanz führt. Wenn Pulldown eingestellt ist, erhalten Sie ~ 3,3 V am Eingang, der ihn hochzieht. Ich bin mir nicht sicher, was passiert, wenn Pull-Up eingestellt ist und wenn weder Pull-Up noch Pull-Down eingestellt ist (schwebend). Ist R30 nicht sowieso da, um den Stift hoch zu ziehen?awjlogan
40K || 4K7 ~ 4K2
. In Ihrem verknüpften Schaltplan40K
sollte das Pulldown nicht verbunden sein.R30
zieht den Pin immer hoch - wie ich in meiner Antwort erwähnt habe, haben sie diesen stärkeren Pull-up, weil sie sich an einem Pin befinden, der mit der "Welt" (nicht einem anderen IC) verbunden ist und eher von Störungen betroffen ist. Der stärkere4K7
Klimmzug mildert dies ab, während der40K
allein möglicherweise nicht stark genug ist. Beantwortet das deine Frage?Pokloha
awjlogan
R30
ein starker externer Pull up aufPC13
. Bei den schaltbaren Zügen können Sie nicht beide gleichzeitig haben. Wenn SiePC13
als Pull- up einstellen , haben Sie einen effektiven Pull-up von40K || 4K7
und wenn Sie den Pull- down aktivieren , erhalten Sie einen Spannungsteiler, wie ich in der Antwort sagte. :)