Transmetteur Arduino

a marqué ce sujet comme résolu.
Auteur du sujet

Bonjour,

J’ai un problème sur lequel je bloque depuis quelques jours. J’aimerais pouvoir transmettre des données à l’aide de module nRF24L01, mais ça ne fonctionne tout simplement pas.

Voici mon code pour l’envoie des données:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <SPI.h>
#include <RF24.h>
#include <nRF24L01.h>

RF24 radio(9, 10);
const byte address[6] = "00001";
bool ledHigh = false;

void setup() {
  //Initialize LED
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, HIGH);

  //Initialize radio
  radio.begin(); // <-- C'EST ICI QUE CA PLANTE
  radio.openWritingPipe(address);
  radio.setPALevel(RF24_PA_MIN);
  radio.stopListening();
}

void loop() {
  const char text[] = "off";
  if(ledHigh){
    const char text[] = "on";
  }

  ledHigh = !ledHigh;    
  if(ledHigh) digitalWrite(LED_BUILTIN, HIGH);
  else digitalWrite(LED_BUILTIN, LOW);
  
  //radio.write(&text, sizeof(text));
}

Et mon code pour la réception des données (deuxième carte):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <SPI.h>
#include <RF24.h>
#include <nRF24L01.h>

RF24 radio(9, 10);
const byte address[6] = "00001";
bool ledHigh = false;

void setup() {
  //Initialize LED
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, HIGH);

  //Initialize radio
  radio.begin(); // <-- C'EST ICI QUE CA PLANTE
  radio.openReadingPipe(0, address);
  radio.setPALevel(RF24_PA_MIN);
  radio.startListening();
}

void loop() {
  if(radio.available()){
    char text[32] = "";
    radio.read(&text, sizeof(text));

    if(text == "on"){
      digitalWrite(LED_BUILTIN, HIGH);
    }else{
      digitalWrite(LED_BUILTIN, LOW);
    }
  }
}

Le code plante au niveau du radio.begin(); (j’ai essayé de supprimer tout le reste en lien avec la radio, et les LED ne clignotais pas du moment que radio.begin() était présent.

Mes branchements semble bon. Je me suis basé sur le tutoriel suivant: https://howtomechatronics.com/tutorials/arduino/arduino-wireless-communication-nrf24l01-tutorial/

Et j’ai aussi essayé la bibliothèque Mirf, mais ça ne fonctionnais pas non plus.

Je vous remercie.

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte