SysTimeRtcSetTimezone

Descripción de la función

Esta función se utiliza para establecer los valores de la zona horaria especificada.

Los valores de la zona horaria se especifican mediante la estructura TimezoneInformation y se almacenan en el sistema de archivos del controlador.

Los valores de la zona horaria se tienen en cuenta para la conversión de la marca de hora UTC a la marca de hora local y viceversa.

Las siguientes funciones de conversión tienen en cuenta los valores de la zona horaria:

  • SysTimeRtcConvertLocalToUtc

  • SysTimeRtcConvertUtcToLocal

  • SysTimeRtcConvertLocalToHighRes

  • SysTimeRtcConvertHighResToLocal

Además, los valores de la zona horaria se emplean cuando se utilizan los parámetros RealTimeClock RealTimeClock y SetRealTimeClock, que se incluyen en los controladores LMC PacDrive.

El parámetro RealTimeClock indica la hora local, que se calcula a partir del RTC del controlador y de la información de zona horaria.

El parámetro SetRealTimeClock se utiliza para establecer el RTC del controlador. Para ello, el valor especificado se convierte al valor UTC a partir de los valores de zona horaria antes de establecerse el RTC.

NOTA: La función SysTimeRtcSetTimezone puede tardar varios cientos de milisegundos en ejecutarse. El aumento del tiempo de ejecución es debido a que se guarda el parámetro TimezoneInformation en un archivo de configuración del controlador.

Para ayudar a evitar que otras tareas queden bloqueadas al ejecutar esta función, implemente una de las siguientes medidas:

  • Utilice el mecanismo asíncrono que incluye la biblioteca AsyncManager para delegar la llamada de función a una tarea externa.

  • Implemente la llamada de la función en una tarea aparte con la configuración adecuada.

Representación gráfica

Descripción de variables de E/S

Entrada/salida

Tipo

Descripción

pTimezone

TimezoneInformation

Valores de la zona horaria que se han de establecer para el controlador.

Salida

Tipo

Descripción

SysTimeRtcSetTimezone

UDINT

Código de error del sistema de tiempo de ejecución (consulte CmpErrors.library):

0 = no se ha detectado ningún error