Przeszukaj forum
Pokazywanie wyników dla tagów 'IF'.
Znaleziono 4 wyniki
-
Witam, założyłem wcześniej wątek, o tym. Dziękuję @farmaceuta @ethanak @SOYER i innym za tłumaczenie, o co chodziło z else/if'ami, ale nadal nie wiem, kiedy ich użyć. Czy ktoś dałby mi jakieś przykłady, czy coś innego. Nadal nie wiem, w jakich przypadkach ich użyć. Bardzo proszę o wytłumaczenie.
-
Witam, czy ktoś mógłby wytłumaczyć mi, o co chodzi z else if'ami? Zastosowałem je w moim robocie, ale nie do końca wiem, czym one się różnią od zwykłych, osobnych if'ów. Chciałbym również się dowiedzieć, kiedy je wykorzystywać. Z góry dzięki 😄
-
Mam problem z warunkiem if, if ( myRTC.seconds >= 5 && myRTC.seconds <= 35 ) { digitalWrite (3, HIGH);} else if (myRTC.seconds >= 40 && myRTC.seconds <=42) {digitalWrite (3, HIGH);} else { digitalWrite (3, LOW);} dziala poprawnie ale chce dodac jescze jedna zmienna np 'X' . tak aby spelnienie warunku zalezalo rowniez od niej co zrobic ?
-
Witam serdecznie ! Napisałem prosty programik (uczę się 🙂) do Arduino UNO. Który ma sprawdzać który przycisk jest wciśnięty (o nazwach: zderzakP i zderzakL). W zależności od tego który przycisk jest wciśnięty mają uruchomić się silniki w różnej kombinacji. #include <AFMotor.h> AF_DCMotor motorP(1); // silnik prawy AF_DCMotor motorL(2); // silnik lewy int zderzakP = 9; //zderzak prawy int zderzakL = 10; //zderzak lewyt void setup() { motorP.setSpeed(255); motorL.setSpeed(255); pinMode(zderzakP, INPUT); pinMode(zderzakL, INPUT); digitalWrite(zderzakP, LOW); digitalWrite(zderzakL, LOW); Serial.begin(9600); Serial.println(F("Test portu!")); } // jazda do przodu void loop() { if (digitalRead((zderzakP && zderzakL) == LOW)) { motorP.run(FORWARD); motorL.run(FORWARD); Serial.println("Jazda na wprost"); delay(500); } // // skręt w prawo if (digitalRead(zderzakP) == HIGH) { motorP.run(RELEASE); motorL.run(RELEASE); delay(200); motorP.run(FORWARD); motorL.run(BACKWARD); Serial.println("Skręt w prawo"); delay(500); } // // skręt w lewo if (digitalRead(zderzakL) == HIGH) { motorP.run(RELEASE); motorL.run(RELEASE); delay(200); motorP.run(BACKWARD); motorL.run(FORWARD); Serial.println("Skręt w lewo"); delay(500); } // // jazda do tyłu if (digitalRead((zderzakP && zderzakL) == HIGH)) { motorP.run(RELEASE); motorL.run(RELEASE); delay(200); motorP.run(BACKWARD); motorL.run(BACKWARD); Serial.println("Jazda do tyłu"); delay(500); } // } Jednak nie rozumiem pewnych rzeczy tj. 1. Kod jak powyżej generuje jazdę do przodu oraz jazdę do tyłu w tym samym czasie. Dlaczego skoro warunek z "jazdy do tyłu" nie jest spełniony - na pinach nie podaję napięcia 5V. 2. Jak w samym arduino bez podłączonego shield'a sterownika L293D dodam napięcie 5V na PIN9 to na konsoli portu szeregowego wyświetlane są dwie wartości "jazda do przodu" oraz "skręt w prawo" 3. W konsoli portu szeregowego pojawiają się dane jeszcze kilka sekund po odłączeniu 5V z PIN'u 9 czy PIN'u 10