Skocz do zawartości

tiger333

Użytkownicy
  • Zawartość

    3
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O tiger333

  • Ranga
    1/10

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Wiem wiem problem dla mnie jest znalezienie sposobu na odliczenie ustawionego czasu i pokazaniu tego na wyświetlaczu
  2. Witam, jestem tu nowy uczę się dopiero Arduino, ale wpadłem na pomysł by zrobić projekt minutnika, który będzie odmierzał ustawiony czas, pokazując na wyświetlaczu 2X16. Sterowanie odbywa się za pomocą 3 przycisków. Pierwszy zeruje pomiar, drugi go ustawia, a trzeci startuje odliczenie. Udało mi się ustawiać czas, ale problem jest z jego odliczeniem, znalazłem coś takiego jak biblioteka timers, ale nie wiem czy to pomoże. Chciałbym, aby odmierzenie było widoczne na wyświetlaczu. Oto kod, który dotychczas stworzyłem. Próbowałem analogicznie do tego zrobić odliczanie, ale niestety nie działa. #include <LiquidCrystal.h> LiquidCrystal lcd(2,3,4,5,6,7); byte sekundy=0; byte minuty=0; byte godziny=0; bool statusMinutnika=0; void setup() { lcd.begin(16,2); pinMode(8, INPUT_PULLUP); // ustawienie pinów pinMode(9, INPUT_PULLUP); pinMode(10, INPUT_PULLUP); lcd.setCursor(0,1); lcd.print("00:00:00"); } void loop() { lcd.setCursor(0,0); lcd.print("Pomiar"); if (digitalRead(9)==LOW){ // zeruje pomiar sekundy=0; minuty=0; godziny=0; lcd.setCursor(0,1); lcd.print("00:00:00"); statusMinutnika=0; } if (digitalRead(8)==LOW){ // wciśnięcie przycisku do ustawienia czasu sekundy = sekundy + 1; if (sekundy == 60){ // zmienia 60 sekund na kolejna minute minuty = minuty + 1; sekundy = 0; if (minuty == 60){ // zmienia 60 minut na kolejna godzine godziny = godziny + 1; minuty = 0; if (godziny < 10){ // ustawia kursor w odpowiednie miejsce dla godzin lcd.setCursor(1,1); } else { lcd.setCursor(0,1); } lcd.print(godziny); lcd.setCursor(3,1); lcd.print("00"); // zeruje minuty na wyswietlaczu po przekroczeniu 59 } if (minuty < 10){ // ustawia kursor w odpowiednie miejsce dla minut lcd.setCursor(4,1); } else { lcd.setCursor(3,1); } lcd.print(minuty); lcd.setCursor(6,1); lcd.print("00"); // zeruje sekundy na wyswietlaczu po przekroceniu 59 } if (sekundy < 10){ // ustawia kursor w odpowiednie miejsce dla sekund lcd.setCursor(7,1); } else { lcd.setCursor(6,1); } lcd.print(sekundy); delay(100); zapamietanyCzas=digitalRead(8); } } }
  3. Hej, Jestem tu nowy uczę się z tego kursu. Postanowiłem zrobić też własny projekt. Na podstawie zadania o stoperze jestem w trakcie tworzenia programu pod nazwą minutnik. Czas ustawiam z przycisku i to mam ogarnięte. Natomiast mam problem z odliczeniem ustawionego czasu. Uruchomienie odliczania czasu ma być z przycisku. Niestety moje próby z pętlą for, if nie wychodzi. Znalazłem coś takiego jak biblioteka Timers lecz jeszcze nie miałem czasu jej sprawdzić. Czy to może pomóc? Pomiar również ma być widoczny na wyświetlaczu 2x 16.
×
×
  • Utwórz nowe...