Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[AVR] Przerwanie zewnętrzne ~ 2 - 5 minut

anowak 26 Feb 2013 19:14 1785 15
  • #1
    anowak
    Level 10  
    Cześć,

    Buduje urządzenie zasilane z baterii. Potrzebuje obudzić procesor raz na kilka minut.
    Prosiłbym o polecenie dobrego źródła przerwań dla moich wymagań / zewnętrzne /

    Pozdr,
    Adrian
  • #2
    BlueDraco
    MCUs specialist
    Budź raz na kilka sekund, a po np. co setnym obudzeniu zrób to, co masz zrobić. Pewnie na dodatkowe budzenia zużyjesz mniej prądu niż na zasilanie zewnętrznego budzika.
  • #3
    tmf
    Moderator of Microcontroller designs
    Procesor sam może się budzić, przecież są MCU, które mają część działającą asynchronicznie. Od biedy można wykorzystać watchdoga w tej roli. Pytanie co tem procek ma robić? Czy to jest zadanie dla jakiegoś ATTiny13, czy raczej czegoś większego?
  • #4
    anowak
    Level 10  
    BlueDraco, z trybu w którym chcę utrzymać procesor nie można wyjść poprzez timer.

    Procek to Attiny2313. Chciałem użyć go w trybie power-down. Problem polega na tym, że akurat dla tego procesora (jak i wielu innych) wybudzić go można jedynie przerwaniem INT0.

    Zastanawiam się, czy istnieje odpowiednik przysłowiowego ne555 o obniżonym poborze prądu. Z ne555 można uzyskać częstotliwość rzędu 0.001Hz.

    WD wydaje się być ostatecznością. :(

    Pozdr,
    Adrian
  • #5
    BlueDraco
    MCUs specialist
    To zmień mikrokontroler, skoro ten nie spełnia wymagań. Takie np. LPC800 są tańsze i mają odpowiedni timer do wybudzania z głębokiego uśpienia.
  • #6
    tmf
    Moderator of Microcontroller designs
    Kolejny przykład, kiedy próbuje się na siłę wykorzystać procka, który do tego celu się absolutnie nie nadaje. Skoro zależy ci tak na oszczędności energii, to dlaczego bierzesz procka, który z oszczędnością energii nie ma nic wspólnego? Musisz się zdecydować, albo robisz to na AT2313 i oszczędność to fikcja, albo naprawdę chcesz zrobić układ low-power i jesteś otwarty na sugestie. Atmel ma serie pico power, z drugiej strony co złego jest w wykorzystaniu WD jako timera do wybudzania? Albo co złego jest w użyciu procka, który ma oddzielny układ RTC, mogący go wybudzać wtedy kiedy trzeba? Możesz oczywiście dołączyć jakiś układ zewnętrzny, ale to kompletnie bez sensu, skoro istnieją dedykowane rozwiązania twojego problemu.
  • #7
    anowak
    Level 10  
    Proponujecie zmianę platformy, wymianę procesora. Ja tymczasem chciałem dowiedzieć się zupełnie czegoś innego.

    Głownie chodzi o oszczędne generatory pracujące z małymi częstotliwościami.

    P.S. Tak, używam 2313A.
  • #8
    Piotr Piechota
    Level 21  
    Może proste RC na INT0 z dużym R. Jeżeli koniecznie 555 to LMC555 (wersja CMOS)
  • #9
    BlueDraco
    MCUs specialist
    A bo mnie uczyli, że układ dobiera się do zastosowania, a nie odwrotnie - takie mam skrzywienie. Zaraz zaczną się pytania, jaką przyczepę trzeba doczepić do malucha, żeby móc na nią załadować 5 ton węgla.

    Skoro jest całe mnóstwo mikrokontrolerów, które mają timer do budzenia w środku, to po co w projekcie, w którym taki timer jest potrzebny, używać mikrokontrolera, który go nie ma?
  • #10
    dondu
    Moderator on vacation ...
    anowak wrote:
    Proponujecie zmianę platformy, wymianę procesora. Ja tymczasem chciałem dowiedzieć się zupełnie czegoś innego.

    I dobrze koledzy proponują, ponieważ zysk na oszczędzaniu energii będziesz miał większy, przy tej samej cenie całości.
    Innymi słowy - bierzesz nieco droższy mikrokontroler, z picoPower i RTC z budzikiem, i nie musisz dodawać zewnętrznych układów budzących z Power Down. A zysk na energii kolosalny.
  • #11
    Piotr Piechota
    Level 21  
    Quote:
    Skoro jest całe mnóstwo mikrokontrolerów, które mają timer do budzenia w środku, to po co w projekcie, w którym taki timer jest potrzebny, używać mikrokontrolera, który go nie ma?


    Może dla "sportu" ;) Można się spotkać z większym niedostosowaniem procesora do wymagań https://www.elektroda.pl/rtvforum/topic2260038.html
  • #12
    JarekC
    Level 32  
    BlueDraco wrote:
    To zmień mikrokontroler, skoro ten nie spełnia wymagań. Takie np. LPC800 są tańsze i mają odpowiedni timer do wybudzania z głębokiego uśpienia.


    Wydaje mi się, że te układy nie są jeszcze dostępne w handlu a tylko w postaci płytki LPCXpresso lub próbek.

    JarekC
  • #13
    BlueDraco
    MCUs specialist
    Jak zrobisz projekt - będą dostępne. Zresztą taką możliwość mają też (nieco bardziej pokrętnie) LPC11xx i większość innych Cortexów.
  • #14
    User removed account
    User removed account  
  • #15
    tmf
    Moderator of Microcontroller designs
    No właśnie. można na ATTiny i WD, można dowolny ATMega z RTC, można XMEGA z RTC, co ma dodatkowo zaletę, że można go wybudzać w dowolnej chwili i ma podtrzymanie bateryjne. Opcji jest wiele.
  • #16
    User removed account
    User removed account