eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaATmega8L + AD7745 - nie budzi się :-(Re: ATmega8L + AD7745 - nie budzi się :-(
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!fu-berlin.de!uni
    -berlin.de!not-for-mail
    From: Waldemar Krzok <w...@z...fu-berlin.de>
    Newsgroups: pl.misc.elektronika
    Subject: Re: ATmega8L + AD7745 - nie budzi się :-(
    Followup-To: pl.misc.elektronika
    Date: Sun, 24 Apr 2011 22:56:07 +0200
    Organization: Freie Universitaet Berlin
    Lines: 37
    Message-ID: <9...@m...uni-berlin.de>
    References: <ip2213$6ja$1@inews.gazeta.pl>
    Mime-Version: 1.0
    Content-Type: text/plain; charset="ISO-8859-2"
    Content-Transfer-Encoding: 8Bit
    X-Trace: news.uni-berlin.de
    w0sXgOSU3JDzdVbIrWMkhAU5IoOj8jCJH9U25CaUg6tARjiTi1xVa77F+f
    Cancel-Lock: sha1:oGpmYV29rUt/38fKAmcnY01Q9j8=
    User-Agent: KNode/4.4.10
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:609116
    [ ukryj nagłówki ]

    wkwj wrote:

    > Witam,
    > jako "międzymordzie" pomiędzy PC a AD7745 używam ATmega8L (plus link
    > optyczny ale to już osobna sprawa). AD7745 jest konfigurowany
    > z PC i pracuje sobie w trybie Single Conversion czyli po każdej
    > konwersji na jego wyjściu RDY pojawia się zbocze opadające sygnalizujące
    > że dane z ostatniego przetwarzania są do odczytania.
    > Sygnał RDY jest podłączony do we. INT0 ATmegi, przerwanie INT0 wyzwalane
    > poziomem niskim. Układ działa tak: ATmega dostaje rozkaz z PC, wyzwala
    > pomiar AD7745 i czeka na przerwanie (docelowo w stanie SLEEP), potem
    > budzi sie przerwaniem, odczytuje dane z AD7745 i wysyła je do PC.
    > Wszystko działa OK, pomiary i komunikacja sa prawidłowe ale tylko jeżeli
    > nie używam żadnego trybu uspienia w ATmega albo używam Idle - procek
    > poprawnie "zasypia" w momencie rozpoczęcia pomiaru przez AD7745 i potem
    > budzi się poprzez przerwanie INT0 gdzy konwerscja CDC się zakończy.
    > Problem zaczyna się gdy chcę użyć "głębszego" uśpienia PowerDown (a
    > zalezy mi na nim bo chce zminimalizować zakłócenia EMI "chwytane" przez
    > AD7745 z pracującego ATmega). Z datashitu ATmega wynika, że z trybu
    > uśpienia PowerDown budzi go przerwanie zewnętrzne INT0 wyzwalane
    > poziomem, przy czym poziom niski musi trwać dłużej niż czas "pobudki"
    > procka. Ale przecież AD7745 wystawia na RDY poziom 0 zaraz po
    > zakończeniu przetwarzania i poziom ten trwa aż do odczytania danych lub
    > wyzwolenia nowego pomiaru czyli "dostatecznie" długo...
    > No to czemu mi się ATmega nie budzi z tego PowerDown a budzi sie
    > poprawnie z Idle ? Czy gdzies coś przeoczyłem w datashicie ?

    Nie mam shita pod łapą, ale sprawdź, czy na pewno są to te same wektory
    przerwań, czy nie leci to przez reset. Tak na wszelki wypadek. Po drugie
    sprawdzałeś oscyloskopem, czy na pewno reset trwa wystarczająco długo. Po
    trzecie: coś mi się wydaje, że int0 musi wrócić do 1 by procek wystartował.
    Może się wydaje, ale sprawdzić możesz :-).

    Waldek

    --
    My jsme Borgové. Sklopte štíty a vzdejte se. Odpor je marný.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: