Potentiometer, analogRead()
Ein Potentiometer hat zwischen den beiden äusseren Pins einen konstanten Widerstand (z.B. 10 k$\Omega$). Der Widerstand zwischen dem ersten und mittleren Pin kann beliebig eingestellt werden, der Widerstand zwischen dem mittleren und letzten Pin ist dann das Komplement dazu.
Legt man zwischen den äusseren Pin z.B. 5 V an, liegt am mittleren Pin eine beliebige Spannung an. Allerdings sollte dort kein Strom fliessen, sonst ändert sich die Spannung. Diese Spannung kann vom Arduino gemessen werden und zur Steuerung gebraucht werden. Z.B. könnte die Helligkeit einer LED via PWM gesteuert werden:
// Verbindung Potentiometer: 5V, A0, GND // LED auf pin 3 (oder anderer PWM pin) #define LED 3 #define POTI A0 void setup() { pinMode(LED,OUTPUT); Serial.begin(9600); } // globale Variable inc counter = 0; void loop() { int v = analogRead(A0); // 10 Bit Wert (0-1023) analogWrite(LED, v/4); // Durch 4 -> 8 Bit Wert delay(10); // 0.01 Sekunden counter++; if (counter==50) { // jede halbe Sekunde Serial.println(v); counter=0; } }