NRF 24L01

Отправляем данные с кнопки.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9,10);

int x = 0;

void setup() {
  radio.begin();
  radio.setChannel(100);
  radio.setDataRate (RF24_250KBPS);
  radio.setPALevel(RF24_PA_MIN);
  radio.openWritingPipe(0x0123456789LL);
  pinMode(2, INPUT_PULLUP);
}

void loop() {
     x = !digitalRead(2);
     radio.write(&x,sizeof(x));
} 

Открыть пример: Online ArduBlock



Принимаем данные и включаем светодиод.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9,10);

int x = 0;
 
void setup() {
  radio.begin();
  radio.setChannel(100);
  radio.setDataRate (RF24_250KBPS);
  radio.setPALevel(RF24_PA_MIN);
  radio.openWritingPipe(0x0123456789LL);
  radio.startListening();
}

void loop() {
     radio.read(&x,sizeof(x));
     pinMode(2, OUTPUT);
     digitalWrite(2, x);
} 

Открыть пример: Online ArduBlock



Отправляем массив.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9,10);
long R [2] ={0,0};

void setup() {
  radio.begin();
  radio.setChannel(100);
  radio.setDataRate (RF24_250KBPS);
  radio.setPALevel(RF24_PA_MIN);
  radio.openWritingPipe(0x0123456789LL);

  pinMode(2, INPUT_PULLUP);
}

void loop() {
    R[0]=(!digitalRead(2));
    R[1]=analogRead(A0);
     radio.write(&R,sizeof(R));
} 

Открыть пример: Online ArduBlock



Принимаем массив.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(9,10);

long R [2] ={0,0};

void setup() {
  radio.begin();
  radio.setChannel(100);
  radio.setDataRate (RF24_250KBPS);
  radio.setPALevel(RF24_PA_MIN);
  radio.openWritingPipe(0x0123456789LL);
  radio.startListening();

  pinMode(3, OUTPUT);
}

void loop() {
     radio.read(&R,sizeof(R));
     pinMode(2, OUTPUT);
     digitalWrite(2, R[0]);
     R[1]=map(R[1], 0, 1023, 0, 255);
     analogWrite(3, R[1]);
     delay(10);
} 

Открыть пример: Online ArduBlock



Видеоурок:

Компоненты с Aliexpress:

2,4G NRF24L01

Кнопка

Arduino Uno

Макетная плата

Светодиод

Потенциометр

Конденсатор

Дип кабель