Je cherche à afficher l'heure et les minutes sur un écran Nextion.
J'utilise la bibliothèque time.h
Jusqu'ici j'utilisais un écran TFT (commande :tft.println(&timeinfo, "%H:%M") et j'essaye d'adapter le code pour le Nextion mais ça ne m'affiche que "HH:MM au lieu de m'afficher l'heure et les minutes.
la classe Print sait traiter une struct tm et un format
et c'est donc pour cela que le LCD sait faire l'affichage.
la bibliothèque Nextion est une vraie daube et ne sait pas faire ce genre de chose donc quand vous faites
NEXTION_SendString("t5", (&timeinfo, "%H:%M"));
ça ne veut absolument rien dire (c'est l'opérateur virgule, le premier paramètre est évalué et ignoré et le second paramètre est passé à la fonction, c'est pour cela que vous voyez %H:%M
il faut que vous construisiez vous même dans un petit buffer la chaîne à afficher avec la fonction strftime() comme le fait la classe Print, et que vous passiez cette chaîne en paramètre à NEXTION_SendString()
Bonjour à tous les deux et merci pour les réponses.
Je vais choisir la solution de Kamill qui me paraît beaucoup plus abordable pour mon niveau.
Fitness04
Ps: j'ai choisi le Nextion principalement pour sa connection avec 4 fils, ce qui me semblait plus facile pour le raccorder à un PCB. Mais je déchante un peu car la fonction tactile ne fonctionne plus et ces écrans sont chers !
vous pouvez connecter avec 4 fils (dont 2 pour l'alim) votre LCD en utilisant l'I2C
oui la solution de @kamill est simple puisqu'on lit directement les attributs. la fonction strftime() est plus complète (par exemple on peut afficher les jours mais en format anglais). Ici ce n'est pas tellement la peine de l'utiliser