GPIO ist die allgemeine Bezeichnung für einen anpassbaren Pin am Mikrocontroller, also dem kleinen Computer-Chip auf dem Board. GPIO-Pins können als Ausgang eine LED schalten oder als Eingang einen Taster abfragen. GPIO-Eingänge sind hochohmig: Sie lesen den Pegel nur ab, steuern ihn aber nicht selbst. Ohne feste Verbindung bleibt die Spannung am Pin zufällig, etwa durch Störungen aus der Umgebung.
Zuerst fehlt dem offenen Pin jede Referenz. High und Low sind keine festen Spannungspunkte, sondern Bereiche: Der Eingang wertet alles oberhalb einer Schwelle als High, alles darunter als Low. Ein unbeschalteter, sogenannter floating Eingang pendelt willkürlich dazwischen.
Dann entscheidet der gemeinsame Bezugspunkt. Die Masse (GND) ist der Punkt, gegen den alle Spannungen gemessen werden. Erst über die gemeinsame Masse weiß der Eingang, was High und Low überhaupt bedeuten.
Danach zieht ein Widerstand den Eingang auf den Ruhepegel. Ein Pull-up liegt zwischen Versorgungsspannung und Eingang und hält ihn auf High; ein Pull-down liegt zwischen Eingang und Masse und hält ihn auf Low. Spannungen nahe der Schwelle wären unsauber, weil sie mal so, mal so gelesen werden.
Zuletzt kommt der Taster ins Spiel: pinMode(4, INPUT_PULLUP) aktiviert den internen Pull-up, digitalRead(4) liest den Pin. Der Taster drückt den Eingang gegen Masse; gedrückt bedeutet also LOW, ungedrückt HIGH – invertiert zur Intuition. Der Widerstandswert ist ein Kompromiss: Kleinere Widerstände geben steife Pegel, größere sparen Strom.
Ein offener Eingang lügt nicht böswillig, er weiß es einfach nicht besser. Wer den Ruhepegel definiert, bekommt eine eindeutige Antwort.
📌 Floating-Eingang · Pull-up · Ruhepegel
📚 IoT von Grund auf · Tag 2 von 30
#Mikrocontroller #Arduino #iot #embedded