analogRead()

analogRead() liest den Wert eines analogen Pins. Im Unterschied zu digitalRead(), das nur die Zustände an (HIGH) oder aus (LOW) kennt, misst analogRead() die am analogen Pin anliegende Spannung. Sie liegt zwischen 0 und 1023.

Beispiel:
// Sensor am analogen Pin A0
int SENSOR = A0;
int LED = 6;
// speichert den gelesenen Wert
int SensorWert;
void setup()
{
// Seriellen Monitor starten
Serial.begin(9600);
// auf serielle Verbindung warten
while (!Serial) {;}
}
void loop()
{
SensorWert = analogRead(SENSOR);
// zeigt den gelesenen Wert im Seriellen Monitor an
Serial.println(SensorWert);
}
Im ➨Seriellen Plotter können die Werte sichtbar gemacht werden:

analogWrite()

analogWrite() wird dazu verwendet eine LED mit Hilfe der ➨Pulsweitenmodulation (PWM) an einem digitalen Pin mit unterschiedlicher Helligkeit zum Leuchten zu bringen. Nur die digitalen Ports, die mit einer Tilde (~) gekennzeichnet sind, unterstützen die PWM.
0 → Strom aus
255 → maximale Stromstärke

Beispiel:
int LED = 6;
void setup()
{
// bei analogWrite ist kein setup notwendig
}
// erhöht die Leuchtstärke von 0 auf 255 in 5-er Schritten
void loop()
{
for (int i = 0; i < 255; i += 5)
{
analogWrite(LED, i);
delay(200);
}
}




Letzte Aktualisierung: