mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik µC nach gewisser Zeit abschalten


Autor: Björn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tag,

ich hab mir ne Fernbedienung programmiert. Nun möchte ich den 
Controller(AVR) bzw. die Fernbedienung ausschalten, wenn sie 
eingeschaltet ist und ne Zeitlang nichts gemacht wurde.

Was gibt es da für Möglichkeiten?

Gruß
Björn

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
sleep-modes

Autor: Björn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sleep-Modes sind klar, hab ich auch schon programmiert. Die Frage war 
wohl etwas falsch gestellt.

An welche Bedingungen könnten sich die Sleep-Modes denn dann 
orientieren?

Autor: Karl heinz Buchegger (kbucheg)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An die Zeit seit dem letzten Tastendruck.

Ist doch simpel:
Timer aufsetzen und eine Uhr realisieren. Wenn eine bestimmte Zeit
vergangen ist -> Sleep.

Wo liegt das Problem?

Autor: Rahul Der trollige (rahul)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man könnte auch bei jedem Tastendruck den Watchdow-Timer zurücksetzen, 
dann zu Beginn des Programms nachgucken, wer den Reset ausgelöst hat und 
dann den Controller schlafen schicken. (Das Nachgucken kann man sich 
vermutlich auch sparen...)

Autor: Björn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das mit dem Tastendruck wäre nicht so das Problem. doch die Tasten haben 
eher ne Nebenfunktion.

Hauptaugenmerk wollte ich auf die Potis legen, also die AD-Wandler des 
µC.

Doch wie frag ich nen AD-Wandler in solch einem Fall ab?

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das geht genauso, man hält sich im Speicher die "alten" Werte der 
A/D-Wandler vor und vergleicht sie mit den neuen. Sind Unterschiede da, 
wird noch an den Potis rumgerührt, sind keine Unterschiede da, ist 
irgendwann die Abschaltbedingung erfüllt. Ich würde einen Zähler 
einführen, der z.B. im Sekunden-Takt aufwärts gezählt wird. In der 
A/D-Abfrage wird dieser Zähler immer dann auf 0 gesetzt, wenn ein 
A/D-Wert sich ändert. Ändert sich eine Zeit lang nichts, läuft der 
Zähler irgendwann über einen festzulegenden Schwellenwert.
Etwas tricky ist das Rauschen der A/D-Wandler, man müsste sich mal 
anschauen, wie groß das tatsächlich ist und evtl. eine Schwelle einbauen 
oder einen Filter realisieren.

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Frage ist doch, wie weckst Du den Controller wieder? Die 
verschiedenen Sleep-Modes lassen auch nur einige Weck-Quellen zu. Je 
tiefer der Controller schläft, also je mehr abgeschaltet ist, desto 
weniger Möglichkeiten bleiben. Bei den wirklich stromsparenden Modi 
bleibt nur noch das schalten an einer externen Interruptleitung übrig. 
Den Controller schlafen zu schicken, ist kein Problem. Wie oben erwähnt, 
einen Timer programmieren und eine Variable hochzählen. Wenn diese einen 
bestimmten Wert erreicht hat, den Controller pennen lassen. Jede Aktion 
von außen durch sich ändernde Werte oder Tastendrücke löschen die 
Variable.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.