J'aimerais créer une télécommande à partir d'une carte Arduino Uno et d'un écran Nextion mais n'ayant pas d'expérience en programmation, je me permets de solliciter votre aide.
Mes composants sont donc Arduino Uno + Infrared Transmitter Module Velleman + TV Samsung + Écran Nextion. À ce stade, j'ai quand même réussi à récupérer les codes de ma télécommande et à concevoir le programme pour un premier bouton (TF1) avec cependant des erreurs que je ne parviens pas à résoudre...
[code]
/*
Ricardo Mena C
ricardo@crcibernetica.com
http://crcibernetica.com
This example code is in public domain
*/
#include<IRremote.h>
#include <SoftwareSerial.h>
#include <Nextion.h>
IRsend irsend;
SoftwareSerial nextion (0, 1) ;// Nextion TX to pin 0 and RX to pin 1 of Arduino
const int maled = 3;// on met une led sur la broche 3
Nextion myNextion(nextion, 9600); //create a Nextion object named myNextion using the nextion serial port @ 9600bps
boolean button1State;
void setup() {
Serial.begin(9600);
myNextion.init(); // send the initialization commands for Page 0
pinMode(3,OUTPUT);
}
void loop() {
String message = myNextion.listen(); //check for message
if (message == "65 00 01 01 FF FF FF")
myNextion.buttonToggle(button1State, 0,1,"b0");
irsend.sendSAMSUNG (0xE0E020DF,32);
delay (40);
}
Excusez ma curiosité, mais quelles sont les erreurs?
Quel est le port serie hardware de l'arduino? je parie que vous êtes sur UNO? -mais alors, pourquoi l'utilsez vous comme port serie software-
Vous avez aussi une LED qui vous permet de débugger (la couper en entrant dans loop; l'activer si la condition d'égalité est satisfaite.... et faire temporiser beaucoup, dans ce cas, pour voir...)
Tu mélanges software Serial et le Serial matériel, ça ne peut pas marcher.
Si en plus tu essaie de téléverser sur ta uno avec ton écran branché sur 0 et 1, ça va poser problème.
Il est possible d'utiliser le port Serie mais il faut veiller a debrancher le materiel avant chaque téléversement.
Si trop contraignant, alors tu peux utiliser Software Serial mais sur des broches différentes.
Pour finir, j’évite d'utiliser la librairie Nextion, je la trouve lourde et très consommatrice de mémoire et capacité de calcul, sur une uno tu sera vite limité. Tu peux associer a chaque bouton (côté écran) un petit bout de code largement plus simple a decoder depuis ta carte UNO
Je vous remercie beaucoup pour cet éclaircissement.
J'ai rectifié le programme (enfin, j'espère !) et, si possible, j'aimerais aussi un peu plus d'explications sur le petit Code Arduino dans Nextion ou mieux avoir un exemple...
Déjà, où recevez vous message ? (ça devrait être, sous une forme que vous saurez deviner mieux que moi, dans loop)
ensuite, vous devriez l'imprimer dans loop
serai un peu plus explicite dans la recherche d'éventuelles pannes (les impressions de debigages étant à retirer une fois satisfait, bien sûr)
======
edited
Votre premiére versionpost 1 avait bien un message déclaré tout en haut de loop (et calculé); pour comprendre ce qui se passe, il faudrait l'afficher (le temps de dépanner) ce que j'ai proposé +haut