Es ist offensichtlich, dass 3,3 V an einem GPIO-Eingangspin ein HIGH und 0 V ein LOW ist . Ich suche aber nach den genauen Spannungsschwellen für die GPIO-Eingangsstifte. Ich habe ein Pi B+
und ein Pi 2
.
Beim Anschauen dieses Videos (für einen älteren Pi) bekomme ich:
- NIEDRIG: 0 - 1,19 V.
- HOCH: 1,34 - 3,30 V.
Auf dieser Grundlage habe ich 1 V an den GPIO-Eingang angeschlossen. Der GPIO war immer noch ein HIGH .
Dieser Artikel ( hier verlinkt ) lautet:
- VIL = 0,8 V bedeutet, dass wenn der Ausgang niedrig ist, er <= 0,8 V ist .
- VIL = 1,3 V bedeutet, dass wenn der Ausgang hoch ist, er > = 1,3 V ist
Diese Werte stammen vom BCM2835, den der Pi bis B + hat .
Ich las diesen Artikel weiter :
- "Normalerweise liegt der Spannungsschwellenwert bei etwa 1,8 V, kann jedoch nicht garantiert werden. Er kann irgendwo zwischen dem maximalen Eingang niedrig und dem minimalen Eingang hoch liegen , dh zwischen etwa 0,8 und 2,0 V. "
Diese Werte stammen vom ARM1176JZF, den der Pi bis B + hat .
Wenn ich auf den Tisch schaue , bekomme ich:
- Eingangshochspannung VIH > 2,00 V
- Eingangs niedrige Spannung VIL <0,80 V
Also: Was sind die wirklichen Schwellenwerte? Kommen sie vom BCM2835 oder vom ARM1176JZF? Wie wäre es mit dem Pi 2? Sind die Schwellenwerte immer noch dieselben wie beim Pi B +?
BEARBEITEN: In diesem Artikel heißt es: " Die GPIO-Pins sind direkt mit dem BCM2835-Chip im Herzen des Raspberry Pi verbunden. " Aus diesem Grund stammen die Werte vermutlich vom BCM2835 und betragen 0,8 V und 2 V.
EDIT2: Ich verwende WiringPI mit dem folgenden Code, um den LOW / HIGH-Wert zu lesen:
gpio -g mode 21 in
gpio -g read 21
Antworten:
High Low wird bei fallender oder steigender Flanke erkannt. Wenn Sie nur 1 V setzen, wird sozusagen keine Flanke erzeugt, und dies kann inkonsistent sein.
Wenn der GPIO bereits hochgezogen ist oder eine Spannung von ~ 3,3 V hat, führt ein Abfall von 3,3 V auf 1 V zu einer fallenden Flanke und zu einem LOW. Sie können also sehen, wie 1 V HOCH und NIEDRIG sein kann, da es auf den steigenden oder fallenden Kanten basiert.
Dies ist nützlich für Hochfrequenzkommunikationen, bei denen sich das Signal schnell zwischen den von Ihnen genannten Schwellenwerten ändert, aber nur Kanten den tatsächlichen Wert bestimmen. Aus diesem Grund wird es als digitaler Eingang bezeichnet.
In der Logik LOW = 0 und HIGH = 1 ... was liegt dazwischen? Schwebende Unsicherheit mit zufälligem Rauschen. Wie bereits erwähnt, handelt es sich hierbei um nicht analoge Digitaleingänge. Sie können nicht feststellen, ob der Eingang 1 V oder 1,5 V beträgt, sondern nur 1 oder 0.
Analoge Eingänge (auf dem Pi nicht vorhanden) zeigen Ihnen genau an, wie viel Spannung angelegt wurde, wenn Sie dies benötigen.
quelle