SysTimeRtcSetTimezone

Beschreibung der Funktion

Diese Funktion wird verwendet, um die spezifischen Zeitzoneneinstellungen einzurichten.

Die Zeitzoneneinstellungen werden mithilfe der Struktur TimezoneInformation festgelegt und im Dateisystem der Steuerung gespeichert.

Die Zeitzoneneinstellungen werden bei der Konvertierung des UTC-Zeitstempels in den lokalen Zeitstempel und umgekehrt berücksichtigt.

Die Zeitzoneneinstellungen werden von den folgenden Konvertierungsfunktionen berücksichtigt:

  • SysTimeRtcConvertLocalToUtc

  • SysTimeRtcConvertUtcToLocal

  • SysTimeRtcConvertLocalToHighRes

  • SysTimeRtcConvertHighResToLocal

Darüber hinaus werden die Zeitzoneneinstellungen verwendet, wenn die Parameter RealTimeClock RealTimeClock und SetRealTimeClock verwendet werden, die auf den LMC PacDrive-Steuerungen bereitgestellt werden.

Der Parameter RealTimeClock stellt die Ortszeit bereit, die von der RTC der Steuerung und der Zeitzoneninformationen berechnet wird.

Der Parameter SetRealTimeClock wird verwendet, um die RTC der Steuerung einzustellen, wobei der angegebene UTC-Wert auf der Grundlage der Zeitzoneneinstellungen vor der RTC eingestellt wird.

HINWEIS: Die Ausführung der Funktion SysTimeRtcSetTimezone kann mehrere Hundert Millisekunden dauern. Die erhöhte Ausführungszeit wird durch das Speichern des Parameters TimezoneInformation in einer Konfigurationsdatei in der Steuerung verursacht.

Damit andere Tasks bei der Ausführung dieser Funktion nicht blockiert werden, führen Sie eine der folgenden Maßnahmen aus:

  • Verwenden Sie den asynchronen Mechanismus, der von der AsyncManager-Bibliothek bereitgestellt wird, um den Funktionsaufruf an eine externe Task auszulagern.

  • Implementieren Sie den Funktionsaufruf in einer separaten Task mit geeigneter Taskkonfiguration.

Grafische Darstellung

Beschreibung der E/A-Variablen

Ein-/Ausgang

Typ

Beschreibung

pTimezone

TimezoneInformation

Die Zeitzoneneinstellungen, die für die Steuerung eingestellt werden müssen.

Ausgang

Typ

Beschreibung

SysTimeRtcSetTimezone

UDINT

Laufzeitsystem-Fehlercode (siehe CmpErrors.library):

0 = Kein Fehler festgestellt