Wer mit dem Arduino Zufallszahlen erzeugen möchte um beispielsweise LEDs zum Flackern zu bringen, kann sich der Funktion random(); bedienen. Die Syntax ist mehr als einfach:

ZufallZahl1 = random(min, max);

sollte min bei 0 liegen könnt ihr es weglassen, der Arduino nimmt die einzige Zahl automatisch als max und setzt min automatisch auf 0.

Beispielscode:

int randomA = 0; // definiere "randomA" als dynamische int
int randomB = 0; // definiere "randomB" als dynamische int

void setup() {
  Serial.begin(9600); // Serialmonitor
}

void loop() {
  randomA = random(0, 1024); // durch random(x,y) setzen wir x als min und y als max
  randomB = random(0, 1024); // durch random(x,y) setzen wir x als min und y als max
  Serial.print("A = ");      // Das erscheint im Serialmonitor vor dem Ergebnis von A
  Serial.print(randomA);    // Ergebnis von A
  Serial.print("B = ");     // Das erscheint im Serialmonitor vor dem Ergebnis von A
  Serial.println(randomB);  // Ergebnis von A, beende Zeile des Serialmonitors
  delay(100);               // Warte 100ms bis zum nächsten loop
}

Beispielsanwendung: lass eine LED zufällig blinken

int randomLED = 0; // definiere "randomLED" als dynamische int
const int led_pin = 12; // dauerhafte vriable für den pin 12, wo wir unsere LED anklemmen

void setup() {
  pinMode(led_pin, OUTPUT) ; // wir sagen dem Arduino, dass der Pin ein Ausgang ist
}

void loop() {
  randomLED = random(0, 10); // durch random(x,y) setzen wir x als min und y als max
  if (randomLED > 5) {       // ist randomLED größer als 5 folgt loop
    digitalWrite(led_pin, HIGH);  // Pin 12 gibt Strom aus
  } else {                  // sollte die bedingung oben (randomLED > 5) nicht zutreffen dann der loop
    digitalWrite(led_pin, LOW); // D12 gibt keinen Strom aus
  }
}

sollte einem nicht klar sein wie man eine LED mit dem Arduino verakbelt, hier die Anleitung: https://geekduino.de/2019/08/28/arduino-led-blinken-lassen/

Von geekduino

Kontakt: info@geekduino.de