Etape 1: Utilisez l’exemple : LDateTime
L’exemple de code « LDateTime » inclus dans l’IDE un Linkit est très rudimentaire. En fait, je vais inclure ci-dessous :
#include datetimeInfo t; unsigned int rtc; void setup() {} void loop() { LDateTime.getTime(&t); LDateTime.getRtc(&rtc); delay(1000); }
Let ' s go là-dessus un peu plus en détail et de construire au large de cet exemple.
Le datetimeInfo est une structure, telle que définie ci-dessous :
typedef struct<br>{ int year;//year int mon;//month,begin from 1 int day;//day,begin from 1 int hour;//hour,24-hour int min;//minute int sec;//second }datetimeInfo;
Comme vous pouvez le voir sur cette structure, il contiendra les composants de date, que vous devrez formuler un timestamp.
Ce struct datetime de timestamp peut être saisi par l’intermédiaire de la fonction getTime().
Si au contraire vous voulez obtenir un style unix epoch timestamp (un entier, la valeur étant le nombre de secondes écoulées depuis le 1er janvier 1970), vous utiliserez la fonction getRtc().
GetTime() tant getRtc() fonctions prennent un pointeur, qui aura une valeur remplie par la fonction.
Nous allons modifier l’exemple, afin que nous puissions voir comment extraire les valeurs de chaque résultat.
Tout d’abord, lorsque vous appelez LDateTime.getTime (& t) ; Il y a un résultat entier retourné par la méthode. S’il est inférieur à 0, puis obtenir le temps n’a pas, et vous ne devriez pas envisager d’utiliser le résultat.
Le résultat stocké dans l’adresse mémoire du point sera du type struct datetimeInfo. Ainsi, nous pouvons accéder chaque composant de date par son nom. Voici une méthode simple, que nous pouvons ajouter à l’exemple pour imprimer une date lisible humaine :
String dateString(datetimeInfo dti) {<br> String dateStr = "m/d/yyyy = "; dateStr += dti.mon; dateStr += "/"; dateStr += dti.day; dateStr += "/"; dateStr += dti.year; return dateStr; }
Formidable ! Maintenant que nous avons un moyen d’obtenir la date dans un format mieux, permet de passer à régler la date et l’heure.
Nous allons utiliser la même structure pour configurer la valeur datetime que nous voulons créer.
datetimeInfo now; now.year = 2015; now.mon = 12; now.day = 21;
En outre, vous pouvez configurer vos heures, les minutes et les secondes avant de continuer.
Ensuite, nous appelons la fonction LDateTime.setTime(), qui traitent chacun des composants dans notre structure et définir l’horloge système sur le linkit un.
LDateTime.setTime(&now);
J’ai inclus le fichier d’exemple que j’ai modifié, LDateTimeTest.ino.