Elegante Code Snippets

Code kann schön sein. Was ist der Unterschied zu elegantem Code? Eleganter Code nutzt Cleverness, um etwas mit viel weniger Code zu erreichen, als die meisten Leute für möglich halten würden, aber auf eine Weise, die lesbar und offensichtlich ist.

Das Problem mit dem delay() übergehen - den Sketch mit millis() beschleunigen.
Laufzeiten mit millis() messen oder wie lange wird ein Taster gedrückt wird.

Eine LED mit einem Zähler regeln
Eine LED mit einer for-Schleife regeln
Eine LED mit einer while-Schleife regeln

Extrem schwankende Sensorwerte mit einer Durchschnittsberechnung glätten.

Debouncen oder wie man einen widerspenstigen Taster eindeutig liest.

Die I2C Kommunikation

int potPin = A0; // Pin für den Potentiometer
int ledPin = 9; // Pin für die LED

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int potValue = analogRead(potPin); // Wert des Potentiometers lesen
  int brightness = map(potValue, 0, 1023, 0, 255); // Wertebereich umwandeln
  analogWrite(ledPin, brightness); // Helligkeit der LED setzen
}
int a = 10;
int b = 5;

void setup() {
  Serial.begin(9600);
  
  // Arithmetikoperatoren
  Serial.println("Arithmetik Operatoren: a=10, b=5");
  Serial.print("Summe     => "); Serial.println(a + b);
  Serial.print("Differenz => "); Serial.println(a - b);
  Serial.print("Produkt   => "); Serial.println(a * b);
  Serial.print("Quotient  => "); Serial.println(a / b);
  Serial.print("Rest      => "); Serial.println(a % b);

  Serial.println("");
  
  // Zuweisungsoperatoren
  Serial.println("Zuweisungsoperatoren: a=10, b=5");
  a += b; Serial.print("a += b    => "); Serial.println(a);
  a -= b; Serial.print("a -= b    => "); Serial.println(a);
  a *= b; Serial.print("a *= b    => "); Serial.println(a);
  a /= b; Serial.print("a /= b    => "); Serial.println(a);
  a %= b; Serial.print("a %= b    => "); Serial.println(a);

  Serial.println("");
}

void loop() {// Leer}
int potPin = A0; // Pin für den Potentiometer
int ledPin = 9; // Pin für die LED

void setup() {
  pinMode(ledPin, OUTPUT);
}

void loop() {
  int potValue = analogRead(potPin); // Wert des Potentiometers lesen
  int brightness = map(potValue, 0, 1023, 0, 255); // Wertebereich umwandeln
  analogWrite(ledPin, brightness); // Helligkeit der LED setzen
}