Forum: Mikrocontroller und Digitale Elektronik Zeit ausrechnen


von Michael (Gast)


Lesenswert?

Hallo,

ich möchte von einer variablen utc_time die die Uhrzeit z.B. 160520
enthält ausrechnen wiviel Sekunden das sind.
Ich habe folgendes gemacht, aber irgendwo mach ich was falsch:

utc_hour=  ((u32)utc_time)/10000;
utc_second=((u32)utc_time) %100;
utc_minute=(((u32)utc_time)%10000-utc_second)/100;

utc_seconds=(u32)(utc_hour*3600)+(utc_minute*60)+utc_second;

von Karl heinz B. (kbucheg)


Lesenswert?

Wie ist utc_hour, utc_minute, utc_second definiert (welcher
Datentyp).

Wenn es int sind:
  Diese Berechnung

  utc_hour*3600

  wird im Zahlenraum int durchgeführt. Auf einem AVR hat ein
  int 16 Bit, geht also maximal nur bis 32767.
  16*3600 ergibt aber schon 57600, also wesentlich mehr als die
  maximalen 32767.

  ((u32)utc_hour*3600)

von Michael (Gast)


Lesenswert?

Besten Dank

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.