-
Data: 2013-09-25 16:10:21
Temat: Re: AVR, Arduino - odmierzanie czasu między zdarzeniami
Od: Zbych <a...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 24.09.2013 23:14, Atlantis pisze:
> Do tej pory nie potrzebowałem jednoczesnego odmierzania kilku różnych
> wartości, w związku z czym timerów w Atmedze8 wystarczało do moich
> zastosowań. Mogłem sobie pozwolić na zaangażowanie konkretnego licznika
> do konkretnego zadania i resetowanie go wedle upodobań. Nie zawsze
> jednak tak się da...
>
> W Arduino jest taka funkcja jak millis(), która zwraca ilość milisekund
> jakie upłynęły od uruchomienia układu. Wartość przechowywana w long int,
> wystarczy na trochę mniej niż 50 dni. Gdy zachodzi konieczność podjęcia
> jakiejś akcji w określonym czasie od jakiegoś zdarzenia wystarczy
> przepisać aktualną wartość do zmiennej, a potem sprawdzać jak różnica
> miedzy wartością aktualną a zapisaną ma się do żądanego interwału.
>
> Zastanawia mnie tylko jedna kwestia. Jakie mogą być skutki ewentualnego
> przepełnienia zmiennej i rozpoczęcia odliczania od nowa? Można sobie
> wyobrazić, że urządzenie pracujące cały czas będzie miało taki uptime.
> Można jakoś bronić się przed taką sytuacją?
Nie ma po co się bronić. Jeśli nie posługujesz się wartością bezwzględną
licznika, tylko różnicą wskazań to spokojnie możesz mierzyć przedziały
mniejsze niż te 50 dni (niezależnie czy licznik się w tym czasie
przekręci, czy nie). Wystarczy sprawdzić kilka przypadków na palcach:
- stan początkowy licznika: 00000000h, końcowy: 00000200h, różnica 200h
- stan początkowy licznika: FFFFFF00h, końcowy: 00000100h, różnica 200h
Następne wpisy z tego wątku
- 25.09.13 18:52 Atlantis
- 25.09.13 20:42 Grzegorz Niemirowski
- 25.09.13 21:08 Atlantis
- 25.09.13 21:09 Zbych
Najnowsze wątki z tej grupy
- "Teleportacja" polskich statków na pd. Bałtyku - rosyjska zabawa w zakłócanie GPS, Galileo, Beidou i GLONASS
- W trakcie porwania prez. Maduro wojsko USONA użyło tajnej broni masowego rażenia: Discombobulator
- antena gsm - kabel - antena gsm
- PID - jeszcze raz
- Zlacze w mikrofonie z lat 80-tych
- Żywica żółknie od UV i wody :(
- Zawory termostatyczne
- Schemat automatyki
- Teoretyczne zagadnienie - ogrzewanie budynku
- Zagadka radiowa
- Prostownik
- Nowy akumulator Donut Lab
- Pilot do zamka/bramy
- Jaka myjka ultradźwiękowa?
- Retro organizer ale współcześnie
Najnowsze wątki
- 2026-01-29 KSeF - 13 wątpliwości
- 2026-01-29 A ja się pochwalę
- 2026-01-29 Warszawa => Mid/Senior IT Recruiter <=
- 2026-01-29 Warszawa => Senior Java Developer <=
- 2026-01-29 Warszawa => IT Recruiter <=
- 2026-01-28 Degradacja
- 2026-01-28 Wysoki Sąd poinstruował czego unikać wyzywając Owsiaka "Równiejszego"
- 2026-01-28 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2026-01-28 Białystok => Preseles Inżynier (background baz danych) <=
- 2026-01-28 Wrocław => Konsultant wdrożeniowy ERP <=
- 2026-01-28 Łódź => Microsoft Engineer <=
- 2026-01-28 Białystok => Tester manualny <=
- 2026-01-27 Tradycja ciągania posłów po sądach za wystąpienia w Sejmie będzie kontynuowana [Lepper 2]
- 2026-01-27 Pierwszy raz sprzedano więcej samochodów zeeletryfikowanych niż ice
- 2026-01-27 Elektryczny Kałasznikow




Jak kupić pierwsze mieszkanie? Eksperci podpowiadają