Как отправить и проанализировать данные JSON через датчик NRF24L01? - PullRequest
1 голос
/ 16 марта 2020

TRANSMITTER.ino (порт COM8)

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include<ArduinoJson.h>
RF24 radio(7, 8); // CE, CSN
const byte addresses[6] = {"00001"};
void setup() {
 radio.begin();
 radio.openWritingPipe(addresses);
 radio.setPALevel(RF24_PA_MIN);
 radio.stopListening();
}
void loop() {
DynamicJsonBuffer jBuffer;
JsonObject& root = jBuffer.createObject();
root["North"] = "true";
root["South"] = "false";
root["East"] = "true";
root["West"] = "true";
radio.write(&root, sizeof(root));
delay(1000);
}

RECEIVER.ino (порт COM9)

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
#include<ArduinoJson.h>
RF24 radio(7, 8); // CE, CSN
const byte addresses[6] = {"00001"};
void setup() {
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(0, addresses);
radio.setPALevel(RF24_PA_MIN);
radio.startListening();
}
void loop() {
if ( radio.available()) {
  unsigned char data[1024];
  radio.read(&data, sizeof(data));
  StaticJsonBuffer<1024> jsonBuffer;
  JsonObject& toor = jsonBuffer.parseObject(data);
  String n = toor["North"];
  String s = toor["South"];
  String e = toor["East"];
  String w = toor["West"];
  Serial.println(n);
  Serial.println(s);
  Serial.println(e);
  Serial.println(w);
  delay(1000);
 }
}

Я пытаюсь передать данные JSON по NRF24L01 и печатать это к последовательному монитору, но я не вижу никакого выхода в моем последовательном мониторе (последовательный монитор COM9). в чем ошибка я делаю здесь?

Я использую Arduino JSON 5.13.5 версия

...