Skocz do zawartości
Mateo2206

Przyciski i pętle czasowe lub wielokrotność pętli

Pomocna odpowiedź

witam serdecznie

proszę o pomoc i wsparcie większych umysłów niż mój 😄

 

chciałbym zbudować małe urządzenie

chciałbym żeby były trzy przyciski

1 przycisk włącza pętle na 15 minut

2 przycisk włącza pętle na 30 minut

3 przycisk włącza pętle na 60 minut

 

przyciski mam ogarnięte mniej więcej wiem jak komendę z przycisku zrobić ale chciałbym zrobić pętle albo wielokrotność w komendach

 

mam 4 diody

chciałbym żeby zapalały się jedna po drugiej z odstępem 1 sekunda

świeci pierwsza a druga trzecia i czwarta nie

świeci druga a pierwsza trzecia i czwarta nie

świeci trzecia a pierwsza druga i czwarta nie

świeci czwarta a pierwsza druga i trzecie nie

 

pętla jak wyżej

 

ewentualnie dodatkowo trzy diody jako odliczanie lub naliczanie czasu lub ilości powtórzeń

np nacisnę przycisk numer 1 i włącza mi się miganie diodami jak opisałem 1, 2, 3, 4, 1, 2, 3, 4 itd... więc świecą się trzy dodatkowe diody wraz z rozpoczęciem cyklu po 5 minutach świeca się dwie po 10 świeci się jedna  pod koniec cyklu minutę przed zaczyna migać ostatnia trzecia dioda

naciskam przycisk numer 2 i analogicznie jak w poprzednim cykl idzie tylko że na 30 minut więc diody będą gasły po 10 minutach i pod koniec miganie ostatniej minutę przed końcem cyklu

no i trzeci przycisk jak poprzednie tylko czas jest 60 minut i diody gasną po 20 minutach

 

podsumowując chcę zapalać 4 diody na zmianę i dodatkowo 3 przyciski włączenia cyklu który pokazuje czas cyklu na 3 diodach

 

czy ktoś może mi w tym pomoc, nie ogarniam wszystkiego jeszcze 

 

z góry dziękuje za pomoc i wsparcie nowego użytkownika

 

pozdrawiam

Udostępnij ten post


Link to post
Share on other sites

@Mateo2206 witam na forum 🙂

Z czym konkretnie programistyczne masz problem? Pokaż swój dotychczasowy kod i wskaż miejsce, w którym utknąłeś to Cie naprowadzimy na rozwiązanie 😉

Udostępnij ten post


Link to post
Share on other sites
(edytowany)
void setup() {

  
  pinMode(0, OUTPUT);   
  pinMode(1, OUTPUT);   
  pinMode(2, OUTPUT);  
  pinMode(3, OUTPUT);   
 
  pinMode(13, INPUT_PULLUP); //PRZYCISK

  digitalWrite(0, HIGH); 
  digitalWrite(1, HIGH); 
  digitalWrite(2, HIGH); 
  digitalWrite(3, HIGH); 
}
 
void loop()
{
  while (digitalRead(13) == HIGH) {}
 
  digitalWrite(0, LOW); 
  digitalWrite(1, HIGH); 
  digitalWrite(2, HIGH);
  digitalWrite(3, HIGH); 
 
  delay(200); //Czekamy 
 
  digitalWrite(0, HIGH); 
  digitalWrite(1, LOW); 
  digitalWrite(2, HIGH); 
  digitalWrite(3, HIGH); 
 
  delay(200); //Czekamy 
 
  digitalWrite(0, HIGH); 
  digitalWrite(1, HIGH); 
  digitalWrite(2, LOW); 
  digitalWrite(3, HIGH); 
 
  delay(200); //Czekamy 
 
  digitalWrite(0, HIGH); 
  digitalWrite(1, HIGH); 
  digitalWrite(2, HIGH); 
  digitalWrite(3, LOW); 
 
  delay(200); //Czekamy

  digitalWrite(0, HIGH); 
  digitalWrite(1, HIGH); 
  digitalWrite(2, HIGH); 
  digitalWrite(3, HIGH); 
 
}

 

Edytowano przez Gieneq
Zachęcam do używania bloku kodu

Udostępnij ten post


Link to post
Share on other sites

Witajcie koledzy, widzę że nie jesteście zbytnio pomocni w moim zapytaniu. Skoro nie macie dla mnie gotowej odpowiedzi na moje pytania, mogliście mnie chociaż nakierować z pętlami i czasowym działaniem pętli, przykro mi że przez 2 tygodnie nie było żadnej odpowiedzi na jedynym największym forum arduino w polsce. 

 

pozdrawiam wszystkich serdecznie, problem postaram się rozwiązać sam

Udostępnij ten post


Link to post
Share on other sites

Przeczytaj kurs forbota, a trafisz na artykuł o millis(). Możesz także poszukać informacji o bibliotece Timers.

  • Lubię! 1

Udostępnij ten post


Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Gość
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.


×
×
  • Utwórz nowe...