Schaltuhr bauen

Gast #2495471
Lesenswert?

Hallo Leute!

Angenommen, man möchte mit einem AVR-Controller (beispielsweise ATmega8 
oder ATmega16) eine Schaltuhr bauen, welche pro Tag (!) nur etwa 1 
Minute den angeschlossenen Verbraucher eingeschaltet und anschließend 
wieder ausgeschaltet...wie bewerkstelligt man sowas mit einem 
Mikrocontroller?

Die Frage ist einfach, wie man eine (für den Controller) solche 
"Ewigkeit" für den Controller realisiert?

Die erste Überlegung ging natürlich daran, in einer Variablen die 
Overflows eines Timers zu zählen ;-)
Dass durch diese Art aber bereits schon das "warten" von wenigen 
Sekunden vom Compiler wegoptimiert wird, weiß ich auch.


Gruß
#2495474
Lesenswert?

atMehl schrieb:

> Minute den angeschlossenen Verbraucher eingeschaltet und anschließend
> wieder ausgeschaltet...wie bewerkstelligt man sowas mit einem
> Mikrocontroller?

Genauso wie man das auch mit einer Uhr macht:
Sekunden zählen.
Nach 60 Sekunden ist 1 Minute um.
Nach 60 Minuten 1 Stunde.
Und nach 24 Stunden ist ein Tag um.

> Die erste Überlegung ging natürlich daran, in einer Variablen die
> Overflows eines Timers zu zählen ;-)
> Dass durch diese Art aber bereits schon das "warten" von wenigen
> Sekunden vom Compiler wegoptimiert wird, weiß ich auch.

Warum soll das wegoptimiert werden?
Der Compiler kann ja nicht einfach eigenmächtig Berechnungen, die 
benötigt werden rausschmeissen.
#2495482
Lesenswert?

Muss jetzt schon wieder mal vorgerechnet werden, wieviele Jahrmillionen 
man braucht bis eine uint64 Variable überläuft wenn man sie jede Sekunde 
inkrementiert? Das hatten wir doch schonmal.

Nein es wird nichts wegoptimiert, nein du wirst es nicht mehr erleben, 
nein die Sonne wohl auch nicht.

>Wobei dann wahrscheinlich der Fehler größer wird, oder?
Und WARUM zur Hölle sollte das so sein? Die Dinger nennt man 
"Uhrenquarz" denk mal drüber nach...

gruß cyblord
Gast #2495504
Lesenswert?

> wie bewerkstelligt man sowas mit einem Mikrocontroller?

In dem man ihn programmiert.

Wenn man damit Schwierigkeiten hat, das erst erlernen muß und noch nicht 
mal die Grundkonzepte versteht, und die Zeiten nicht ändern muß, dann 
kann man das auch mit einem fertigem ICs aufbauen:

Der CD4536 erlaubt es, den Takt mit einer 
Widerstand/Kondensator-Kombination vorzugeben und die Impulszeitdauer 
mit einem Kondensator zu bestimmen, also reicht ein einzelner IC, so 
lange es nicht quatzstabil sein muß denn 194,18 Hz Quartze sind schwer 
beschaffbar :-) eher noch synchronisiert man den Chip an 50Hz 
Netzfrequenz für 23:18:06

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren