Test de RTC_IUT

Dependencies:   RTC_IUT

main.cpp

Committer:
gr91
Date:
2020-05-29
Revision:
0:8a5436c20b46
Child:
1:92f65ad2bb0a

File content as of revision 0:8a5436c20b46:

#include "mbed.h"

Serial pc(SERIAL_TX, SERIAL_RX,9600);
struct tm date_heure;  // variable structurée contenant heure et date
struct tm *dh ;  
time_t tt,sec_1970;   // le type time_t est un entier 32 bits signé
int main() {
    
    
    //la date est codée par le nombre de secondes depeuis le 1 janvier 1970 à 0h
    // remplissage de la structure date_heure  ici : 28 mai 2020 à 15h 30mn 00s
    date_heure.tm_sec=0;     // secondes [0-59]
    date_heure.tm_min=30;    // minutes [0-59]
    date_heure.tm_hour=15;   // heures [0-23]
    date_heure.tm_mday=28;   // jour du mois [0-31]
    date_heure.tm_mon=4;     // mois [0-11] !! 0:janvier ... 11:décembre !!
    date_heure.tm_year=120;  // année après 1900 : 120 pour 2020
    //
    tt=mktime(&date_heure);   // cette fonction calcule le nombre de secondes
                      // depuis le 1 janvier 1970 à 0h
    pc.printf("sec %d \r\n",tt);  
    set_time(tt);  // fonction de mise à l'heure de l'horloge interne du microcontrolleur

    while (true) {
        sec_1970 = time(NULL);  // lecture de l'horloge interne du microcontrolleur
        pc.printf("Temps en secondes depuis le 1 janvier 1970 0h : %d\n", sec_1970);
        dh=localtime(&sec_1970);
        pc.printf("%02d/%02d/%02d - %02d:%02d:%02d\r\n",dh->tm_mday,dh->tm_mon+1,dh->tm_year-100,dh->tm_hour,dh->tm_min,dh->tm_sec);
        
      /*  printf("Time as a basic string = %s", ctime(&seconds));

        char buffer[32];
        strftime(buffer, 32, "%I:%M %p\n", localtime(&seconds));
        printf("Time as a custom formatted string = %s", buffer);
        */
        wait(1);
    }
}