Skocz do zawartości

Pomocna odpowiedź

Napisano

Witam Serdecznie

Mam pytanie co robie zle chce jednym przyciskiem zalaczac diode a drugim wylaczac

void setup()

{

pinMode(3, INPUT_PULLUP);

pinMode(8, OUTPUT);

pinMode(2, INPUT_PULLUP);

}

boolean stan=1;

boolean stan1=0;

void loop()

{

if(digitalRead(3) == HIGH)

{

delay(20);

stan=!stan;

digitalWrite(8, stan);

while(digitalRead(3) == HIGH);

while(digitalRead(2) == LOW);

delay(20);

}

}

siedze juz nad tym 5 godzin i czytam i czytam kursy nie kursy i nic nie rozumiem

Pomocy

dziekuje

__________

Komentarz dodany przez: Treker

Kody programów należy umieszczać przez narzędzie KOD (znajdziesz je w edytorze pod ikonką "<>"). Dzięki niemu składania programów jest automatycznie kolorowana, a wtedy wszystkim znacznie łatwiej analizować wklejone programy. Proszę to poprawić - z góry dziękuję za zrozumienie i pomoc przy utrzymaniu porządku na forum.

darex120, możesz opisać jak dokładnie chciałbyś, aby to działało? Komentarze w kodzie na pewno ułatwiłby poznanie Twojego toku rozumowania 😉

Witam

Dziękuję za odpowiedź , postaram się nie zapomnieć

A o co mi dokladnie chodzi tylko o to aby jednym przyciskiem załączać a drugim załączać diode.

Wiem może to bardzo proste ale nie daje rady kurs przeczytałem , jedno pytanie czy sa jakieś książki pozwalające nauczyć się tego języka.

Pozdrawiam

Darek

A o co mi dokladnie chodzi tylko o to aby jednym przyciskiem załączać a drugim załączać diode.

Hmm... Niestety nadal ten opis wiele mi nie rozjaśnia. Możesz to opisać jakoś dokładniej?

O prostsze wytłumaczenie niż to, które jest w kursach będzie ciężko. Polecam na spokojnie wykonać wszystkie ćwiczenia opisane w kursie, wtedy na pewno całość się rozjaśni - podkreślam, że ważne jest wykonanie wszystkich ćwiczeń. Samo czytanie nic nie daje 😉

Może coś takiego zadziała

if(digitalRead(3) == wcisniety) digitalWrite(8,1);

if(digitalRead(2) == wcisniety) digitalWrite(8,0);

zastąp tylko albo zdefiniuj czy wcisniety przycisk to 0 czy 1 bo nie napisałeś ani schematu nie dałeś (po pullupach domyślam się że jednak 0);

void setup()

{

pinMode(3, INPUT_PULLUP);

pinMode(8, OUTPUT);

pinMode(2, INPUT_PULLUP);

}

boolean stan=0;

void loop()

{

if(digitalRead(3) == LOW)

{

delay(20);

stan=1; // led się włącza

while(digitalRead(3) == LOW);

delay(20);

}

if(digitalRead(2) == LOW)

{

delay(20);

stan=0; // led się wyłącza

while(digitalRead(2) == LOW);

delay(20);

}

digitalWrite(8, stan);

}

__________

Komentarz dodany przez: Treker

Kody programów należy umieszczać przez narzędzie KOD (znajdziesz je w edytorze pod ikonką "<>"). Dzięki niemu składania programów jest automatycznie kolorowana, a wtedy wszystkim znacznie łatwiej analizować wklejone programy. Proszę to poprawić - z góry dziękuję za zrozumienie i pomoc przy utrzymaniu porządku na forum.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...