IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Connecter deux Arduino via RS485


Sujet :

Arduino

  1. #1
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2023
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2023
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Connecter deux Arduino via RS485
    Bonjour à tous,
    Je suis sur un petit projet de simulateur de vol pour Microsoft Flight Simulator 2020 et l'objectif du moment est de relier plusieurs Arduino entre eux en utilisant la norme RS485 via des MAX487.
    Je me suis donc lancé sans me soucier le moins du monde de quoi que ce soit dans un petit montage qui à ma grande surprise ne fonctionne pas xD.
    Le circuit est alimenté en 12V via les fils du bas du schéma.
    Après plein de montages aussi farfelu qu'infructueux (même si des fois j'y ai cru), je me résoud à vous écrire en quête d'une solution.

    Datasheet du MAX487 :
    https://www.futurlec.com/Maxim/MAX487.shtml

    Avec le montage et le code suivant, je m'attends à ce que la LED clignote, mais rien ... (la led est dans le bon sens et n'est pas morte ...).
    L'Arduino MEGA est le MASTER, et le NANO le SLAVE. A terme, il y aura plusieurs NANO sur la ligne.

    Nom : Untitled Sketch_bb.png
Affichages : 208
Taille : 447,9 Ko

    Code du MASTER (Arduino MEGA)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    #define LED         13
    #define BUTTON      12
    #define MASTER_EN   8
     
    void setup() {
      Serial.begin(115200);
      pinMode(LED, OUTPUT);
      pinMode(MASTER_EN, OUTPUT);
      pinMode(BUTTON, INPUT);
      digitalWrite(MASTER_EN, HIGH);
    }
     
    void loop() {
      Serial.print("0");
      delay(3000);
      Serial.print("1");
      delay(3000);
    }
    Code du SLAVE (Arduino NANO)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    #define LED         12
    #define MASTER_EN   2
     
    void setup() {
      Serial.begin(115200);
      pinMode(LED, OUTPUT);
      pinMode(MASTER_EN, OUTPUT);
      delay(10);
      digitalWrite(MASTER_EN, LOW);
    }
     
    void loop() {
      while (Serial.available()) {
        String value = Serial.readString();
        if(value == "0"){
          digitalWrite(LED, HIGH);
        } else {
          digitalWrite(LED, LOW);
        }
        delay(100);
      }
    }
    Merci d'avance pour votre aide ^^ <3

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur électricien
    Inscrit en
    Septembre 2008
    Messages
    1 267
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur électricien

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 267
    Points : 4 829
    Points
    4 829
    Par défaut
    Bonsoir

    Serial1 au lieu de Serial dans le code du master devrait déjà aider.
    Est-ce que la communication en direct fonctionne? En direct c'est les Arduino qui sont reliés Tx sur Rx.

    Les résistances R1 et R2 ne sont pas nécessaire en essai, c'est pour l'adaptation de la paire de conducteur, nécessaire qu'à partir d'une certaine distance de câble (et c'est 120 ohm pas 100).

    Delias

  3. #3
    Candidat au Club
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2023
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2023
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merveilleux !! Serial1 était la solution !
    Merci beaucoup, ça fait une semaine que je suis dessus et j'ai pensé à tout sauf à ça ... !

    Je reviens au prochain problème xD

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. connecter deux routeurs via wifi?
    Par abu basma1 dans le forum Réseaux
    Réponses: 6
    Dernier message: 01/05/2018, 00h22
  2. Connecter deux ordinateurs via un simple câble USB.
    Par bouftat dans le forum Équipements
    Réponses: 6
    Dernier message: 27/02/2014, 17h59
  3. Réponses: 6
    Dernier message: 26/02/2014, 22h30
  4. Faire connecter deux PC via un Workgroup
    Par dessinateurttuyen dans le forum Windows 7
    Réponses: 1
    Dernier message: 24/11/2009, 19h32
  5. [Reseau] Connection entre deux XP via LAN
    Par scifire dans le forum Windows XP
    Réponses: 1
    Dernier message: 11/02/2006, 00h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo