#include boolean ausgabe_erlauben = true; // extern über die vier RJ25-Ports MeLEDMatrix ledMx(PORT_1); MeLineFollower lineFinder(PORT_2); MeUltrasonicSensor ultrasonic(PORT_3); // onboard MeLightSensor lightSensor(PORT_8); MeBuzzer buzzer; MeDCMotor motor1(M1); //Left Motor MeDCMotor motor2(M2); //Right Motor MeRGBLed led(0, 30); const byte button = 7; const byte max_strs = 10; // max. Anzahl der Teile eines Befehls String strs[max_strs]; // Array für die Teile eines Befehls int strs_length; // aktuelle Anzahl der Teile eines Befehls String zeile; // enthält den seriell übermittelten Befehl int linie, entfernung, helligkeit; // Messwerte der Sensoren void setup() { Serial.begin(9600); Serial.println("\n mBot-SerialReceiverTest.ino \n"); led.setpin(13); pinMode(button, INPUT); //Define button pin as input ledMx.setBrightness(6); ledMx.setColorIndex(1); ledMx.drawStr(0,7," hi "); // delay(1000); // ledMx.showNum(1.23); // delay(2000); led.setColor(0,0, 22); led.show(); hilfe(); // delay(2000); } // Ende setup() int dt1 = 50; int dt2 = 15000; unsigned long zeit1 = millis(); unsigned long zeit2 = millis(); void loop() { linie = lineFinder.readSensors(); helligkeit = lightSensor.read(); if (millis() > zeit1 + dt1) { zeit1 = millis(); entfernung = ultrasonic.distanceCm(); } if (millis() > zeit2 + dt2) { zeit2 = millis(); messwerte(); } if (Serial.available()) { // String zeile = Serial.readString(); zeile = Serial.readStringUntil('\n'); zeile.trim(); // entfernt \r, falls vorhanden ausgabe("Eingabe: " + String(zeile.length()) + " Zeichen | " + zeile); if (zeile.length()==1) { //genau ein Zeichen zeichen_auswerten(); } else { // mehr als ein Zeichen zeichenfolge_auswerten(); } } // if (Serial.available...) }