NRF24L01+ Wert übergeben

Hi,

ich bekomm es einfach nicht hin, dass ein Mega2560 via nRF24L01+ Verbindung zu eine Uno eine Wert übergibt. Die Module sind richtig angeschlossen und stehen auch in Kontakt(siehe Ausgabe von print.Details():wink: und haben einen 0,1uF Kapazitator zwischen VCC und GND.Verwendet wird die aktuellste Library von TMRh20 (v1.3: RF24 - Arduino Libraries)

Kann mir bitte jemand weiter helfen?

Code Uno (Empfänger):

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

RF24 radio(7,8);
const uint64_t pipes[2] = { 0xF0F0F0F0E1LL, 0xF0F0F0F0D2LL };
void setup()
{
printf_begin();
radio.begin();
radio.setRetries(15,15);

Serial.begin(9600);

radio.openWritingPipe(pipes[1]);
radio.openReadingPipe(1,pipes[0]);
radio.printDetails();
radio.startListening();
}
void loop()
{
unsigned long t;
radio.read( &t, sizeof(t) );
Serial.print(t);
Serial.print(" ");
Serial.println("C");

delay(50);
}

Code Mega2560 (Sender):

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

RF24 radio(7,8);
const uint64_t pipes[2] = { 0xF0F0F0F0E1LL, 0xF0F0F0F0D2LL };

void setup()
{
printf_begin();
radio.begin();
radio.setRetries(15,15);
Serial.begin(9600);
radio.openWritingPipe(pipes[0]);
radio.openReadingPipe(1,pipes[1]);
radio.printDetails();
radio.startListening();
}

void loop() {
unsigned long t = 123;
radio.stopListening();
radio.write(&t, sizeof(t));
Serial.print(" Now sending ");
Serial.print(t);
delay(50);
}

print.Details();-Ausgabe:

STATUS = 0x0e RX_DR=0 TX_DS=0 MAX_RT=0 RX_P_NO=7 TX_FULL=0
RX_ADDR_P0-1 = 0xf0f0f0f0d2 0xf0f0f0f0e1
RX_ADDR_P2-5 = 0xc3 0xc4 0xc5 0xc6
TX_ADDR = 0xf0f0f0f0d2
RX_PW_P0-6 = 0x20 0x20 0x00 0x00 0x00 0x00
EN_AA = 0x3f
EN_RXADDR = 0x02
RF_CH = 0x4c
RF_SETUP = 0x07
CONFIG = 0x0e
DYNPD/FEATURE = 0x00 0x00
Data Rate = 1MBPS
Model = nRF24L01+
CRC Length = 16 bits
PA Power = PA_MAX

Okay es funktioniert, nachdem ich die Kondensatoren rausgenommen habe.

JoE1205:
Okay es funktioniert, nachdem ich die Kondensatoren rausgenommen habe.

Dann hast du die Kondensatoren sicher falsch dran gehabt.
Ein Kondensator von 0,1µ zwischen GND und VCC verhindert kein Senden von Daten.