Hey Leute, ich versuche seit mittlerweile mehreren Stunden eine einfache wireless-connection zwischen zwei Unos mittels der NRF24L01-Transceiver aufzubauen... Ich nutze die NRF24L01 mit PA und LNA (bis zu 800 Meter Reichweite). Ich habe den Schaltplan entsprechend der SPI Pins befolgt (Konfiguration: CE = D7, CSN=D8) und habe die Transceiver über 5 Volt an die mitgelieferten 3.3 Volt-Regulators angeschlossen, um für einen stabile Spannungsversorgung zu sorgen. Die Antennen berühren sich quasi schon...
Zunächst habe ich mit folgendem Code den korrekten Anschluss der SPI-Verbindung erfolgreich getestet (SerialMonitor: "1"):
#include <SPI.h>
#include <RF24.h>
#include <nRF24l01.h>
RF24 radio(7,8);
void setup(void) {
Serial.begin(9600);
delay(100);
radio.begin();
bool result = radio.isChipConnected();
Serial.println(result);
}
void loop(){
}
Danach habe ich verschiedene Beispielcodes getestet.
Transmitter:
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(7, 8); // CE, CSN
const byte address[6] = "00001";
void setup() {
radio.begin();
radio.openWritingPipe(address);
radio.setPALevel(RF24_PA_MIN);
radio.stopListening();
}
void loop() {
const char text[] = "Hello World";
radio.write(&text, sizeof(text));
delay(1000);
}
Receiver:
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(7, 8); // CE, CSN
const byte address[6] = "00001";
void setup() {
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(0, address);
radio.setPALevel(RF24_PA_MIN);
radio.startListening();
}
void loop() {
if (radio.available()) {
Serial.println("Check!");
char text[32] = "";
radio.read(&text, sizeof(text));
Serial.println(text);
}
}
Es passiert NICHTS...
Ich habe hier insgesamt 7 Antennen und Spannungsregler liegen, die ich auch schon durchgewechselt habe. Ich weiß nicht mehr weiter. Vielleicht sieht ja Jemand von euch meinen Fehler
Gruß,
Justin