Skocz do zawartości

Pierwsze programy własny który nie mogę zrozumieć


Pomocna odpowiedź

Napisano

Zsumowałem programiki i teraz po przytrzymaniu włacznika świeci dioda 5 s a później miga tak jak ma zadane ale nie mogę tego zrozumieć co z czym.

void setup() {
 pinMode(8, OUTPUT); //Dioda jako wyjście
 pinMode(7, INPUT_PULLUP); //Przycisk jako wejście
 digitalWrite(8, LOW); //Wyłączenie diody
}

void loop()
{
 if (digitalRead(7) == LOW) { //Jeśli przycisk wciśnięty
   digitalWrite(8, HIGH); //Włącz diodę
   delay(5000); //Czekamy 10 sekund
   digitalWrite(8, LOW); //Wyłączamy diodę
 } else {digitalWrite(8, HIGH);   
 delay(1000);              
 digitalWrite(8, LOW);   
 delay(1000);             
 digitalWrite(8, LOW); //Wyłącz diodę
 }

}

danmaz, zanim zaczniemy Ci pomagać popraw pisownie, bo słowa "ktury" nic już nie usprawiedliwia... Kod programu zmieść w tagach

danmaz, czego konkretnie nie rozumiesz? Komentarze, które tam są w miarę tłumaczą co i jak.

Jedynie ten fragment:

 } else {digitalWrite(8, HIGH);    
 delay(1000);              
 digitalWrite(8, LOW);    
 delay(1000);              
 digitalWrite(8, LOW); //Wyłącz diodę 
 } 

Można zamienić na:

 } else {
 digitalWrite(8, HIGH);    
 delay(1000);              
 digitalWrite(8, LOW);   //Wyłącz diodę   
 delay(1000);              
 } 

Ta ostatnia linijka i tak nic nie robiła. Przeczytałeś kurs Arduino dostępny na Forbocie?

Tak właśnie z tym kursem robię tylko chciałem coś więcej zrobić. Chodziło o to że nie wiem dlaczego przetrzymanie włącznika zmienia działanie i później wraca do poprzedniej pętli.

Program wykonywany jest cały czas w pętli. W środku masz warunek:

if (digitalRead(7) == LOW) {

Zależnie od wciśnięcia przycisku wykonywana jest tylko "połowa" pętli miganie, co sekundę lub świecenie przez 5. Zwróć uwagę, że polecenia delay (opóźniające) zatrzymują wykonywanie pętli na określony czas. Teraz trochę jaśniej? Jak nie, to postaraj się przeanalizować ten program i zadaj jakieś konkretne pytanie 🙂

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...