Diferencia entre revisiones de «TimeSpan()»
De ArduWiki
(→Sintaxis) |
(→Ejemplo 1) |
||
(No se muestran 2 ediciones intermedias del mismo usuario) | |||
Línea 37: | Línea 37: | ||
== Advertencias == | == Advertencias == | ||
− | * Tenga en cuenta que el | + | * Tenga en cuenta que el método .day() se usa con [[DateTime]] mientras que aquí en método es '''days()'''. |
+ | * Debe trabajar con el tipo de dato [[DateTime]] | ||
== Ejemplo 1 == | == Ejemplo 1 == | ||
− | |||
− | |||
<syntaxhighlight lang="c++"> | <syntaxhighlight lang="c++"> | ||
+ | #include <RTClib.h> | ||
DateTime t1 (2018,7,14,8,0,0); //2018-7-14 8:00:00 | DateTime t1 (2018,7,14,8,0,0); //2018-7-14 8:00:00 | ||
DateTime t2 (2018,7,14,18,0,0); //2018-7-14 18:00:00 | DateTime t2 (2018,7,14,18,0,0); //2018-7-14 18:00:00 | ||
//Calculos 1 | //Calculos 1 | ||
TimeSpan t3 = t2 - t1; | TimeSpan t3 = t2 - t1; | ||
+ | //Mostrar | ||
+ | Serial.print(t3.days()); //0 | ||
+ | Serial.print(t3.hours()); //10 | ||
+ | Serial.print(t3.minutes()); //0 | ||
+ | Serial.print(t3.seconds()); //0 | ||
//Calculos 2 | //Calculos 2 | ||
DateTime t4 = t1 + TimeSpan(0,1,0,0); //Añadir una hora | DateTime t4 = t1 + TimeSpan(0,1,0,0); //Añadir una hora | ||
Línea 52: | Línea 57: | ||
DateTime t6 = t1 - TimeSpan(7,0,0,0); //Restar una semana | DateTime t6 = t1 - TimeSpan(7,0,0,0); //Restar una semana | ||
//Mostrar | //Mostrar | ||
− | Serial.print( | + | Serial.print(t4.day()); //14 |
− | Serial.print( | + | Serial.print(t4.hour()); //9 |
− | Serial.print( | + | Serial.print(t4.minute()); //0 |
− | Serial.print( | + | Serial.print(t4.second()); //0 |
</syntaxhighlight> | </syntaxhighlight> | ||
Revisión actual del 16:43 23 ene 2020
Contenido
Descripción
Funcion util para representar un intervalo de tiempo con precision de segundos.
Sintaxis
#include <RTClib.h> TimeSpan(dd,hh,mm,ss); TimeSpan(segundos);
Parámetros
- dd
- dias tipo int (0 a 365)
- hh
- horas tipo byte (0 a 23)
- mm
- minutos tipo byte (0 a 59)
- ss
- segundos tipo byte (0 a 59)
- segudos
- numero de segundos totales (int) (0 a 32...)
Retorna
Métodos
Metodo | Descripción |
---|---|
.days() | Dias |
.hours() | Horas |
.minutes() | Minutos |
.seconds() | Segundos |
.totalsecons() | Segundos totales |
Comentarios
Advertencias
- Tenga en cuenta que el método .day() se usa con DateTime mientras que aquí en método es days().
- Debe trabajar con el tipo de dato DateTime
Ejemplo 1
#include <RTClib.h>
DateTime t1 (2018,7,14,8,0,0); //2018-7-14 8:00:00
DateTime t2 (2018,7,14,18,0,0); //2018-7-14 18:00:00
//Calculos 1
TimeSpan t3 = t2 - t1;
//Mostrar
Serial.print(t3.days()); //0
Serial.print(t3.hours()); //10
Serial.print(t3.minutes()); //0
Serial.print(t3.seconds()); //0
//Calculos 2
DateTime t4 = t1 + TimeSpan(0,1,0,0); //Añadir una hora
DateTime t5 = t1 + TimeSpan(1,0,0,0); //Añadir un dia
DateTime t6 = t1 - TimeSpan(7,0,0,0); //Restar una semana
//Mostrar
Serial.print(t4.day()); //14
Serial.print(t4.hour()); //9
Serial.print(t4.minute()); //0
Serial.print(t4.second()); //0
Nota: No confundas el metodo day() de DateTime con el metodo .days() de TimeSpan.
Vea también
Referencias
- Clase TimeSpan() - Adafruit
- RTClib - Adafruit
- Que es RTC - Adafruit