Skocz do zawartości

emilzazaza

Użytkownicy
  • Zawartość

    4
  • Rejestracja

  • Ostatnio

Reputacja

2 Neutralna

O emilzazaza

  • Ranga
    1/10
  1. Serial.print(napiecie); Serial.println("V"); "ln" przy słowie print przerzuca do następnej linijki.
  2. Teraz widzę czarno na białym (a właściwie biało na szarym ). Dzięki
  3. Proszę o pomoc. Czy w moim kodzie jest jakiś błąd? Jak więcej światła pada na fotorezystor po lewej, zapala się dioda po lewej, jak jest ~po równo, to dioda środkowa, a jak na fotorezystor po prawej to nadal świeci się środkowa dioda. int odczytL = 0; //odczyt z lewego fotorezystora int odczytR = 0; //odczyt z prawego fotorezystora #define LL 4 //dioda po lewej #define LR 2 //dioda po srodku #define RR 8 //dioda po prawej void setup() { pinMode(LL, OUTPUT); pinMode(LR, OUTPUT); pinMode(RR, OUTPUT); pinMode(A4, INPUT); //fotorezystor po lewej pinMode(A5, INPUT); //fotorezystor po prawej Serial.begin(9600); } void loop() { digitalWrite(LL, LOW); digitalWrite(LR, LOW); digitalWrite(RR, LOW); odczytL = analogRead(A4); odczytR = analogRead(A5); Serial.print(odczytL); Serial.print(" "); Serial.println(odczytR); delay(250); odczytL = map(odczytL, 10, 1020, 1, 5); odczytR = map(odczytL, 10, 1020, 1, 5); if (odczytL > odczytR){ digitalWrite(LL, HIGH); digitalWrite(LR, LOW); digitalWrite(RR, LOW); } else if (odczytL == odczytR){ digitalWrite(LR, HIGH); digitalWrite(LL, LOW); digitalWrite(RR, LOW); } else if (odczytL < odczytR){ digitalWrite(RR, HIGH); digitalWrite(LR, LOW); digitalWrite(LL, LOW); } delay(250); }
  4. Witam. Mam pytanie, jeżeli sprawdzam czy Arduino otrzymało dane za pomocą: if (Serial.available() > 0); To rozumiem, że dane wysyłane są do płytki dopiero po naciśnięciu przycisku "Wyślij" w terminalu, a nie podczas wpisywania. Mam rację? Jeśli tak, to czemu w terminalu zaraz po wgraniu programu wyświetla mi się "Zła komenda" co sekundę? Poniżej mój kod: #define red 8 #define green 9 String komenda = ""; void setup() { Serial.begin(9600); pinMode(red, OUTPUT); pinMode(green, OUTPUT); digitalWrite(red, LOW); digitalWrite(green, LOW); } void loop() { if (Serial.available() > 0); { komenda = Serial.readStringUntil('\n'); if (komenda == "zielona") { digitalWrite(green, HIGH); delay(500); digitalWrite(green, LOW); } else if (komenda == "czerwona") { digitalWrite(red, HIGH); delay(500); digitalWrite(red, LOW); } else { Serial.println("Zła komenda!"); } } }
×
×
  • Utwórz nowe...