Diferencia entre revisiones de «setTime()»

De ArduWiki
Saltar a: navegación, buscar
(Comentarios)
(Ejemplo 1)
Línea 31: Línea 31:
 
void setup(){
 
void setup(){
 
   Serial.begin(9600);
 
   Serial.begin(9600);
   setTime(10,0,0,14,7,2018);  //h,min,seg,dia,mes,año
+
  //setTime(1531562400);      //Unix Time Stamp
 +
   setTime(10,0,0,14,7,2018);  //Formato h,m,s,d,m,a
 
}
 
}
 
void loop(){
 
void loop(){

Revisión del 16:31 23 mar 2019

Descripcion

La función setTime() esta disponible luego de invocada la libreria TimeLib.h y nos permite decirle al Arduino en que día y hora estamos y que a partir de allí mantenga adecuadamente esa fecha hasta su próximo reseteo.

Sintaxsis

setTime(ss);     //Numero de segundos desde 1-ENE-1970
setTime(h,m,s,dia,mes,año);  //hora, minuto, segundo dia, mes, año.

Parámetros

ss
Segundos transcurridos desde 1-ENE-1970
h
Hora (0~23)
m
Minuto (0~59)
s
Segundo (0~59)
dia
Dia (1~31)
mes
Mes (1~12)
año
Año (1970~2069)

Comentarios

  • Si necesitas hacer conversiones entre fecha y Unix Time Stamp usa Epoch Converter
  • El formato Unix Time Stamp es muy util para hacer operaciones entre dos fechas.

Advertencias

Es indispensable incluir en el boceto #include <TimeLib.h> para que funcione o arrojara un error.

Ejemplo 1

En este ejemplo incluimos la fecha hora 2018-7-14 10:0:0 y mostramos su avance cada 1350 milisegundos.

#include <TimeLib.h>
void setup(){
   Serial.begin(9600);
   //setTime(1531562400);      //Unix Time Stamp
   setTime(10,0,0,14,7,2018);  //Formato h,m,s,d,m,a
}
void loop(){
   time_t t = now();
   Serial.print(hour(t));
   Serial.print(":");
   Serial.print(minute(t));
   Serial.print(":");
   Serial.println(second(t));
   delay(1350);
}

Vea también

Referencias