Digitale Eingänge

Der auf dem Arduino befindliche Mikrocontroller von Atmega besitzt etliche GPIO (general purpose Input/Outputs). Dafür kann je nach Verwendungszweck definiert werden ob dieser Anschluss als Ein- oder Ausgang genutzt werden soll. Wenn ein Digitaler Eingang verwendet werden soll, so wird dies in setup() festgelegt.
pinMode(pin, INPUT); // Anschluss als Eingang definieren
Da recht hohe Frequenzen zum Einsatz kommen (z.B. 16 MHz) die sich in unmittelbarer Nähe der Eingänge befinden ist es notwendig diese Eingänge mit einem definierten Potential zu versehen. Klassischer Weise wird ein Widerstand verwendet, welcher zum Beispiel auf Masse gelegt wird. Ein so genannter Pull Down Widerstand. Hier die notwendige Beschaltung:

Da dies ein recht häufiger Einsatzfall ist, wurden im Microkontroller hierfür passende interne Pull-up Widerstände (ca. 20 bis 50 Kiloohm) integriert, die sich bei Bedarf aktivieren lassen.
// Anschluss als Eingang definieren und Pull Up Widerstand aktivieren
pinMode(pin, INPUT_PULLUP);

Danach ist nur noch diese Aussenbeschaltung notwendig:

Es ist jedoch zu beachten, dass der Wirksinn nun umgekehrt ist, der Eingang hat also im Normalfall TRUE (bzw. HIGH) und im betätigten Fall FALSE (bzw. LOW).

Share