-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.cyf-kr.edu.pl!news.nask
.pl!news.nask.org.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 21:00:12 +0100
Organization: Netia S.A.
Lines: 70
Message-ID: <kg8j7e$fqk$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> <kg6aul$tba$1@mx1.internetia.pl>
<kg8bo1$f64$1@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 1361563694 16212 83.238.197.12 (22 Feb 2013 20:08:14 GMT)
X-Complaints-To: a...@i...pl
NNTP-Posting-Date: Fri, 22 Feb 2013 20:08:14 +0000 (UTC)
In-Reply-To: <kg8bo1$f64$1@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:643031
[ ukryj nagłówki ]On 22.02.2013 19:00, Atlantis wrote:
> W dniu 2013-02-22 00:26, Michoo pisze:
>
>> Przykład 1 - Czytasz dane z GPS po UART i zapisujesz na kartę.
>> - Procesor po starcie resetuje zewnętrzne urządzenia i przeprowadza
>> inicjalizację.
>
> No cóż... Mi chodziło o sytuację odwrotną - UNIKNIĘCIE resetowania
> zewnętrznego urządzenia (moduł) GSM i napisanie kodu w taki sposób, żeby
> ATmega po ewentualnym restarcie sama zorientowała się gdzie stoi.
Ale czemu atmega miała się zresetować?
>
> Załóżmy, że sam uC (ale nie modem) wiesza się w trakcie aktywnej rozmowy
> telefonicznej.
Oznacza to:
a) błąd w programie. należy go wyeliminować
b) błąd w module albo zakłócenie w komunikacji. stan systemu jest
prawdopodobnie niespójny. Twardy reset jest w takiej sytuacji
najbezpieczniejszym wyjściem.
> Watchdog go restartuje, ale moduł GSM działa dalej (co
> najwyżej chwilowo tracąc komunikację z Atmegą).
>
> Procedura inicjacji modułu jest tak napisana, żeby radzić sobie z
> sytuacją, kiedy natknie się na już zainicjowany moduł - wtedy zostawia
> go w spokoju spokoju.
Ja bym w takim wypadku zrobił sprawdził na ile stan wygląda "dobrze" i w
rzie czego zrobił power-cycle. Skoro był reboot to znaczy, ze coś się
poważnie spieprzyło. Nic ci nie gwarantuje, że moduł będzie po czymś
takim pracował poprawnie. (Któreś telefony tak miały, że po padzie
komunikacji robiły soft reset podsystemu GSM, w efekcie wszystko
wyglądało ok (zasięg, sieć, etc), tylko moduł nie sygnalizował
przychodzących połączeń.)
>
> W pętli znajduje się instrukcja sprawdzająca podniesienie słuchawki.
> Jeśli słuchawka zostanie podniesiona (lub program po włączeniu natknie
> się na podniesioną słuchawkę) wykonuje się seria instrukcji (m.in.
> wybudzenie modułu). Potem odwołuję się do funkcji, która wysyła
> "AT+CPAS\r\n" na potem czeka na ciąg +:CPAS: 00". Gdy ciąg się pojawi
> funkcja oczekuje jeszcze na ostatnią cyferkę i zwraca wartość
> odpowiadającą znakowi ASCII.
foo:
Czekasz na
+:CPAS: 00
a dostajesz
+:CPAS: 01 (albo jeszcze lepiej 05, bo wybudzenie się nie powiodło)
watchdag robi reset, goto foo.
>
> Dalej jest instrukcja switch(), która w zależności od zwróconej wartości
> podejmuje odpowiednie działanie:
> - Jeśli moduł zgłosił gotowość - uruchomienie procedury wybierania numeru.
> - Jeśli moduł zgłosił połączenie przychodzące - odebranie odebranie go i
> uruchomienie procedury obsługującej rozmowę
> - Jeśli moduł zgłosił już aktywne połączenie (poprzednia sesja,
> przerwana przez reset) - uruchomienie procedury obsługującej połączenie.
A jeżeli zgłosił 1,2,5?
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "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
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz