Wür­feln Seri­el­ler Monitor

Lese­zeit: 4 Minu­ten

Lösung
Seite als PDF

Wird im Seri­el­len Moni­tor die Tas­te 'w' gedrückt zeigt die Aus­ga­be die gewür­fel­te Zahl.

So sieht es aus:

Eine ➨Funk­ti­on kann einen häu­fig ver­wen­de­ten Befehl zur Nut­zung bereitstellen.

Eine Funk­ti­on steht immer außer­halb von set­up oder loop. 

Bei­spiel einer int-Funktion

Im Bei­spiel sol­len zwei zufäl­lig ermit­tel­te Zah­len mit­ein­an­der mul­ti­pli­ziert werden. 

Zunächst wer­den die Varia­blen definiert:

// die Zahlen, die multipliziert werden  
int Zahl1;  
int Zahl2;  

// das Ergebnis der Multiplikation  
int Ergebnis;  

// Minimum/Maximum der beiden Zahlen  
int Minimum = 1;
int Maximum = 20;

Das Ergeb­nis soll im seri­el­len Moni­tor ange­zeigt werden.

void setup()  
{  
  Serial.begin(115200);
   
  // auf serielle Verbindung warten
  while (!Serial) {;}

  // Zufallsgenerator starten 
  randomSeed(analogRead(0)); 
} 

void loop()  
{   
  // Aufruf der Funktion    
  Ergebnis = Multiplikation();   

  // das Ergebnis wird im seriellen Monitor angezeigt    
  Serial.println(Ergebnis); 
  delay(500); 
}

In der Funk­ti­on Mul­ti­pli­ka­ti­on wird der Rück­ga­be­wert als int-Varia­ble defi­niert. Die bei­den Zufalls­zah­len wer­den mit­ein­an­der mul­ti­pli­ziert und in die Varia­ble Rueck­ga­be­Wert geschrie­ben. Die­se wird dann mit return an das Haupt­pro­gramm übergeben.

int Multiplikation()  
{   
  int RueckgabeWert;   
  Zahl1 =  random(Minimum, Maximum);
  Zahl2 =  random(Minimum, Maximum); 
  RueckgabeWert = Zahl1 * Zahl2; 
  return RueckgabeWert; 
}

Wei­te­re Infor­ma­tio­nen zu Funktionen

Für die­se Anlei­tung benö­tigst du nur einen Arduino.

Lege die Varia­blen fest und star­te den ➨Zufalls­ge­nera­tor.

int Zahl;
int Minimum = 1;

// der Zufallsgenerator rundet nach unten → Maximum = 7
int Maximum = 7;

void setup() 
{
  Serial.begin(9600);

  // auf serielle Verbindung warten
  while (!Serial) {;}

  // Zufallsgenerator starten
  randomSeed(analogRead(0));
}

Eine Funk­ti­on bestimmt die Zufallszahl.

int ZufallsZahl() 
{ 
  Zahl =  random(Minimum, Maximum); 
  return Zahl; 
}

Der loop-Teil war­tet auf die Ein­ga­be und zeigt die gewür­fel­te Zahl im Seri­el­len Moni­tor an.

void loop() 
{
  // warten auf die Eingabe
  while (Serial.available() > 0) 
  {
    // Eingabe im Seriellen Monitor lesen
    char Zeichen = Serial.read();

    // der Buchstabe 'w' wurde gedrückt
    if (Zeichen == 'w') 
    {
      // Zufallszahl ermitteln
      int Zahl = ZufallsZahl();

      // Ausgabe im Seriellen Monitor
      if (Zahl == 1) 
      {
        Serial.println();
        Serial.println("  o  ");
        Serial.println();
      }

      if (Zahl == 2) 
      {
        Serial.println("o");
        Serial.println();
        Serial.println("    o ");
      }

      if (Zahl == 3) 
      {
        Serial.println("    o ");
        Serial.println("  o ");
        Serial.println("o");
      }

      if (Zahl == 4) 
      {
        Serial.println("o   o");
        Serial.println();
        Serial.println("o   o");
      }

      if (Zahl == 5) 
      {
        Serial.println("o   o");
        Serial.println("  o  ");
        Serial.println("o   o");
      }

      if (Zahl == 6) 
      {
        Serial.println("o   o");
        Serial.println("o   o ");
        Serial.println("o   o");
      }
      Serial.println("---------");
    }
  }
}

Ach­te auf die rich­ti­gen Ein­stel­lun­gen des Seri­el­len Monitors:


Startseite
Aufgaben A-Z
Suchen
Downloads
Fehlermeldungen
Seite als PDF

Ver­wand­te Aufgaben:


Letzte Aktualisierung: 13. Nov 2023 @ 9:49