Dies ist eine alte Version des Dokuments!


← Kapitel 4: Ampelsteuerung | ↑ Übersicht | Kapitel 6: →

Kapitel 5: Eingänge

Wie in Kapitel 2 beschrieben, können wir jeden I/O-Pin beliebig als Ein- oder Ausgang definieren.

In Wirklichkeit hat ein I/O-Pin aber nicht nur diese zwei Zustände, sondern drei.

Den ersten kennen wir schon, den Ausgang. Diesen Zustand erhalten wir so:

pinMode(PIN, OUTPUT);

Damit wird PIN als Ausgang definiert und wir können mit den zwei Funktionen

digitalWrite(PIN, HIGH);
digitalWrite(PIN, LOW);

einstellen ob der Pin Spannung ausgibt oder mit Massse verbunden ist.

Ganz ähnlich funktioniert nun der Eingang, zuerst müssen wir den Pin als Eingang definieren:

Theoretisch sind alle Pins beim Start als Eingang konfiguriert, in der Regel definiert man die Pins aber trotzdem!
pinMode(PIN, INPUT);

Nun können wir PIN verwenden um zu überprüfen, ob dort Spannung anliegt oder der Pin mit Masse verbunden ist. Dazu wird dieser Befehl verwendet:

digitalRead(PIN);

Diese Funktion hat einen so genannten Rückgabewert, dieser Wert lautet HIGH wenn Spannung anliegt und LOW, wenn der Pin mit Masse verbunden ist.

Der Widerstand des Eingang-Pins ist allerdings sehr Hochohmig, das bedeutet, dass die berühmte „Mücke die vorbeifliegt“ schon ausreicht, dass der Pin zwischen HIGH und LOW wechseln kann. Wir benötigen daher einen Widerstand, der den Pin definiert in eine Richtung zieht.

Wir modifizieren unsere Ampelschaltung und erweitern sie um einen Taster und einen Widerstand:

10k-Ohm Widerstand: Linke Versorgungsspannungsschiene und B12

Taster: (wie im Bild zu sehen) E12, E14, F12, F14

Braunes Kabel von der Versorgungsspannungsschiene zu VCC.

Blaues Kabel von H14 zur Masseschiene.

Violettes Kabel von D12 zu Gscheiduino Pin7.

Der Aufbau sollte also so aussehen:

Bradboardaufbau Eingang