En poursuivant votre navigation sur ce site, vous acceptez l'utilisation de cookies pour vous proposer des contenus et services adaptés. Mentions légales.
 
Vous êtes ici :   Accueil » Connecter 2 arduino
 
    Imprimer la page...
    Imprimer la section...
 

Connecter 2 arduino

Montage Simple pour connecter

2 Arduino NANO en série

05/2013

Pouvoir transférer des données entre 2 arduino NANO

platine_08.jpg

 

Le branchement et le programme
 

3 câbles suffiront

  • 1 entre les masses de chaque carte  (carte 1 et carte 2)
  • 1 entre le TX de la carte 1 et le RX de carte 2
  • 1 entre le RX de la carte 1 et le TX de carte 2
Programme carte 1 Programme carte 2

/*carte Arduino Nano EMETTRICE
  arduino v1.01
  pour programmer les NANO, ne pas les relier entre elles par les fils TX et RX
  le faire apres avoir televerse le programme

 La carte attend un 10 secondes
  envoi un X
 
  La carte attend un Y et si le recois
  allume la LED
  pause 1 seconde
  eteind la LED
  et renvoi un X

*/
#include <SoftwareSerial.h>

SoftwareSerial serial(0, 1); // RX, TX pour Nano
char recu;  // variable qui recevra le caractere envoye par la carte RECEPTRICE
void setup()
{
  serial.begin(9600);    // vitesse de transfer
  pinMode(13, OUTPUT);  // Mettre le port 13(led) en sortie
  digitalWrite(13, HIGH); // Allumer la LED sur le port 13
  delay(10000);         // attendre 10 secondes
  serial.print('x');    // Envoyer le caractere X a la carte Nano receptrice
  digitalWrite(13, LOW); // Allumer la LED sur le port 13
}


void loop()
{
while(serial.available()<1);  // Tant que la carte reçoit aucune information, ne rien faire
recu = serial.read();
if(recu='y')   // Si le caractere recu = y
    {
      digitalWrite(13, HIGH); // Allumer la LED sur le port 13
      delay(1000);            // pause 1 seconde
      digitalWrite(13, LOW);  // Eteindre la LED sur le port 13
      
      serial.print('x');  //Envoyer Y a la carte RECEPTRICE
    }
}

/*carte Arduino Nano RECEPTRICE
  arduino v1.01
  pour programmer les NANO, ne pas les relier entre elles par les fils TX et RX
  le faire apres avoir televerse le programme
 
  La carte attend un X et si le recois
  allume la LED
  pause 1 seconde
  eteind la LED
  et renvoi un Y
 

*/
#include <SoftwareSerial.h>

SoftwareSerial serial(0, 1); // RX, TX pour Nano
char recu;  // variable qui recevra le caractere envoye par la carte EMETTRICE
void setup()
{
  serial.begin(9600);   // vitesse de transfer
  pinMode(13, OUTPUT);  // Mettre le port 13(led) en sortie
}


void loop()
{
while(serial.available()<1);  // Tant que la carte reçoit aucune information, ne rien faire
recu = serial.read();
if (recu = 'x')   // Si le caractere recu = X
    {
      digitalWrite(13, HIGH); // Allumer la LED sur le port 13
      delay(1000);            // pause 1 seconde
      digitalWrite(13, LOW);  // Eteindre la LED sur le port 13
      
      serial.print('y');  //Envoyer Y a la carte EMETRICE
    }
}

Conclusion
Maintenant il faut approfondir pour pouvoir envoyer des valeurs (Température,Tension batterie, profondeur ect.. d'une carte ver l'autre


Date de création : 08/05/2013 @ 16h40
Dernière modification : 08/05/2013 @ 18h34
Page lue 7404 fois