Skocz do zawartości

Problem z komunikacją nrf24l01 Arduino


Pomocna odpowiedź

Upewnij sie sto razy! ze napewno masz dobrze to wszystko polaczone...a najlepiej narazie podepnij sama komunikacje bez plytki stykowej itp...obstawiam ze problem to polaczenia, bo niezla platanina...

(edytowany)

czyli program jest dobry? bo jeżel i tak to 

18 godzin temu, Konrad123 napisał:

Wcześniej jakies 1miesiąc temu uważałem że kable się nie stykają nie przewodzą prądu i danych bo używam męsko męskick i żeńsko żenskich a póżniej łącze to  w męsko żenskie

więc wystarczy kupić coś takiego 

image.thumb.png.f73e90429eeba9d08e525ebb57dd4929.png

i będzie git

więc proszę o sprawdzenie schematu kodu (poniżej) no i to chyba tyle

 

nadajnik

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

int x_axis = A1;
int y_axis = A2;
int xvalue;
int yvalue;
int data[2];

RF24 radio(9,10);
const uint64_t pipe=0xE8E8F0F0E1LL;

void setup() {
Serial.begin(9600);
radio.begin();
radio.openWritingPipe(pipe);
}

void loop() {{
xvalue=analogRead(x_axis);
xvalue=map(xvalue,0,1023,0,127);
data[0]=xvalue;
radio.write(data,1);
}
{
yvalue=analogRead(y_axis);
yvalue=map(yvalue,0,1023,128,255);
data[0]=yvalue;
radio.write(data,1);
}
Serial.println(xvalue);
Serial.println(yvalue);
}

 

odbiornik

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

const int motorforward = A1;
const int motorbackward = A2;
const int motorleft = A3;
const int motorright = A4;

int data[2];
RF24 radio(9,10); // CE,CSN:
const uint64_t pipe=0xE8E8F0F0E1LL;

void setup() {
pinMode (motorforward,OUTPUT);
pinMode (motorbackward,OUTPUT);
pinMode (motorleft,OUTPUT);
pinMode (motorright,OUTPUT);
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();
}

void loop() {
if(radio.available()){
  radio.read(data,1);
   if(data[0]>1 && data[0]<51){
    digitalWrite(motorforward,LOW);
    digitalWrite(motorbackward,HIGH);
  }
    if(data[0]>77 && data[0]<128){
    digitalWrite(motorforward,HIGH);
    digitalWrite(motorbackward,LOW);
  }
      if(data[0]>52 && data[0]<76){
    digitalWrite(motorforward,LOW);
    digitalWrite(motorbackward,LOW);
  }


   if(data[0]>129 && data[0]<179){
    digitalWrite(motorleft,HIGH);
    digitalWrite(motorright,LOW);
  }
    if(data[0]>205 && data[0]<255){
    digitalWrite(motorleft,LOW);
    digitalWrite(motorright,HIGH);
  }
     if(data[0]>180 && data[0]<204){
    digitalWrite(motorleft,LOW);
    digitalWrite(motorright,LOW);
  }
 }
}

 

schemat (raczej tego tak nie można nazwać)

image.thumb.png.777bd70198d0dac76101f97bf657c5a5.png

Edytowano przez Konrad123

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...