Allgemeine Fragen zu Eingangs- und Ausgangspin-Impedanz, -Spannung und -Strom der PIC24-MCU

Ich habe einen Geistesblitz. Versuchen Sie, mir zu helfen, ein paar grundlegende Dinge in Bezug auf Mikrocontroller-Pins auf Hardwareebene zu verstehen, bitte!

  1. Korrigieren Sie mich, wenn ich falsch liege … in der Schaltung von Abbildung 1 (siehe beigefügtes Bild) führt TRIGGER zu einem GPIO-Pin eines PIC24F, der als Eingang konfiguriert ist. Wenn der MOSFET-Kanal (P) geschlossen ist, liegt TRIGGER (d. h. der MCU-Eingangsstift) bei +3,3 V. Wenn der MOSFET-Kanal (P) jedoch offen ist, schwebt der mit TRIGGER verbundene MCU-Eingangsstift, weil das Gegenteil der Fall ist Ende des Widerstands ist im Wesentlichen getrennt, richtig? Wenn dies nicht der Fall ist, warum?

  2. Benötigt ein als Eingang konfigurierter GPIO-Pin eines PIC24F einen Reihenstrombegrenzungswiderstand, um den Pin eines bestimmten Eingangs möglicherweise nicht zu zerstören? Mit anderen Worten, muss man sicherstellen, dass die Impedanz des Eingangssignals einen bekannten Wert hat, um den Strom zu kennen, der in den Pin fließt?

  3. Was wäre, wenn Sie einen Eingangspin ohne Vorwiderstand direkt an eine +3,3-V-Spannungsquelle anschließen würden? Kein durchgebrannter Stift, oder? Der Pin würde nur so viel Strom ziehen, wie es die Eingangsimpedanz zulässt (glaube ich), was mich zu der Frage veranlasst, was die Eingangsimpedanz eines Eingangspins ist. Der PIC24F kann 18 mA Strom aufnehmen und abgeben. Was ich zu fragen versuche, ist, was der Zweck eines Reihenstrombegrenzungswiderstands zu einem Eingangspin ist, wenn der Pin bereits eine Impedanz hat und nur bis zu 18 mA zieht? Es ist nicht so, dass die +3,3 V direkt über die MCU an Masse geleitet werden (weil der Pin eine Impedanz hat), oder? Vielleicht habe ich das alles falsch...

  4. Frage zum Ausgangspin: Ich verstehe den Zweck eines Reihenstrombegrenzungswiderstands, der zur Begrenzung des Stroms durch eine LED verwendet wird, da er sonst im Wesentlichen zu einem Kurzschluss von + V gegen Masse werden könnte (hoher Strom durch die LED, der zu Überhitzung und Bruch führt). Aber wenn ein Ausgangspin bereits eine interne Impedanz hat, die den Strom sowieso begrenzen würde, warum ist dann ein zusätzlicher Widerstand in Reihe die Standardmaßnahme? Der Pin kann nur bis zu 18 mA liefern - ich nehme an, dies wird durch die interne Impedanz des Pins bestimmt. Wie könnte der Stift mehr Strom liefern? Offensichtlich fehlt mir etwas…

  5. Korrigieren Sie mich, wenn ich wieder falsch liege … In der Schaltung von Abbildung 2 wird TRIGGER bei offenem MOSFET-Kanal (P) durch die beiden in Reihe geschalteten Widerstände auf Low gezogen. Wenn der MOSFET-Kanal (P) geschlossen ist, sieht TRIGGER +3,3 V. Kein Schweben, oder? Ist auch der Vorwiderstand in Reihe mit TRIGGER (1 kOhm) erforderlich? Oder kann ich TRIGGER direkt vor dem Pulldown-Widerstand an den Drain anschließen (im Wesentlichen direkt an +3,3 V)? Dies knüpft an meine vorherige Frage zu Vorwiderständen mit Eingangspins an ...

Diese einfachen, grundlegenden Fragen nagen schon seit einiger Zeit an mir.

ABBILDUNG 1

FIGUR 2

Zu Nr. 3, der 18-mA-Sink/Source-Wert gilt nur für Ausgangspins. Eingangspins haben eine sehr hohe Impedanz (~1 MΩ) und ziehen nur wenige µA.
Danke! Sinking und Sourcing beziehen sich auf den Strom, der in die MCU ein- und ausgeht, richtig? Wenn Sie einen GPIO-Pin als Ausgang konfigurieren, warum sollte dann jemals Strom in den Pin fließen? Ich nehme an, es hängt davon ab, wie der Ausgangskreis aussieht, ob er mit der Spannungsversorgungsschiene oder Masse verbunden ist ... vielleicht habe ich gerade meine eigene Frage beantwortet ...?
Ja, Sie können sich vorstellen, dass Strom entweder einfließt oder abfließt. Ob ein Pin sinkend oder quellend ist, bezieht sich darauf, ob er eine positive Spannung (z. B. VCC) an eine geerdete (an) oder geerdete (aus) Last liefert (sollt). Dies wird als Push-Pull-Konfiguration bezeichnet. Sinken bezieht sich auf das Erden (Senken) eines Ausgangspins, der mit einer Last verbunden ist, die wiederum mit einer höheren Spannung verbunden ist. Letztere sind meist mit Open-Drain-Ausgängen verbunden, die entweder auf Masse (off) oder hochohmig (on) liegen. Dadurch können sie eine Last erden, die an eine viel höhere Spannung als VCC angeschlossen ist.

Antworten (2)

  1. Ich bin mir also nicht sicher, ob ich dieser ersten Frage hier folge, aber ich werde es versuchen: Wenn Vin = 3,3 V (dh Ihr P-Kanal-Mosfet verbindet Source und Drain nicht), dann ist "TRIGGER" im Wesentlichen getrennt, ja. Dies setzt voraus, dass "TRIGGER" mit einer hochohmigen Quelle verbunden ist, wie einem Eingangspin eines Standard-Mikrocontrollers. Als kurze Anmerkung bedeutet "im Wesentlichen getrennt", dass es eine hohe Impedanzschwelle gibt, um über den Source-Drain-Übergang zu gelangen, aber sie ist nicht unendlich. Wenn Vin = 0 V (dh Source und Drain sind verbunden), liegt der Trigger nahe bei (aber etwas weniger als) 3,3 V

  2. Ein Eingangspin an einem PIC24F ist also hochohmig. Dies bedeutet, dass es sich wie ein Widerstand mit einem Widerstand von etwa 1 MΩ gegen Erde verhält. Wenn Sie den Abschnitt „Elektrische Eigenschaften“ im Unterabschnitt „DC-Eigenschaften: E/A-Pin-Eingangsspezifikationen“ im Datenblatt für den von Ihnen verwendeten Chip überprüfen, sollten Sie eine Tabelle finden, die Ihnen den „Eingangsleckstrom“ angibt. Am Beispiel des dsPIC33FJ256GP710A (es war ein Datenblatt, das ich zufällig auf meinem Computer hatte) werden 0 bis 3,5 μA als Leckstrom in oder aus einem Pin innerhalb der Grenzen dieser Pins aufgeführt.

    Als Anmerkung sehen Sie auch, dass es im Abschnitt „Elektrische Eigenschaften“ unter dem Unterabschnitt „Absolute Maximalwerte“ eine Liste gibt, die etwas über die Wirkung von „Spannung an jedem Pin, der nicht 5V-tolerant ist, sagt bezüglich VSS(4) .... -0,3 V bis (VDD + 0,3 V)". Dies sagt Ihnen, dass Sie an keinen Pin mehr als ~ 3,6 V anlegen können, ohne den Pin zu beschädigen. Dies bedeutet nicht, dass Sie einen Strombegrenzungswiderstand vor den Eingangspin schalten sollten, sondern dass Sie einen Spannungsteiler vor den Eingangspin schalten sollten, um die maximale Spannung auf weniger als VDD + 0,3 V zu begrenzen.

    Um dies mit Frage Nr. 1 zu verknüpfen: Dies bedeutet, dass Sie, wenn ein digitaler Eingangspin mit einer hochohmigen Ausgangsquelle wie Abb. 1 verbunden ist, oszillierende Eingangswerte (1 und 0 zufällig) sehen werden, je nachdem, wann dieser sehr kleine Drain entfernt wird oder fügt genügend Elektronen hinzu, um von einem digitalen Zustand in einen anderen zu springen. Dies wird als schwebender Eingang bezeichnet

  3. Also habe ich diese Frage gerade in der vorherigen beantwortet, aber ich sollte Ihnen sagen: Der "maximale Ausgangsstrom" ist nicht intern begrenzt. Obwohl der PIC24F "nur 18 mA ausgeben kann", bedeutet dies, dass, wenn Sie einen Ausgangsstift, der hoch ist, direkt mit Masse verbinden, er viel mehr als 18 mA ausgibt, bevor er durchbrennt! Die 18 mA ist das Maximum, das es sicher ausgeben kann, ohne den Chip zu überhitzen / zu beschädigen. Dies gilt sowohl für das Quellen als auch für das Sinken, es gibt keine Sicherung, die Sie bei 18 mA stoppt, nur der magische blaue Rauch.

    Nur zur Wiederholung: Sie können jede Spannung sicher an einen digitalen Eingangspin innerhalb ihres Bereichs anschließen (-0,3 V bis VDD + 0,3 V für den dsPIC33F). Es würde weder den Stift durchbrennen, um ihn direkt mit +3,3 V zu verbinden, noch würde er den Stift durchbrennen, um ihn direkt mit Masse zu verbinden.

  4. Ich habe dies gerade in Nr. 3 beantwortet, aber auch hier ist es nicht die Ausgangsimpedanz des Pins, die dies begrenzt ... Oder genauer gesagt, es ist die Ausgangsimpedanz, aber sie begrenzt den Strom durch Schmelzen.

  5. Und ja, Sie können den 1kΩ-Widerstand aus Abb. 2 sicher entfernen, ohne Ihren PIC zu beschädigen.

Super Antwort, danke! Das bekräftigt, was die anderen gesagt haben. Das klärt meine anfänglichen Fragen perfekt. Die Wurzel meiner Fragen schien zu sein, dass ich nicht wusste, dass die Impedanz eines als Eingang konfigurierten GPIO ~ 1 MOhm (~ kein Strom) betrug. Ein paar mehr für alle: A. Pull-Up/Down-Widerstände (egal ob intern oder extern) werden dann nur für INPUT-Pins benötigt, richtig? Im Gegensatz dazu "weiß ein als OUTPUT konfigurierter Pin, auf welchem ​​​​Pegel er sich befindet", weil er das Ansteuern übernimmt - ein schwebender OUTPUT-Pin macht keinen Sinn ... habe ich das Recht?
B. Meine Antwort auf @tcrosley: Sinking und Sourcing bezieht sich auf den Strom, der in die MCU ein- und aus ihr austritt, richtig? Wenn Sie einen GPIO-Pin als Ausgang konfigurieren, warum sollte dann jemals Strom in den Pin fließen? Ich nehme an, es hängt davon ab, wie der Ausgangskreis aussieht, ob er mit der Spannungsversorgungsschiene oder Masse verbunden ist ... vielleicht habe ich gerade meine eigene Frage beantwortet ...? Entschuldigung für die Formatierung dieser Kommentare. Kann die Zeilenumbrüche nicht zum Laufen bringen.

Und die TL;DR (plus ein bisschen) Version.

1) Ja. Bei "Aus" schwebt der Stift. (Einige MPUs haben einen internen Pullup/Down-Widerstand, den Sie konfigurieren können, um einen sicheren Pegel auf dem Pin zu erreichen)

2) Nein. Solange die Spannung des Eingangspins zwischen den Versorgungsschienen liegt, ist kein Widerstand erforderlich und praktisch kein Strom.

3) Kein durchgebrannter Stift. Der Pin wird nur Strom liefern/senken, wenn Sie ihn als Ausgang konfigurieren. Wenn es also mit 3,3 V verdrahtet ist, tun Sie das nicht. Und wenn doch, gib keine 0 aus...

4) Halten Sie den Widerstand im LED-Laufwerk. Lesen Sie das Kleingedruckte: 18 mA sind garantiert, aber Sie könnten 60 mA bekommen. Außerdem leitet der Widerstand Leistung außerhalb des CPU-Pakets ab. Genügend LEDs direkt von der CPU ansteuern und es würde ziemlich warm werden.

5) Sie können den 1K-Widerstand verlieren.

Super Info, klärt vieles auf! Vielen Dank.