dans mon code non, j'affiche les messages reçu par le nextion (65 3 2 etc) seulement
je ne sais pas d'ou ils viennent
et cela ne le fait pas tout le temps
après recherche, je pense a des caractères non reconnu qui doivent venir du nextion.
est possible que l'esp32 mélange deux liaison série (2 matériel) ?
est possible que l'esp32 mélange deux liaison série (2 matériel) ?
Oui.... si le code lui demande de le faire
Un terminal capable d'afficher les données en hexadécimal permettrait d'en savoir plus sur ces données.
Coolterm par exemple sous Linux, Mac et Windows
je saurais pas faire la différence entre les valeurs hexa des flèches et de ce que je doit recevoir du coup compliqué
Cherches des infos sur le code ASCII
en gros : les valeurs inférieures à 0x20 ou supérieures à 0x7F ne donnent pas de lettre ou de chiffre affichable.
Içi le terminal sur le PC recoit certaines données en dehors de la plage [0x20, 0x7F]
lesquelles ? ça permetrait peut être de remonter plus facilement à la source.....
les FF FF FF correspond bien a une info du nextion (c'est ce qui dit le message est terminé)
j'explorer leur doc pour savoir a quoi correspond le reste
EDIT:
j'ai 4 pages sur le nextion, j'ai le problème sur la 2, 3,4 mais pas la 1ere
je regarde de plus prés
verdict après décodage du code hexa, c'est cette partie qui fait chier
if (temp1_old == temp1) { //a revoir, con de voir si temp1_old = temp1 je déclare pas le temp1_old ??
myNextion.setComponentText("temp1", String(temp1));
}
il ne reconnait pas une variable
j'ai gratter un peu, ma comparaison est con car je me sert pas du temp1_old (une prévision pas faite)
du coup en changeant == par != il exécute pas le setcomponenttext et n'affiche pas des flèches dans le moniteur série
par contre je continue pour savoir pourquoi il prends pas ma variable ^^
de ce que je comprends, tu utilises la librairie Nextion_Master , je rencontre un problème similaire, visiblement la variable temp1 n'est pas un objet String et donc ça marche pas et en plus le nextion te renvoie un code erreur en hexa ce qui fait que l'affichage sur ton moniteur est exotique, pour la reception du code 65 01 03 FF FF FF c'est tout simplement l'activation de "send componant ID" (case à cocher) dans Nextion Editor et cela corespond au bouton N°3 dans la page 01...
essaie plutôt une commande directe dans ton code du style :
myNextion.setComponentText("t0","COMMENT VAS TU ?");
et regarde bien sur si cela s'affiche dans l'objet t0.txt de la page active du nextion, si ça marche ce n'est pas un problème de TRX série entre ton Arduino et le nextion,
ton pb c'est que le pseudo string que tu envoies n'est pas bon, il faut peut-être creuser dans la bibliothèque pour voir le pb, ou bien t'assurer que tu envoies bien un objet String
pour régler les pb de vitesse il est conseillé de mettre Serial1 ( ou serial que tu utilises) à 9600Bd et dans ton fichier HMI sur la première page dans l'onglet preinitialize event l'instruction suivante: baud=9600 (sans S a baud important !)
voila à partir de la tu devrais peut-être trouver une solution, moi j'ai un autre probleme c'est comment former un objet String a partir d'un tableau de char que je parcours
j'envoie bien ce qu'il faut (mon text temp1 ecrit bien ce que je veut)
seulement quand je suis sur une page ou mon text temp1 n'est pas présent
la il m'affiche l'erreur
du coup comment faire pour bouger une variable d'une autre page ?