Почему модули NRF24L01 взаимодействуют только в одном направлении

У меня есть 2 модуля NRF24L01 +pa +lna, подключенных к 2 arduino mini pro. Один из модулей находится на джойстике, а другой — на самолете. Все работало отлично до прошлой недели, когда они перестали общаться. Поэтому я написал простой код приемника и приемопередатчика, чтобы проверить, работают ли они. В результате, если модуль в самолете является приемопередатчиком, а джойстик — приемником, все работает нормально. Если у них противоположные роли, то я получаю пустые сообщения на последовательный монитор гораздо чаще, чем трансивер отправляет сообщение.

Код получателя:

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

RF24 radio(7, 8);

const byte address[6] = "00001";

void setup() {
  while (!Serial);
    Serial.begin(9600);
  
  radio.begin();
  radio.openReadingPipe(0, address);
  radio.startListening();

}

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

}

Код трансивера:

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

RF24 radio(7,8);

const byte address[6] = "00001";


void setup() {
  radio.begin();
  radio.openWritingPipe(address);
  radio.stopListening();

}

void loop() {

  const char text[] = "Hello World";
  radio.write(&text, sizeof(text));
  delay (1000);
  // put your main code here, to run repeatedly:

}

, 👍1

Обсуждение

Существует множество китайских клонов чипов nRF24L01+, и некоторые из них работают лучше, чем другие., @Majenko

поменять местами модули, @jsotola


1 ответ


1

При получении кода... попробуйте определить только переменную. символьный текст[32];

Вы меняете скорость передачи данных, palevel и канал в nrf24l01. См. техническое описание для получения дополнительной информации. Или посетите https://howtomechatronics.com/tutorials/arduino/arduino-wireless-communication-nrf24l01. -учебник/

Возможно, у вас проблемы с питанием, потому что pro mini может не обеспечивать достаточную мощность.... чтобы не использовать конденсатор 10 мкФ в nrf.

,