заставить arduino получать данные из nRF24 (библиотеки SPI и nRF) при чтении последовательного порта в ожидании запроса данных с помощью команды serial - PullRequest
1 голос
/ 19 апреля 2019

Я могу передавать данные из одного arduino в другой, используя чипы nRF24L01.Однако мне нужно, чтобы данные отправлялись ТОЛЬКО при отправке определенной команды на последовательный порт.Я хочу иметь возможность написать «A» на последовательном порту, и для arduino ответить с последними данными.Это легко с библиотекой serialcommand и работает, если я подключен напрямую. Однако, когда я добавляю модуль nRF24L01, serialcommand.h больше не отвечает данными.Я попытался даже удалить if (radio.available ()) .., чтобы не было получено никаких данных, и только тот факт, что в настройке есть radio.begin (), заставляет команду serial A 'A' не работать.когда я удаляю радиосвязь, команда 'A' отвечает тремя нулями (данные по умолчанию).

Вот код моего приемника.Я все еще считаю себя новичком, и я никогда формально не изучал C / C ++.Любая помощь или идеи относительно того, почему это происходит, очень ценится!

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

SerialCommand sCmd;

RF24 radio(7, 8); // CE, CSN

const byte address[6] = "00001";

int Array[3];

void setup() {

Serial.begin(9600);
sCmd.addCommand("A", serialdataPrint );
radio.begin();
radio.setRetries(15, 15);
radio.openReadingPipe(0,address); 
radio.setPALevel(RF24_PA_MIN);
radio.startListening();

}

void loop() {

   while (Serial.available() > 0){
    sCmd.readSerial();

    if (radio.available()) {

    int Array_received[3];

    radio.read(&Array_received, sizeof(Array_received));

    Array[0] = Array_received[0];
    Array[1] = Array_received[1];
    Array[2] = Array_received[2];
    } 
  }
}


void serialdataPrint ()
{
    Serial.println(Array[0]);
    Serial.println(Array[1]);
    Serial.println(Array[2]);
}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...