Liaison serie basique

Bonjour,

j’aimerais faire communiquer deux arduino (uno et nano) simplement par leur port série.
La base de mon futur projet est très simple, un contact se ferme sur la carte émettrice, celle-ci transmet une “commande” en serie et la carte réceptrice allume une led a la réception de cette commande.

voici les deux codes pour le TX et le RX.
Évidement si je suis là c’est que cela ne fonctionne pas.
Il y a quelque chose qui m’échappe dans la communication sérié, pouvez-vous m’aider?

Merci

TX
//Serial TX UNO

#include <SoftwareSerial.h>
const int led = 12;
SoftwareSerial mySerial(0, 1); // RX, TX

void setup()
{
mySerial.begin(9600);
pinMode(led , OUTPUT);
}
void loop()
{
mySerial.write(“LED ON”);

digitalWrite(led, HIGH);

delay(1000);

mySerial.write(“LED OFF”);

digitalWrite(led, LOW);

delay(1000);
}

RX

// Serial RX nano

#include <SoftwareSerial.h>
const int led = 11;
String lEcture ="";
SoftwareSerial mySerial(2, 1); // RX, TX

void setup() {
pinMode(led , OUTPUT);

mySerial.begin(9600);

digitalWrite(led ,HIGH);
delay (500);
digitalWrite(led ,LOW);
} // ******** setup() Fin

void loop() {

if(mySerial.available()){
lEcture = mySerial.read();
}

if (lEcture ==“LED ON” )
{digitalWrite(led ,HIGH);}

if (lEcture ==“LED OFF”)
{digitalWrite(led ,LOW);}

}

La bibliothèque softwareserial sert à créer une liaison série supplémentaire à la liaison série (ou les) déjà existante sur l'arduino. En général, la liaison série existante utilise les broches 0 et 1 : si tu veux les garder pour discuter avec un PC, tu utilises softwareserial pour en créer une autre. Du coup, tu n'utilises as les broches 0 et 1 pour cette nouvelle liaison série, c'est logique.

C'est ce que tu fais dans tes 2 codes, donc ça ne marchera pas. Avant de te lancer, teste les exemples donnés avec la bibliothèque softwareserial pour comprendre comment l'utiliser. Tu verras qu'on prend souvent les broches 2 et 3.

Le second problème se situe dans la lecture (code RX). La lecture d'une liaison série est un peu compliquée si tu veux lire du texte. Pour simplifier, tu devrais envoyer (et donc recevoir) des chiffres, genre 0 et 1 (0 contact ouvert, 1 fermé) ce qui est plus simple à lire. Là aussi tu trouveras certainement un exemple dans la bibliothèque.

Si tu veux vraiment envoyer du texte, lis ceci.

C’est donc pourquoi, il fallait déconnecter les connexions série pour les modif par usb.
L’idée du texte vient du fait que la liaison série devrait être radio et « cryptée »

stmarco27:
C’est donc pourquoi, il fallait déconnecter les connexions série pour les modif par usb.

Exact !