-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.supermedia.pl!plix.pl!newsfeed2.plix.pl!news.nask.pl!news.nask.or
g.pl!news.internetia.pl!not-for-mail
From: Michoo <m...@v...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: AVR - przerwania zewnętrzne, usypianie i budzenie
Date: Fri, 22 Feb 2013 00:26:44 +0100
Organization: Netia S.A.
Lines: 72
Message-ID: <kg6aul$tba$1@mx1.internetia.pl>
References: <kg3hur$15n$1@portraits.wsisiz.edu.pl> <kg3kbm$97a$1@news.dialog.net.pl>
<kg5mhs$6ag$2@portraits.wsisiz.edu.pl>
NNTP-Posting-Host: 83.238.197.12
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: mx1.internetia.pl 1361489685 30058 83.238.197.12 (21 Feb 2013 23:34:45 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Thu, 21 Feb 2013 23:34:45 +0000 (UTC)
In-Reply-To: <kg5mhs$6ag$2@portraits.wsisiz.edu.pl>
X-Tech-Contact: u...@i...pl
User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:10.0.11) Gecko/20121123
Icedove/10.0.11
X-Server-Info: http://www.internetia.pl/
Xref: news-archive.icm.edu.pl pl.misc.elektronika:642994
[ ukryj nagłówki ]On 21.02.2013 18:46, Atlantis wrote:
> W dniu 2013-02-20 23:56, DJ pisze:
>
>> Tak musisz program przemyśleć żeby miał okazję resetować watchdoga, jako
>> objaw normalnej pracy. Np przerwaniami z timerów, czy czegokolwiek
>> innego co występuje zawsze częściej niż okres watchdoga.
>> Jeśli chcesz uśpić uC na amen na 30 minut, bo np po takim czasie
>> przjdzie Ci INT0/1, to watchdoga w tym czasie użyć nie możesz.
>
> Czyli tak jak myślałem... Czy w takim razie duże jest zagrożenie
> zawieszeniem się uC w trybie uśpienia?
Jeżeli projekt jest poprawnie zaprojektowany to nie istnieje ryzyko
"zawieszenia".
Przykład 1 - Czytasz dane z GPS po UART i zapisujesz na kartę.
- Procesor po starcie resetuje zewnętrzne urządzenia i przeprowadza
inicjalizację.
- Procesor przechodzi w tryb IDLE.
- Przerwania UART powodują pakowanie bajtów do bufora i sparsowanie
wiadomości po \n.
- Przerwanie zegarowe rozpoczyna zapis na kartę po SPI.
- Przerwania obsługują transmisję po SPI.
- Jeżeli nie będzie przez dłuższy czas komunikacji od GPS, albo zamrze
komunikacja z kartą watchdog wywoła reset pozwalając.
Szablon wygląda +- tak:
main(){
if(watch_dog_reset){
report_error();
GPS->force_reset();
CARD->force_reset();
}
GPS->setup();
CARD->setup();
//...
for(;;)
sleep();
}
Przykład 2 - czekasz na naciśnięcie przycisku i otwierasz zamek jeżeli
się zgadza karta.
- Procesor po starcie resetuje zewnętrzne urządzenia i przeprowadza
inicjalizację.
- Procesor przechodzi w tryb STANDBY.
- Jedynym zdarzeniem na które czeka procesor jest przycisk, więc wd jest
wyłączony.
- W czasie kiedy następuje komunikacja z kartą włączasz wd.
Szablon wygląda +- tak:
main(){
if(watch_dog_reset){
report_error();
cleanup();
}
BTN1->setup();
for(;;){
sleep();
wd_enable();
CARD->setup();
if(CARD->verify_access()){
DOOR->open();
busy_wait();
DOOR->close();
}
wd_disable();
}
}
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 22.02.13 19:00 Atlantis
- 22.02.13 21:00 Michoo
- 23.02.13 08:59 Atlantis
- 23.02.13 12:54 Michoo
- 23.02.13 17:50 Atlantis
Najnowsze wątki z tej grupy
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
- AMS spalony szybkim zasilaczem USB
- stalowe bezpieczniki
- Wyświtlacz ramki cyfrowej
- bateria na żądanie
- pradnica krokowa
- Nieustający podziw...
- Coś dusi.
Najnowsze wątki
- 2025-02-04 podpisywanie umów z datą wsteczną
- 2025-02-04 Radio internetowe do starego Androida
- 2025-02-04 "ogrodowa linia napowietrzna"
- 2025-02-04 Warszawa => Senior Account Manager <=
- 2025-02-03 Awaria BNP Paribas
- 2025-02-03 kryminalni i dochodzeniowcy
- 2025-02-03 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-03 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 jaki zasilacz laboratoryjny
- 2025-02-03 Puszka w ziemię
- 2025-02-03 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2025-02-03 Kraków => Programista Full Stack .Net <=
- 2025-02-03 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-03 Bez żadnego trybu