mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Sekunden in das Datum umrechnen.


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute, gibt es schon bekannten Methoden, um aus einer angegebenen 
Sekundenanzahl, ein Datum zu bilden, ähnlich wie bei den Timestamps 
unter Linux?

Ich muss beim Mikrocontroller sowas implementieren. Der Benutzer soll 
eine Angabe in Sekunden machen können und ich diese für die Real Time 
Clock umrechnen.
z.B. der Benutzer gibt an: 180020
Das muss ich in 2T;2h;20s umrechnen.

Autor: Uwe ... (uwegw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit nem bisschen div und mod hättest du das schneller gelöst als du 
diesen Betrag verfasst hast...

Autor: Michael Götz (michel)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In PseudoCode müsste das ungefähr so aussehen:

s_Anzahl mod 60 = Sekunde
s_Anzahl / 60   = s_Anzahl
s_Anzahl mod 60 = Minute
s_Anzahl / 60   = s_Anzahl
s_Anzahl mod 24 = Stunden
s_Anzahl / 24   = Tage

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Uwe ... (uwegw)

>Mit nem bisschen div und mod hättest du das schneller gelöst als du
>diesen Betrag verfasst hast...

Klar, so einen Kalender programmiert man ja auch mal fix in drei 
Minuten. Es wurde anch dem DATUM gefagt.
Aber wer gibt schon die Sekunden ein, um dann ein Datum angezeigt zu 
bekommen? Ist es nicht eher umgkehrt?

MfG
Falk

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Es wurde anch dem DATUM gefagt

2T;2h;20s ist wohl eher kein Datum, mehr eine Zeitangabe, oder?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Grundschule, 3. Klasse oder so:

Du hast 180020 Äpfel und einen ganzen Haufen Kisten.
Jede Kiste fasst 60 Äpfel. Wenn nur volle Kisten zählen,
wieviele Kisten können dann gefüllt werden und wieviele
Äpfel bleiben übrig?

180020 / 60            = 3000   volle Kisten
180020 - ( 3000 * 60 ) = 20     Äpfel bleiben übrig

Wenn auf eine Palette jeweils 60 Kisten passen, wieviele
Paletten können dann mit den vollen Kisten gefüllt werden
und wieviele Kisten bleiben übrig.

3000 / 60              = 50     volle Paletten
3000 - ( 50 * 60 )     = 0      Kisten bleiben übrig

In einen LKW passen jeweils 24 volle Paletten. Wieviele LKW
können mit den Paletten vollständig gefüllt werden und wieviele
Paletten werden nicht in einen LKW verpackt?

50 / 24                = 2      LKW werden vollständig gefüllt
50 - ( 2 * 24 )        = 2      Paletten passen nicht auf den LKW

Zusammengefasst:
Mit 180020 Äpfel werden
   2 LKW vollständig gefüllt (jeder mit 24 Paletten)
   2 Paletten stehen rum (jede mit 60 vollen Kisten)
   0 Kisten konnten in keine Palette eingeordnet werden
   20 Äpfel konnten in keine Kiste gepackt werden

Diskutiere das Ergebnis mit deinem Banknachbarn und
besprich die Relevanz zum Rechnen bei einer Tick-Tack.

:-)

Autor: Patrick (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ausserdem kann man kaum aus einer Sekundenangabe das aktuelle Datum 
bestimmen.

Für den 01.01.2007 0:00 Uhr müsste man 63261216000 Sekunden eingeben. 
Schaltjahre nicht mit gerechnet und Rechnungsfehler möge man mir 
verzeihen. Und das kann ja wohl kaum die Anforderung sein.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Karl heinz Buchegger (kbuchegg): Danke für die Info, wird mir 
sicherlich weiterhelfen. Es ist schwer zu erklären, was genau ich 
brauche. Aber im großen und ganzen geht es darum, dass die RTC mit einem 
Datum initialisiert wird, welches ich danach ständig mit einem ATmega 
abfragen werde. Der Benutzer kann z.B. angeben nach wie vielen Sekunden 
ein Relais geschaltet werden soll. Erreichen die Register der RTC das 
gewünschte Datum, so schalte ich was.

Werde mir dein Vorschlag anschauen, danke jedenfalls :)

@  Uwe ... (uwegw): Bevor ich losprogrammiere, informiere ich mich 
gerne, ich hoffe du verstehst es als evtl. Ingenieur. Das ist sicherlich 
nicht verkehrt.


Werde mich noch mal melden, wenn ich mich um die Sache Gedanken gemacht 
habe...

Autor: Philipp Karbach (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich versteh nicht wie das gehen soll und was es bringt, warum muss ne 
schaltuhr das genaue datum wissen?!

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Philipp Karbach wrote:
> ich versteh nicht wie das gehen soll und was es bringt, warum muss ne
> schaltuhr das genaue datum wissen?!

Weihnachtsbeleuchtung, die jedes Jahr exakt am 24. Dezember
um 17:30 einschalten soll.

Duck und wech :-)

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> warum muss ne schaltuhr das genaue datum wissen?

Karl hat es schon richtig beantwortet, mit einem Unterschied, dass der 
Kunde jeden Tag zu jeder Zeit sein eigenes Weihnachtsfest feiern kann :)

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.