Witam serdecznie.
Mam taki problem w sumie udało mi się go rozwiązać elektronicznie ale... chodzi o zwis procesora (atmega8) np gdy ten wyłącza jakiś przekaźnik, dałem parę kondensatorów tu i ówdzie i problem już nie występuje, ale pomyślałem aby dać jeszcze "łaczdoga" w programie. Jako że nigdy tego nie robiłem to poproszę o małą pomoc.
Jest tak:
Sam "łaczdog" może być skonfigurowany dla od 16 do 2048 ms (skokowo x2, czyli 16, 32, 64...) i tak mi się wydaje, że powinien mieć zawsze więcej sekund niż ma pętla programu bo ją po prostu zatrzyma w czasie wykonywania. I tak jak widać wyżej jest np 500ms w pętli to "łaczdog" powinien mieć minimum 512 a najlepiej 1024 co najmniej.
I mam teraz takie pytanie, co z rozkazem Reset Watchdog ? wiem ze powinien być gdzieś tu;
Spotkałem się też z programami gdzie nie ma instrukcji reset watchdog tylko sama Config i start przed pętlą Do.
Bardzo proszę o jakąś pomoc w temacie co by to działało normalnie czyli reanimowało pętle główną po zwisie jak by taki nastąpił i ewentualnie poprawki jeżeli wyżej napisałem bzdury.
Kod czy też pseudokod, umieszczamy w znacznikach [code].
Proszę z nich korzystać w przyszłości.
[zumek]
Mam taki problem w sumie udało mi się go rozwiązać elektronicznie ale... chodzi o zwis procesora (atmega8) np gdy ten wyłącza jakiś przekaźnik, dałem parę kondensatorów tu i ówdzie i problem już nie występuje, ale pomyślałem aby dać jeszcze "łaczdoga" w programie. Jako że nigdy tego nie robiłem to poproszę o małą pomoc.
Jest tak:
-----------------------
jakies tam deklaracje itp
Config Watchdog = 1024
Start Watchdog
Do
jakies instrukcje itp programu
Waitms 500
Loop
-----------------------
Sam "łaczdog" może być skonfigurowany dla od 16 do 2048 ms (skokowo x2, czyli 16, 32, 64...) i tak mi się wydaje, że powinien mieć zawsze więcej sekund niż ma pętla programu bo ją po prostu zatrzyma w czasie wykonywania. I tak jak widać wyżej jest np 500ms w pętli to "łaczdog" powinien mieć minimum 512 a najlepiej 1024 co najmniej.
I mam teraz takie pytanie, co z rozkazem Reset Watchdog ? wiem ze powinien być gdzieś tu;
------------------------
jakies tam deklaracje itp
Config Watchdog = 1024
Start Watchdog
Do
jakies instrukcje itp programu
Waitms 500
[b]Reset Watchdog[/b]
Loop
------------------------Spotkałem się też z programami gdzie nie ma instrukcji reset watchdog tylko sama Config i start przed pętlą Do.
Bardzo proszę o jakąś pomoc w temacie co by to działało normalnie czyli reanimowało pętle główną po zwisie jak by taki nastąpił i ewentualnie poprawki jeżeli wyżej napisałem bzdury.
Kod czy też pseudokod, umieszczamy w znacznikach [code].
Proszę z nich korzystać w przyszłości.
[zumek]
