Skocz do zawartości

Arduino - odmierzenie czasu


adrian

Pomocna odpowiedź

Cześć, mam pewien problem z prawidłowym odmierzaniem czasu w Arduino,
moim zadaniem jest wyznaczenie rzeczywistego czasu jaki upłynął pomiędzy zapaleniem diody i zgaśnięciem, gdy dioda jest zapalona uruchamiam timer w arduino za pomocą komendy millis(), który zaczyna odmierzać, kiedy dioda zgaśnie chce się dowiedzieć ile to zdarzenie trwało, i tak w kółko...

problem jest taki, że zawsze podaje mi ile czasu upłynęło od początku a nie od poprzedniego stanu,
w jaki sposób można zresetować odliczanie ?

Być może jest to prosty problem programowy?

Będe wdzięczny za podpowiedzi,

Link do komentarza
Share on other sites

Nie jestem specem od Arduino, ale taka jest idea tej funkcji.

Ten licznik się zresetuje po 50 dniach i o ile Twoja płytka nie będzie dłużej działać po jednym włączeniu to zrób tak:

1. Początek pomiaru

unsigned long start;

....

start = millis();

2. Koniec pomiaru

unsigned long czas = millis() - start;

Jest także alternatywa - resetować stan millis:

"Make sure the variable is in the scope of your code by declaring it sometime after wiring.c is included and before loop():

extern volatile unsigned long timer0_overflow_count;

Then, whenever you need to reset the timer back to zero, just set:

timer0_overflow_count = 0;"

PS. Znalezienie tych informacji zajeło mi 60sekund... korzystaj z wyszukiwarek...

  • Pomogłeś! 2
Link do komentarza
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!

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

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.