Forum: Mikrocontroller und Digitale Elektronik AT Mega 644 PU mit AD Wandler aufwecken


von Marco (Gast)


Lesenswert?

Hallo Gemeinde,

Ich habe einen AT Mega 644 Pu Nun will ich meinen Controller in den 
Schlafmodus versetzen bis ein bestimmter Wert am AD Wandler des 
Mikrocontrollers anliegt. Hat soetwas schon jemand gemacht?
Wieviel mA benötigt er Controller im Ruhemodus? Bzw. in welchen Modus 
muss ich meinen Controller versetzen, damit er bei einem bestimmten Wert 
aufwacht und z.b einen Ausgang setzt.

Vielen Dank im Voraus

von Falk B. (falk)


Lesenswert?

@Marco (Gast)

>Ich habe einen AT Mega 644 Pu Nun will ich meinen Controller in den
>Schlafmodus versetzen bis ein bestimmter Wert am AD Wandler des
>Mikrocontrollers anliegt.

Das geht so nicht. Der AD-Wandler kann zwar einen Interrupt auslösen und 
somit den AVR aus dem Schlaf wecken, aber das ist unabhängig vom 
gemessenen Wert. Man kann dann nur den Wert auswerten und entweder was 
machen oder den Controller wieder schlafen legen.

>Wieviel mA benötigt er Controller im Ruhemodus?

Siehe Datenblatt und Sleep Mode.

von Thomas E. (thomase)


Lesenswert?

Marco schrieb:
> Hat soetwas schon jemand gemacht?

Nein, sowas geht gar nicht. Jedenfalls nicht in einem wirklich 
stromsparenden Sleepmode.

Der Controller muß von einer anderen Quelle aufgeweckt werden. Dann kann 
eine Messung mit dem ADC durchgeführt werden.

Marco schrieb:
> Wieviel mA benötigt er Controller im Ruhemodus?

mA? Weit gefehlt: Höchsten ein paar µA.

Marco schrieb:
> Bzw. in welchen Modus
> muss ich meinen Controller versetzen

SLEEP_MODE_POWER_DOWN

Dazu muß der Watchdog als Timer eingestellt werden. Damit kann er dann 
alle paar ms oder  s aufgeweckt werden und die Messung durchführen.

: Bearbeitet durch User
von S. Landolt (Gast)


Lesenswert?

> mA? Weit gefehlt: Höchsten ein paar µA.

Wobei allerdings allein die 'Internal Voltage Reference' schon 10 uA 
benötigt (lt. Datenblatt bei Vcc= 2.7 V).

von H.Joachim S. (crazyhorse)


Lesenswert?

Mit dem Analog-Komparator gehts aber.

von Thomas E. (thomase)


Lesenswert?

S. Landolt schrieb:
> Wobei allerdings allein die 'Internal Voltage Reference' schon 10 uA
> benötigt (lt. Datenblatt bei Vcc= 2.7 V).

Aber noch lange keine mA. Außerdem kann man die im Sleep abschalten.


H.Joachim S. schrieb:
> Mit dem Analog-Komparator gehts aber.

Aus Power Down? Nein.

von S. Landolt (Gast)


Lesenswert?

> Außerdem kann man die im Sleep abschalten.
Aber er soll doch aufgrund einer definierten Spannung aufwachen.

> Aus Power Down? Nein.
Es hieß "Schlafmodus", dazu gehört auch 'idle'.

von Thomas E. (thomase)


Lesenswert?

S. Landolt schrieb:
> Es hieß "Schlafmodus", dazu gehört auch 'idle'.

Idle ist noch nicht einmal ein Nickerchen.

von S. Landolt (Gast)


Lesenswert?

Stimmt, ist lediglich ein Stehenbleiben, von Atmel trotzdem unter 'sleep 
modes' subsummiert.
  'Schlafwandeln' fällt mir jetzt noch ein, aber ich bekomme es nicht 
ausformuliert.

von Thomas E. (thomase)


Lesenswert?

S. Landolt schrieb:
> Stimmt, ist lediglich ein Stehenbleiben, von Atmel trotzdem unter 'sleep
> modes' subsummiert.
>   'Schlafwandeln' fällt mir jetzt noch ein, aber ich bekomme es nicht
> ausformuliert.

Wir können jetzt noch lange philosophieren. Erstmal müssen wir wissen, 
wie schnell das Ding reagieren soll.

von Marco (Gast)


Lesenswert?

Habe gerade nochmals ein wenig recherchiert.
Theoretisch könnte ich einen Klatschalter an den Analog Komperator 
anschließen. Wenn in die Hände geklatscht wird, wird eine Messung 
durchgeführt.
Wie tief kann ich da denn Controller schlafen legen? Wieviel uA benötigt 
er dann in diesem schlafmodus, wenn ich den Controller mit 5 V betreibe

von Marco (Gast)


Lesenswert?

Hat keiner eine Idee?

von Falk B. (falk)


Lesenswert?

@Marco (Gast)

>Hat keiner eine Idee?

Was ist denn dein Problem? Sag uns, was du INSGESAMT erreichen willst. 
Siehe Netiquette.

von Falk B. (falk)


Lesenswert?

@Marco (Gast)

>Theoretisch könnte ich einen Klatschalter an den Analog Komperator
>anschließen.

Der kann aber keine Weckruf im tiefen Schlafmodus auslösen. Dazu muss 
man einen externen Komparator nutzen und per Pin Change Interrupt 
aufwachen. Dann geht es bis 1uA und weniger runter.

von Marco (Gast)


Lesenswert?

Ich würde gerne aus diesem Klatsschalter, den ich bereits vor vielen 
Jahren gekauft habe meinen Mikrokontroller aus dem Tiefschlaf holen

https://www.conrad.de/de/klatschschalter-bausatz-conrad-components-193135-12-vdc-193135.html?gclid=EAIaIQobChMI_LWdjKbt2AIVRjwbCh1AWQmzEAAYASAAEgJe9PD_BwE&insert_kz=NA&hk=SEM&WT.srch=1&ef_id=WmS0TgAABQ-xbCbO:20180123045722:s

Dabei würde ich dies so sparsam wie nur möglich bauen. D.h wenn ich in 
die Hände klatsche gibt's eine Spannungsänderung am Mikrofon. Anstatt 
auf den Operationsverstärker zu gehen, würde ich das Signal an den 
Analog komperator des Mikrokontrollers senden. D. H. Beim klatschen in 
die Hände wird der Controller geweckt, macht seine Messungen, schaltet 
das Bluetooth Modul für ca. 2 min ein. Ich kann mich mit dem Handy 
verbinden, den Wert ablesen und der Controller legt sich wieder 
schlafen.

von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

so ein Kondensatormikrofon hat innen einen Transistor, der z.B. über 10 
kOhm an + angeschlossen ist. Da wird schon ein halbes mA fließen.

MfG

von c-hater (Gast)


Lesenswert?

Marco schrieb:

> Ich würde gerne aus diesem Klatsschalter, den ich bereits vor vielen
> Jahren gekauft habe meinen Mikrokontroller aus dem Tiefschlaf holen

> Dabei würde ich dies so sparsam wie nur möglich bauen.

> D.h wenn ich in
> die Hände klatsche gibt's eine Spannungsänderung am Mikrofon. Anstatt
> auf den Operationsverstärker zu gehen, würde ich das Signal an den
> Analog komperator des Mikrokontrollers senden.

Das ist Doppel-Unsinn.

1) Ohne den Filter, den der OPV darstellt, ist es kein Klatschschalter 
mehr, sondern würde auf jedes (hinreichend laute) Geräusch reagieren.

2) Der Analog-Komparator kann den Mega nicht aus dem Tiefschlaf 
(PowerDown) wecken. Das ist aber der einzige Schlafmodus, der wirklich 
in Größenordnungen Energie spart.

Sprich: Du musst die Schaltung des Klatschalters benutzen, wie sie ist. 
Den digitalen Ausgang des Klatschalters benutzt du, um per PCINT 
aufzuwachen, denn dieser kann den Mega aus dem Tiefschlaf holen.

Alles, was man ansonsten vielleicht noch machen kann: Die Schaltung des 
Klatschalters auf minimalen Energieverbrauch optimieren. Um zu 
entscheiden, ob das lohnt und ob das möglich ist, müsste man die 
gegenwärtige Schaltung kennen.

von Andreas B. (bitverdreher)


Lesenswert?

c-hater schrieb:
> Alles, was man ansonsten vielleicht noch machen kann: Die Schaltung des
> Klatschalters auf minimalen Energieverbrauch optimieren

Hier wird wohl das größte Einsparpotential sein.

von Peter D. (peda)


Lesenswert?

Sag einfach mal, welche Batterie Du benutzen willst und wie lange die 
halten soll.
Davon hängt nämlich ab, ob überhaupt Stromsparen sinnvoll ist und 
welcher Mode.

von Reiner_Gast (Gast)


Lesenswert?

Marco schrieb:
> Habe gerade nochmals ein wenig recherchiert.
> Theoretisch könnte ich einen Klatschalter an den Analog Komperator
> anschließen. Wenn in die Hände geklatscht wird, wird eine Messung
> durchgeführt.
> Wie tief kann ich da denn Controller schlafen legen? Wieviel uA benötigt
> er dann in diesem schlafmodus, wenn ich den Controller mit 5 V betreibe

Ich würde vorschlagen, du studierst mal das Datenblatt zum ATMega644, 
welches du hier findest:

http://ww1.microchip.com/downloads/en/DeviceDoc/doc2593.pdf

In Kapital 8 stehen die Sleep Modes drinnen und welche Ereignisse den 
Controller aus dem jeweiligen Modus aufwecken können...

Und in Kapitel 27 stehen die Angaben zum Stromverbrauch in den einzelnen 
Sleepmodi in Abhängigkeit von der Versorgungsspannung und der 
Taktgeschwidigkeit

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.