Outils pour utilisateurs

Outils du site


start:esp32:max7219:horloge

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
start:esp32:max7219:horloge [2026/08/19 17:26] – [MD parola] adminstart:esp32:max7219:horloge [2026/08/22 17:37] (Version actuelle) – [exemples Programmes Horloge] admin
Ligne 1: Ligne 1:
 ======== ESP32 Max7219 horloge ======== ======== ESP32 Max7219 horloge ========
 +
 +{{ :start:esp32:max7219:capture_d_ecran_du_2026-08-19_18-43-36.png?direct&600 |}}
 +==== exemples Programmes Horloge ====
 +<code c horloge002.ino>
 +//  makerguides.com: synchronizing ESP32 time with SNTP server
 +
 +#include "WiFi.h"
 +#include "esp_sntp.h"
 +
 +#include <MD_Parola.h>
 +#include <MD_MAX72xx.h>
 +#include <SPI.h>
 +
 +#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
 +
 +
 +#define MAX_DEVICES 4
 +#define CLK_PIN   18 
 +#define DATA_PIN  23 
 +#define CS_PIN    5 
 +MD_Parola Display = MD_Parola(HARDWARE_TYPE, DATA_PIN, CLK_PIN, CS_PIN, MAX_DEVICES);
 +
 +
 +const char* ssid = "---------";
 +const char* password = "-----------";
 +
 +// https://github.com/nayarsystems/posix_tz_db/blob/master/zones.csv
 +//const char *timezone = "AEST-10AEDT,M10.1.0,M4.1.0/3"; //Sydney Australie
 +const char *timezone = "CET-1CEST,M3.5.0,M10.5.0/3";//PARIS
 +
 +String Time, heure, minute;
 +String Formatted_date;
 +
 +void initWiFi() {
 +  WiFi.begin(ssid, password);
 +  while (WiFi.status() != WL_CONNECTED) {
 +    delay(1000);
 +    Serial.println("Attente connection wifi....");
 +  }
 +}
 +
 +void initSNTP() {
 +  sntp_set_sync_interval(60 * 60 * 1000UL);  // 1 h
 +  esp_sntp_setoperatingmode(ESP_SNTP_OPMODE_POLL);
 +  esp_sntp_setservername(0, "pool.ntp.org");  
 +  esp_sntp_init();
 +  setenv("TZ", timezone, 1);
 +  tzset();
 +}
 +
 +void wait4SNTP() {
 +  
 +  Serial.println("String Time, hour, minute;String Formatted_date;synchronizing...");
 +  while (sntp_get_sync_status() != SNTP_SYNC_STATUS_COMPLETED) {
 +    delay(100);
 +  }
 +  
 +}
 +
 +
 +
 +void obtainTime() {
 +  // https://cplusplus.com/reference/ctime/tm/
 +  char buff1[4];
 +  char buff2[4];
 +  struct tm t;
 +  getLocalTime(&t);  
 +  sprintf(buff1, "%02d", t.tm_hour);
 +  sprintf(buff2,"%02d" , t.tm_min);
 +  Serial.println("Heures");
 +  Serial.println(buff1);
 +   Serial.println("Minutes");
 +  Serial.println(buff2);
 +  heure = buff1;
 +  minute = buff2;
 +  Time = heure +":"+ minute;
 +  Display. setTextAlignment(PA_CENTER);
 +  Display.print(Time);
 +}
 +
 +void setup() 
 +{
 +  Serial.begin(115200);
 +  initWiFi();
 +  initSNTP();
 +  wait4SNTP();
 +
 +  Display.begin();
 +  Display.setIntensity(0);
 +  Display.displayClear();
 +}
 +
 +void loop()
 + {
 +  obtainTime();
 +  delay(1000);
 +}
 +
 +</code>
 +
  
  
Ligne 11: Ligne 111:
  
 #define HARDWARE_TYPE MD_MAX72XX::FC16_HW #define HARDWARE_TYPE MD_MAX72XX::FC16_HW
-//#define HARDWARE_TYPE MD_MAX72XX::GENERIC_H+
  
 #define MAX_DEVICES 4 #define MAX_DEVICES 4
Ligne 36: Ligne 136:
   while (WiFi.status() != WL_CONNECTED) {   while (WiFi.status() != WL_CONNECTED) {
     delay(500);     delay(500);
-    Serial.print("Connecting.");+    Serial.print("Connection.");
   }   }
   Serial.println("");   Serial.println("");
-  Serial.println("WiFi connected.");+  Serial.println("WiFi connecter.");
  
   timeClient.begin();   timeClient.begin();
-  timeClient.setTimeOffset(7200);// 7200 = 2*60*60 pour le decalage gmt de 2H  en Ete ....+  timeClient.setTimeOffset(7200);// 7200 = 2*60*60 pour le decalage gmt de +2H  en Ete ....
      
   Display.begin();   Display.begin();
Ligne 82: Ligne 182:
 </code>    </code>   
  
-===== Librairies à installer =====+===== Librairies à installer dans l'IDE arduino =====
  
 === NTP client === === NTP client ===
Ligne 89: Ligne 189:
 === MD parola === === MD parola ===
  
-"MD_Parola" à installer dans l'IDE arduino +"MD_Parola" à installer dans l'IDE arduino : Parola est un écran de texte de défilement modulaire utilisant les contrôleurs d'affichage à matrice LED MAX7219 ou MAX7221 à l'aide d'Arduino
  
 {{ :start:esp32:max7219:md_parola-main.zip |}} {{ :start:esp32:max7219:md_parola-main.zip |}}
 +
 +=== Max7219 ===
 +
 +"MAX7219" à installer dans l'IDE arduino :[[https://github.com/JemRF/max7219|Max7219 sur Github EN]]
 +
 +{{ :start:esp32:max7219:max7219-1.0.0.zip |}}
 +
 +
 +===== Fichier STL pour le boitier =====
 +
 +{{ :start:esp32:max7219:case_max7219_v2_-_3201077.zip |}}
 +
 +{{ :start:esp32:max7219:low-cost-youtube-subscriber-display-sits-on-a-monitor-no-soldering-required20190523-29316-rqmtr0.zip |}}
 +
 +{{ :start:esp32:max7219:led-matrix-bar-weather-station-v120230509-86048-k1fv6d.zip |}}
  
                                                                                                                                                  
/home/chanteri/www/fablab37110/data/attic/start/esp32/max7219/horloge.1787153205.txt.gz · Dernière modification : de admin