Ebben segítsetek ! nrf24 rádiós jelátvitelben.
Ez évekig működött, csak elfelejtettem a programot, többféle hőfok adatott gyűjtöttem , kijelzés SD kártyára mentés stb .
A vevő programja 200 sor , csak a vázat küldöm.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int potiPin = A0;
int adattomb [ ] = {1,2,3,4};
int adat1 ;
int adat2 ;
int adat3 ;
int adat4 ;
ADÓ programja
RF24 radio(9, 10); // CE, CSN
const uint64_t pipe = 0xE8E8F0F0E1LL;
// --
void setup(void) {
Serial.begin(9600);
radio.begin();
radio.setPALevel(RF24_PA_MAX); // most szúrtam be
radio.openWritingPipe(pipe);
}
// --
void loop(void)
{
int adat1 = analogRead (potiPin) ;
int adat2 = adat1 + 20 ;
int adat3 = adat1 + 40 ;
int adat4 = adat1 + 120 ;
adattomb [1] = adat1 ;
adattomb [2] = adat2 ;
adattomb [3] = adat3 ;
adattomb [4] = adat4 ;
Serial.print (adattomb [1]) ;
Serial.print (" ") ;
Serial.print (adattomb [2]) ;
Serial.print (" ") ;
Serial.print (adattomb [3]) ;
Serial.print (" ") ;
Serial.print (adattomb [4]) ;
Serial.println (" ") ;
radio.write(&adattomb, sizeof(adattomb)); // ITT LEHET A HIBA
delay(250);
}
VEVŐ programja
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int adattomb[] ={1,2,3,4} ; // 4 adatos tömböt kreáltam csak most "int"
//File dataFile ;
RF24 radio( 3, 4 ); // CE , CSN (9, 10); !!
const uint64_t pipe = 0xE8E8F0F0E1LL;
// ---
void setup(void) {
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1, 0xE8E8F0F0E1LL ); // pipe
radio.setPALevel(RF24_PA_MAX);
radio.startListening();
delay(15000);
}
// --
void loop(void)
{
if ( radio.available() )
{
radio.read(&adattomb, sizeof(adattomb));
Serial.print(adattomb[1]);
Serial.print(" ");
Serial.print(adattomb[2]);
Serial.print(" ");
Serial.print(adattomb[3]);
Serial.print(" ");
Serial.print(adattomb[4]);
Serial.println(" ");
}
else
{
Serial.println("Nem talált Rádiót" ) ;
}
delay(500);
}
Az egészet nem kell leírnotok , csak azt a sort javítsátok.
Ebben a sorban - radio.read(&adattomb, sizeof(adattomb)); - mi a szerepe az & jelnek ?
Hardwer hiba nincs , mert "hello világ " típusú szövegek mennek.
Kérlek , ha van magyarázat azt alapfokon kérem.