Treker (Damian Szymański) Październik 22, 2018 Udostępnij Październik 22, 2018 Potrzebne byłoby więcej szczegółów. Jak bardzo wahają się napięcia, jak częste są zmiany, do czego chciałbyś właściwie to wykorzystać itd. Załóż osobny temat i opisz dokładniej swój problem to łatwiej będzie pomóc 😉 Link do komentarza Share on other sites More sharing options...
kris2k Październik 22, 2018 Udostępnij Październik 22, 2018 4 godziny temu, Treker napisał: Potrzebne byłoby więcej szczegółów. Jak bardzo wahają się napięcia, jak częste są zmiany, do czego chciałbyś właściwie to wykorzystać itd. Załóż osobny temat i opisz dokładniej swój problem to łatwiej będzie pomóc 😉 OK, będzie nowy temat, tutaj rozmawiajmy stricte o kursie. Dzięki! 1 Link do komentarza Share on other sites More sharing options...
Karliko Grudzień 14, 2018 Udostępnij Grudzień 14, 2018 Hej, po próbie kompilacji tego z kursu: #include <LiquidCrystal.h> //Dołączenie bilbioteki LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //Informacja o podłączeniu nowego wyświetlacza void setup() { lcd.begin(16, 2); //Deklaracja typu lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("Kurs Arduino"); //Wyświetlenie tekstu lcd.setCursor(0, 1); //Ustawienie kursora lcd.print("Na Forbocie!"); //Wyświetlenie tekstu lcd.cursor(); //Włącznie kursora } void loop() { } wyświetla mi się taki błąd: Arduino:1.8.8 (Windows Store 1.8.19.0) (Windows 10), Płytka:"Arduino/Genuino Uno" C:\Users\Karol\Documents\Arduino\sketch_dec15a\sketch_dec15a.ino: In function '_GLOBAL__sub_I_lcd': C:\Users\Karol\Documents\Arduino\sketch_dec15a\sketch_dec15a.ino:14:1: internal compiler error: Segmentation fault } ^ Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. lto-wrapper.exe: fatal error: C:\Program Files\WindowsApps\ArduinoLLC.ArduinoIDE_1.8.19.0_x86__mdqgnx93n4wtt\hardware\tools\avr/bin/avr-gcc returned 1 exit status compilation terminated. c:/program files/windowsapps/arduinollc.arduinoide_1.8.19.0_x86__mdqgnx93n4wtt/hardware/tools/avr/bin/../lib/gcc/avr/5.4.0/../../../../avr/bin/ld.exe: error: lto-wrapper failed collect2.exe: error: ld returned 1 exit status exit status 1 Błąd kompilacji dla płytki Arduino/Genuino Uno. Ten raport powinien zawierać więcej informacji jeśli w File -> Preferencje zostanie włączona opcja "Pokaż szczegółowe informacje podczas kompilacji" Ktoś może wiedzieć o co chodzi? Link do komentarza Share on other sites More sharing options...
marek1707 Grudzień 15, 2018 Udostępnij Grudzień 15, 2018 "Segmentation fault" to błąd niezwiązany bezpośrednio z Twoim programem. To wewnętrzny błąd kompilatora i nie ma na to dobrej rady, choć ludzie wskazywali na pewne pomysły. Spróbuj zmienić w programie cokolwiek. Czasem pomaga nawet pusta linia w kodzie, czasem zamiana kolejności dwóch instrukcji, jakaś dodatkowa linia programu a nawet inna nazwa zmiennej. Napisz jak poszło. 1 Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
Karliko Grudzień 15, 2018 Udostępnij Grudzień 15, 2018 55 minut temu, marek1707 napisał: "Segmentation fault" to błąd niezwiązany bezpośrednio z Twoim programem. To wewnętrzny błąd kompilatora i nie ma na to dobrej rady, choć ludzie wskazywali na pewne pomysły. Spróbuj zmienić w programie cokolwiek. Czasem pomaga nawet pusta linia w kodzie, czasem zamiana kolejności dwóch instrukcji, jakaś dodatkowa linia programu a nawet inna nazwa zmiennej. Napisz jak poszło. Niestety, żadna z twoich możliwości rozwiązania problemu nie pomogła. To ogółem wina kompilatora i będzie potrzebna aktualizacja? Link do komentarza Share on other sites More sharing options...
marek1707 Grudzień 15, 2018 Udostępnij Grudzień 15, 2018 No to kombinuj dalej. Wywal połowę kodu albo wstaw jakąś dodatkową bibliotekę tak na próbę np. "#include <wire.h>". U mnie to zwykle pomagało. Tak, to jest jakiś problem wewnątrz kompilatora, ale ciągnie się to za avr-gcc już parę lat i przybrało na sile wraz z Windowsami 8 i 10 więc nie liczyłbym na to, że nagle jakaś magiczna aktualizacja pomoże. Próbuj dalej. U mnie pomogło (tj. znacznie zmniejszyło liczbę tego typu zachowań, ale nie zera) dodanie do linii wywołania kompilatora przełącznika "-fno-devirtualize". Link do komentarza Share on other sites More sharing options...
DraveS Grudzień 16, 2018 Udostępnij Grudzień 16, 2018 Mam takie pytanie. Nie wiem czy w dobrym miejscu piszę, ale wiąże się to z lekcją. Moja ciekawska natura kazała mi sprawdzić ile amperów bierze wyświetlacz. W tym celu przyłożyłem miernik ustawiony na 20m między kabel podświetlenia a masę. Dostałem jakiś niezbyt zrozumiały dla mnie wynik, więc postanowiłem poćwiczyć na baterii. Wziąłem paluszka przyłożyłem i miałem wynik ok 2,5. Pomyślałem jakoś mało chyba. Potem wziąłem baterią 9V i przez rezystor dostałem wynik 4,5 to znaczy, że to było 4,5 ampera? Ale moja ciekawska natura kazała mi zrobić to samo bez rezystora a, że nie przełożyłem kabla to chyba zjarałem miernik 😕 (cały ja). Teraz pytania: Jaki kupić fajny miernik? jak się ustrzec przed takimi niespodziankami że chcemy coś sprawdzić a tam jakieś duże wartości? Są jakiś mierniki którymi można mierzyć ile się chce amperów? Ile amperów to dużo? Składam drony wyścigowe i tam regulatory obrotów zabierają mi po 30A a płytka dystrybucyjna wytrzymuj 190A więc miałem wrażenie że 2 Ampery to jakoś bardzo mało ;P. Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Grudzień 16, 2018 Udostępnij Grudzień 16, 2018 11 godzin temu, DraveS napisał: Ile amperów to dużo? Składam drony wyścigowe i tam regulatory obrotów zabierają mi po 30A a płytka dystrybucyjna wytrzymuj 190A więc miałem wrażenie że 2 Ampery to jakoś bardzo mało ;P. W takiej elektronice, o której my tutaj piszemy 2 ampery to bardzo dużo. Jeśli w układzie nie ma silników to powinieneś się spodziewać < 0,5A, a często znacznie mniej. 11 godzin temu, DraveS napisał: Mam takie pytanie. Nie wiem czy w dobrym miejscu piszę, ale wiąże się to z lekcją. Moja ciekawska natura kazała mi sprawdzić ile amperów bierze wyświetlacz. W tym celu przyłożyłem miernik ustawiony na 20m między kabel podświetlenia a masę. Dostałem jakiś niezbyt zrozumiały dla mnie wynik, więc postanowiłem poćwiczyć na baterii. W tym momencie nie mierzyłeś ile pobiera wyświetlacz tylko jego podświetlenie. Nie podałeś żadnej zmierzonej wartości, więc ciężko ocenić czy była dziwna - na pewno powinna być to jakaś bardzo mała wartość (w miliamperach). 11 godzin temu, DraveS napisał: Potem wziąłem baterią 9V i przez rezystor dostałem wynik 4,5 to znaczy, że to było 4,5 ampera? Jeśli miernik był ustawiony na zakres 20 mA, to wskazanie oznacza 4,5 mA. Nie ma żadnych szans, abyś mógł z baterii 9V pobrać 4,5A 😉 11 godzin temu, DraveS napisał: Ale moja ciekawska natura kazała mi zrobić to samo bez rezystora a, że nie przełożyłem kabla to chyba zjarałem miernik 😕 (cały ja). Dokładnie tak, wtedy uszkodziłeś bezpiecznik w mierniku. 11 godzin temu, DraveS napisał: Jaki kupić fajny miernik? jak się ustrzec przed takimi niespodziankami że chcemy coś sprawdzić a tam jakieś duże wartości? Nie kupuj nowego miernika tylko go rozkręć i wymień bezpiecznik - z tyłu będzie napisane jaki trzeba kupić. Aby nie uszkodzić miernika trzeba troszkę myśleć o tym jaki w układzie może płynąć prąd i ustawiać odpowiedni zakres na mierniku. Gdybyś ustawił największy, tj. zapewne 10A, to nic by się nie stało - ewentualnie rozładowałbyś baterię. Link do komentarza Share on other sites More sharing options...
DraveS Grudzień 16, 2018 Udostępnij Grudzień 16, 2018 Dzięki Ci panie. Mój miernik za 2 dychy będzie żył 😉 Tak w ogóle to kapitalną robotę tu robisz 🙂 Masz czytelnika i klienta na kolejne zestawy 😉 Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Grudzień 16, 2018 Udostępnij Grudzień 16, 2018 8 godzin temu, DraveS napisał: Tak w ogóle to kapitalną robotę tu robisz 🙂 Masz czytelnika i klienta na kolejne zestawy 😉 Dzięki, miło słyszeć 😉 Powodzenia przy dalszych eksperymentach! Link do komentarza Share on other sites More sharing options...
miszczur Styczeń 14, 2019 Udostępnij Styczeń 14, 2019 (edytowany) Skończyłem w zasadzie ten wątek kursu, więc wrzucam zadanka domowe. Zad 7.1 Zad. 7.2 tekst na wyświetlaczu po ciągłym odświeżaniu lekko "migał", ale prawie niezauważalnie Zad 7.3 Wynik jest bardzo trudny do odczytania Zad 7.4 Nie wiem, czy o to chodziło: #include <LiquidCrystal.h> //Dołączenie bilbioteki #include <Arduino.h> LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //Informacja o podłączeniu nowego wyświetlacza unsigned long czas = 0; void setup() { lcd.begin(16, 2); //Deklaracja typu lcd.clear(); pinMode(8, INPUT_PULLUP); //przycisk stop pinMode(9, INPUT_PULLUP); //przycisk start lcd.setCursor(0, 0); lcd.print("Pomiar czasu"); } void loop() { czas = 0; if (digitalRead(9) == LOW){ //kiedy start wcisniety lcd.clear(); lcd.setCursor(0,0); lcd.print("Czas pomiaru w s"); while(digitalRead(8) == HIGH) { //dopoki stop nie bedzie wcisniety czas = czas+1; lcd.setCursor(0, 1); lcd.print(czas/10); //pomiar czasu dzielimy przez 10, delay(100); // wtedy nie trzeba delay'a 1s i przycisk dziala bez zarzutow } } if(digitalRead(8) == LOW) { // kiedy stop wcisniety lcd.clear(); lcd.setCursor(0,0); lcd.print("Koniec: "); lcd.setCursor(0,1); lcd.print(czas/10); lcd.print(" sek"); while(digitalRead(9) == HIGH); //pusta petla do ponownego restartu przyciskiem start } } Zdjęcie: Zrodziło się pytanie, bo o tej godzinie ciężko szukać, a ktoś może zna odpowiedź od razu. Czy jak pomiar natężenia prądu u mnie na diodzie podświetlającej wyniki pomiędzy 13 -15 mA, to czy potrzebuję stosować dodatkową rezystancję, aby móc przerobić układ do sterowania podświetleniem na PWM? Edytowano Styczeń 14, 2019 przez miszczur 1 Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Styczeń 15, 2019 Udostępnij Styczeń 15, 2019 12 godzin temu, miszczur napisał: Czy jak pomiar natężenia prądu u mnie na diodzie podświetlającej wyniki pomiędzy 13 -15 mA, to czy potrzebuję stosować dodatkową rezystancję, aby móc przerobić układ do sterowania podświetleniem na PWM? Prawdopodobnie na wyświetlaczu jest już jakiś rezystor ograniczający prąd podświetlenia, więc możesz zasilać układ prosto z Arduino, ale nie zaszkodzi jednak dodać mały rezystor "dla świętego spokoju" 😉 1 Link do komentarza Share on other sites More sharing options...
KaPl Styczeń 18, 2019 Udostępnij Styczeń 18, 2019 Dzień dobry, a oto moja wersja zadania domowego 7.4, z tego co przeglądałem forum nie było takiego więc postanowiłem, że podzielę się moim pomysłem na rozwiązanie. Od razu mówię że mam inny rodzaj wyświetlacza, ale to tylko są inne biblioteki i inicjalizacja LCD Zad 7.4 Mówiono wiele razy ze mają być komentarze, więc proszę bardzo 🙂 szczegółowo #include <LiquidCrystal_I2C.h> //Biblioteka #include <Wire.h> //Biblioteka LiquidCrystal_I2C lcd(0x3F, 16,2); //Tworze obiekt, dzięki któremu mogę odwołać się do wyświetlacza int sekunda = 0; //Zmienna int minuta = 0; //Zmienna int godzina = 0; //Zmienna void setup() { pinMode(7, INPUT_PULLUP); //Przycisk jako wejście pinMode(8, INPUT_PULLUP); //Przycisk jako wejscie lcd.init(); //Inicjalizacja LCD lcd.backlight(); //Właczenie podswietlenia } void loop() { lcd.setCursor(1,0); //Ustawienie kursora lcd.print("Aktualny czas:"); //Wyswietlamy tekst if(digitalRead(7) == LOW) { //Jesli przycisk wcisniety while(digitalRead(8) == HIGH) { //Do momentu gdy przycisk nie jest wcisniety delay(995); //Opoznienie[ms] sekunda = sekunda + 1; //Do zmiennej "sekunda" dodaje 1 if(sekunda < 10) { //Jesli sekunda jest mniejsza od 10 lcd.setCursor(11,1); //Ustawienie kursora lcd.print("0"); //Wyswietlenie "0" lcd.setCursor(12,1); //Ustawienie kursora lcd.print(sekunda); //Wyswietlenie zmiennej "sekunda" lcd.print("s"); //Jednostka } if(sekunda >= 10 && sekunda < 60) { //Jesli zmienna "sekunda" jest wieksza badz równa 10 i mniejsza od 60 lcd.setCursor(11,1); //Ustawienie kursora lcd.print(sekunda); //Wyswietlanie zmiennej "sekunda" lcd.print("s"); //Jednostka } if(sekunda == 60) { //Jesli sekunda bedzie równa 59 sekunda = 0; //Wyzerowanie zmiennej "sekunda" minuta = minuta + 1; //Do zmiennej "minuta" dodaje 1 lcd.setCursor(11,1); //Ustawienie kursora lcd.print("00"); //Wyswietlenie "00" lcd.setCursor(5,1); //Ustawienie kursora lcd.print(minuta); //Wyswietlanie zmiennej "minuta" lcd.print("min"); //Jednostka } if(minuta > 0 && minuta < 10) { //Jesli zmienna "minuta" jest wieksza 0 i mniejsza od 10 lcd.setCursor(5,1); //Ustawienie kursora lcd.print("0"); //Wyswietlenie "0" lcd.setCursor(6,1); //Ustawienie kursora lcd.print(minuta); //Wyswietlenie zmiennej "godzina" lcd.print("min"); //Jednostka } if(minuta >= 10 && minuta < 60) { //Jesli zmienna "minuta" jest wieksza badz równa 10 i mniejsza od 60 lcd.setCursor(5,1); //Ustawienie kursora lcd.print(minuta); //Wyswietlanie zmiennej "sekunda" lcd.print("min"); //Jednostka if(minuta == 60) { //Jesli minuta jest równa 59 minuta = 0; //Wyzerowanie zmiennej"minuta" godzina = godzina + 1; //Do zmiennej "godzina" dodaje 1 lcd.setCursor(5,1); //Ustawienie kursora lcd.print("00"); //Wyswietlenie "00" lcd.setCursor(0,1); //Ustawienie kursora na 10 miejsce w 2 wersie lcd.print(godzina); //Wyswietlenie zmiennej "godzina" lcd.print("h"); //Jednostka } } if(godzina > 0 && godzina < 10) { //Jesli godzina jest wieksza 0 i mniejsza od 10 lcd.setCursor(0,1); //Ustawienie kursora lcd.print("0"); //Wyswietlenie "0" lcd.setCursor(1,1); //Ustawienie kursora lcd.print(godzina); //Wyswietlenie zmiennej "godzina lcd.print("h"); //Jednostka } if(godzina >= 10 && godzina < 24) { //Jesli zmienna "godzina" jest wieksza badz równa 10 i mniejsza od 24 lcd.setCursor(0,1); //Ustawienie kursora lcd.print(godzina); //Wyswietlenie zmiennej "godzina" lcd.print("h"); //Jednostka } if(godzina == 24) { //Jesli zmienna "godzina" jest rowna 24 godzina = 0; //Zerujemy zmiennna "godzina" lcd.setCursor(0,1); //Ustawienie kursora lcd.print("00"); //Wyswietlenie "00" lcd.setCursor(0,1); //Ustawienie kursora lcd.print(godzina); //Wyswietlenie zmiennnej"godzina" lcd.print("h"); //Jednostka } } } //Zatrzymywanie stopera if(digitalRead(8) == LOW) { //Jesli przycisk wcisniety godzina = godzina; //Zeby nie zmieniac wartosci minuta = minuta; sekunda = sekunda; //Jesli jest godzina mniejsza od 10 if(godzina < 10) { lcd.setCursor(0,1); //Ustawienie kursora lcd.print("0"); //Wyswietlenie "0" lcd.setCursor(1,1); //Ustawienie kursora lcd.print(godzina); //Wyswietlenie zmiennnej "godzina" lcd.print("h"); //Jednostka } //Jesli minuta jest mniejsza od 10 if(minuta < 10) { lcd.setCursor(5,1); //Ustawienie kursora lcd.print("0"); //Wyswietlenie "0" lcd.setCursor(6,1); //Ustawienie kursora lcd.print(minuta); //Wyswietlenie zmiennnej "minuta" lcd.print("min"); //Jednostka } //Jesli sekunda jest mniejsza od 10 if(sekunda < 10) { lcd.setCursor(11,1); //Ustawienie kursora lcd.print("0"); //Wyswietlenie "0" lcd.setCursor(12,1); //Ustawienie kursora lcd.print(sekunda); //Wyswietlenie zmiennej "sekunda" lcd.print("s"); //Jednostka } //Jesli godzina jest wieksza badz równa 10 i mniejsza od 24 if(godzina >= 10 && godzina < 24) { lcd.setCursor(0,1); //Ustawienie kursora lcd.print(godzina); //Wyswietlenie zmiennnej "godzina" lcd.print("h"); //Jednostka } //Jesli minuta jest wieksza badz równa 10 i mniejsza od 60 if(minuta >= 10 && minuta < 60) { lcd.setCursor(5,1); //Ustawienie kursora lcd.print(minuta); //Wyswietlenie zmiennej "minuta" lcd.print("min"); //Jednostka } //Jesli sekunda jest wieksza badz równa 10 i mniejsza od 60 if(sekunda >= 10 && sekunda < 60) { lcd.setCursor(11,1); //Ustawienie kursora lcd.print(sekunda); //Wyswietlenie zmiennej "sekunda" lcd.print("s"); //Jednostka } } if(digitalRead(7) == LOW && digitalRead(8) == LOW) { //Jesli oba przyciski sa wcisniete to resetuje zegar sekunda = 0; //Zeruje zmienna "sekunda" minuta = 0; //Zeruje zmienna "minuta" godzina = 0; //Zeruje zmienna "godzina" } } 2 Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Styczeń 20, 2019 Udostępnij Styczeń 20, 2019 @KaPl, witam na forum 😉 Widzę, że to Twoje pierwsze kroki na Forbocie, oto najważniejsze informacje na start: Chcesz przywitać się z innymi członkami naszej społeczności? Skorzystaj z tematu powitania użytkowników. Opis najciekawszych funkcji, które ułatwiają korzystanie z forum znajdziesz w temacie instrukcja korzystania z forum - co warto wiedzieć? Poszczególne posty możesz oceniać (pozytywnie i negatywnie) za pomocą reakcji - ikona serca w prawym dolnym rogu każdej wiadomości. Dnia 18.01.2019 o 23:17, KaPl napisał: Dzień dobry, a oto moja wersja zadania domowego 7.4, z tego co przeglądałem forum nie było takiego więc postanowiłem, że podzielę się moim pomysłem na rozwiązanie. Bardzo ładnie sformatowany i opisany program - oby wszystkie takie były 😉 Link do komentarza Share on other sites More sharing options...
jogaszu Marzec 7, 2019 Udostępnij Marzec 7, 2019 oto wynik mojego dłubania zad 7,4: #include <LiquidCrystal.h> //Dołączenie bilbioteki #define przycisk1 8 //podpiecie przycisku start #define przycisk2 9 ////podpiecie przycisku stop LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //Informacja o podłączeniu nowego wyświetlacza byte godziny = 0; //przechowuje godziny byte minuty = 0 ; //minuty byte sekundy = 0; //sekundy byte pozycjaSekund = 7; byte pozycjaMinut = 4; byte pozycjaGodzin = 1; bool czyWcisnieto1 = 0; //flaga czy wciśnieto przycisk 1 bool czyWcisnieto2 = 0; //flaga czy wciśnieto przycisk 2 void setup() { pinMode (przycisk1, INPUT_PULLUP); pinMode (przycisk2, INPUT_PULLUP); lcd.begin(16, 2); //Deklaracja typu lcd.clear(); lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("STOPER"); lcd.setCursor(0, 1); lcd.print("00:00:00"); } void loop() { while (digitalRead(przycisk1) == HIGH) { } //zatrzymanie w pustej petli na poczatek if (digitalRead (przycisk1) == LOW) { //jak wcisniesz przycisk 1 czyWcisnieto1 = 1; //flaga inforuje ze wcisnieto przycisk 1 lcd.clear(); //ustawienie poczatkowe ekranu (i po kazdym wcisnieciu przycisku 1) lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("STOPER"); lcd.setCursor(0, 1); lcd.print("00:00:00"); } while (czyWcisnieto1 == 1) { //jak juz wcisnieto przycisk to wpadnij w petle dopuki flaga czyWcisnieto1 bedzie 1 lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("AKTUALNY CZAS"); lcd.setCursor(pozycjaGodzin, 1); lcd.print(godziny); lcd.setCursor(pozycjaMinut, 1); lcd.print(minuty); lcd.setCursor(pozycjaSekund, 1); lcd.print(sekundy); sekundy++; //naliczanie sekund if (sekundy == 10) { //jezeli sekundy przechodza do 2 cyfr, przesuniecie wyswietlania pozycjaSekund--; } if (sekundy == 60) { //jezeli mija 60s trzeba wyzerowac sekundy i naliczyc godziny sekundy = 0; minuty++; lcd.setCursor(pozycjaSekund, 1); lcd.print("00"); pozycjaSekund = 7 ; } if (minuty == 10) { //jezeli minuty przechodza do 2 cyfr, przesuniecie wyswietlania pozycjaMinut = 3; } if (minuty == 60) { //jezeli mija 60min trzeba wyzerowac min i naliczyc godziny minuty = 0; godziny++; lcd.setCursor(pozycjaMinut, 1); lcd.print("00"); pozycjaMinut = 4; } if (godziny == 10) { //przesuniecie wyswietlania godzin pozycjaGodzin = 0; } if (godziny == 100) { //jak dojdzie do 100 kończymy liczenie, bo przesunal by sie tekst na wyswietlaczu godziny = 0; lcd.setCursor(pozycjaGodzin, 1); lcd.print("00"); pozycjaGodzin = 4; lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("ZA DLUGO MIERZYSZ:)"); } delay(1000); //Tutaj przerwa w programie naliczajaca sekundy, sterujemy szybkoscia naliczania if (digitalRead (przycisk2) == LOW) { //jezeli wciscnieto przycisk 2 to pokaz ile sekund minelo lcd.clear(); lcd.setCursor(0, 0); //Ustawienie kursora lcd.print("KONIEC"); lcd.setCursor(0, 1); int czasSekundach = godziny * 3600 + minuty * 60 + sekundy; //zliczenie sekund,ktore minel lcd.print(czasSekundach); czyWcisnieto1 = 0; //flaga do przerwania petli wyswietlajacej naliczanie czasu } } } 1 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
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ę »