Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

optymalizacja zużycia prądu - optymalizacja zużycia prądu AVR

AdamZad 27 Lip 2015 00:57 846 6
  • #1 27 Lip 2015 00:57
    AdamZad
    Poziom 12  

    Słuchajcie...

    Chciałbym wiedzieć jak wycisnąć maksymalną oszczędność jeśli chodzi o pobór prądu przez AVR.
    Aktualnie skupiamy się na prądzie wpływającym do pinu reset.
    Ustaliłem że :

    Dla trybu power down jest tak że zewnętrzne podciąganie pinu reset nie ma wpływu na pobór prądu. Pobór prądu jaki uzyskałem zbliżony jest to noty katalogowej tj <0.1uA a to znaczy że nawet przez to wewnętrzne podciąganie w trybie power down nie ssie prądu.

    W trybie Active lub Idle jest już inaczej i chcąc tutaj uzyskać najlepsze wyniki należy między innymi pozbyć się zewnętrznego podciągania pinu reset co ogranicza pobór.
    Podejrzewam że poprzez wewnętrzne podciąganie (domyślnie na resecie załączone jeśli "reset jest resetem") będzie ssał prąd (ale to tylko moje podejrzenia bo nie mam jak tego za bardzo zmierzyć).

    Można oczywiście wyeliminować funkcję reset poprzez ustawienie RSTDSBL ale właśnie nie wiem czy takie coś wpływa korzystnie na pobór prądu. Jasne - nie będzie możliwości resetowania z zewnątrz guzikiem ale w niektórych bateryjnych zastosowaniach może miałoby to sens. Robił ktoś takie próby ?

    Jeśli ktoś takie testy będzie dopiero robić musi pamiętać oczywiście o tym że jeśli zaprogramuje RSTDSBL to już niskonapięciowym programatorem nie będzie mógł reprogramować procka.

    Kolejne pytanie : po co wszyscy wszędzie dają dodatkowe podciąganie zewnętrzne pinu reset do Vcc jak przecież domyślnie włączone jest wewnętrzne ?

    0 6
  • #3 27 Lip 2015 09:16
    dondu
    Moderator Mikrokontrolery Projektowanie

    AdamZad napisał:
    Kolejne pytanie : po co wszyscy wszędzie dają dodatkowe podciąganie zewnętrzne pinu reset do Vcc jak przecież domyślnie włączone jest wewnętrzne ?

    To nie tak :)

    Zastosowanie zewnętrznego rezystora zależy od konkretnego przypadku. Inaczej projektujemy urządzenie zasilane z malutkiej baterii sterujące malutką diodą, które ma pracować 10 lat, a inaczej urządzenie sterujące przekaźnikami i silnikami w dodatku w silnie zakłóconym otoczeniu. W pierwszym przypadku z rezystora możemy zrezygnować, a w drugim koniecznie dołożyć (+ jeszcze kondensator by filtr RC stworzyć) lub zamiast niego umieścić jumper i zworkę do Vcc lub wręcz RESET wyłączyć, by zabezpieczyć się na 100% przed przypadkowym resetem mikrokontrolera.

    Natomiast początkującym polecamy dodawanie tego rezystora by ograniczyć ilość możliwych problemów podczas nauki, bo już wielokrotnie przekonaliśmy się, że nawet takie drobiazgi są przyczyną ich niepowodzeń, bo ścieżka była długa i indukował się impuls z cewki przekaźnika. głośnika, itp. Należy pamiętać, że polecamy zgodnie z producentem rezystor większy od 4,7k lub nawet 10k (ze względu na programatory), a wewnętrzny pull-up pinu reset ma 30-80k.


    AdamZad napisał:
    Można oczywiście wyeliminować funkcję reset poprzez ustawienie RSTDSBL ale właśnie nie wiem czy takie coś wpływa korzystnie na pobór prądu. Jasne - nie będzie możliwości resetowania z zewnątrz guzikiem ale w niektórych bateryjnych zastosowaniach może miałoby to sens. Robił ktoś takie próby ?

    Nie sprawdzałem, ale zrobię taki eksperyment (w wolnym czasie) - fusebit doctor później pomocny będzie :) : http://mikrokontrolery.blogspot.com/2011/04/zablokowany-mikrokontroler-atmel.html

    0
  • #4 27 Lip 2015 09:32
    excray
    Poziom 39  

    AdamZad napisał:
    Kolejne pytanie : po co wszyscy wszędzie dają dodatkowe podciąganie zewnętrzne pinu reset do Vcc jak przecież domyślnie włączone jest wewnętrzne ?

    Ponieważ jest ono bardzo słabe i nie gwarantuje poprawnej pracy. W sytuacji gdy wyprowadzamy sygnał reset i robi on za antenę plus jest podatny na upływy związane z wilgocią i brudem to musimy mu zapewnić odpowiednio wysoki prąd zadziałania.
    AdamZad napisał:
    W trybie Active lub Idle jest już inaczej i chcąc tutaj uzyskać najlepsze wyniki należy między innymi pozbyć się zewnętrznego podciągania pinu reset co ogranicza pobór.
    Podejrzewam że poprzez wewnętrzne podciąganie (domyślnie na resecie załączone jeśli "reset jest resetem") będzie ssał prąd (ale to tylko moje podejrzenia bo nie mam jak tego za bardzo zmierzyć).

    Nie bardzo rozumiem o jakiej sytuacji piszesz. Dlaczego miałby płynąć jakikolwiek prąd przez RESET? To jest tylko wejście i nie wystawia sygnału na zewnątrz. Czy piszemy o sytuacji gdy przycisk RESET jest wciśnięty? Czyli coś pewnie 2-3 razy na czas całego życia urządzenia?

    0
  • #5 27 Lip 2015 09:49
    dondu
    Moderator Mikrokontrolery Projektowanie

    excray napisał:
    Czy piszemy o sytuacji gdy przycisk RESET jest wciśnięty? Czyli coś pewnie 2-3 razy na czas całego życia urządzenia?

    Dodam tylko, że w zależności od projektanta urządzenia taka sytuacja może się zdarzać znacznie częściej, bo może to być zamierzony lub nawet wyłączny sposób obsługi urządzenia.

    Edit:

    @AdamZad
    Zaglądnij do noty AVR042 - tę notę warto znać w całości.
    Jest tam w miarę szczegółowo opisany pin reset i związane z nim problemy.

    Edit 2:

    Wątpliwości kol. AdamZad mają swoje źródło w moim komentarzu w tym miejscu:
    http://mikrokontrolery.blogspot.com/2011/01/b...howComment=1361276090296#c3483448543120342799

    0
  • #6 27 Lip 2015 15:35
    AdamZad
    Poziom 12  

    Słuchajcie właśnie uświadomiłem sobie jedną dosyć istotną rzecz. Już natrafiłem na nią wcześniej a teraz znowu to znaczy że muszę o tym zapamiętać!!! :D

    Otóż z początku myślałem że do wejścia reset pompowany był prąd poprzez zewnętrzny rezystor (myślałem tak bo miliamperomierz pokazał mi 113 uA jako prąd wpływający do tego pinu). Dlatego w ogóle poruszyłem temat resetu w związku z optymalizacją poboru prądu przez uC.

    I wiecie co ? Głupoty gadam , bo kurcze żaden prąd tam nie wpływa.
    Po odłączeniu programatora - miernik pokazał 0 mA!!!

    Sorka. Wy tutaj się produkujecie a ja gafę zrobiłem, wstyd mi trochę.

    Pozdrawiam
    Adam

    1