Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam

Пикабу Игры +1000 бесплатных онлайн игр

Постройте дом своей мечты прямо сейчас! Соединяйте три предмета в один ряд, зарабатывайте звезды и покупайте красивые детали интерьера. Звучит заманчиво? Увлекательная головоломка в жанре «три в ряд» заставит размяться ваш мозг. Присоединяйтесь к онлайн-игре бесплатно прямо сейчас!

Строить дом - три в ряд

Три в ряд, Казуальные, Детские

Играть
Сыграйте в классический пасьянс и попробуйте разложить по порядку колоду из 52 карт, начиная с короля и заканчивая тузом. Игра имеет четыре варианта: с 1, 2, 3 и 4 мастями. Выиграйте как можно больше в каждом варианте и улучшите свои показатели.

Пасьянс Паук «Классический»

Карточные, Логическая, Мобильная

Играть
🔥 Дрифт и гонки без правил!
Садись за руль, жги резину и уноси баллы в безумных поворотах!
🚗 Реалистичный дрифт
🏁 Захватывающие трассы
💨 Улучши свою тачку и побеждай!

Дрифт Без Лимита

Гонки, Симуляторы, Спорт

Играть
Открой для себя волшебный мир реальной рыбалки. Лови реальную рыбу на реальных водоемах! Исследуй новые рыболовные места и заполучи заветный трофей.

Реальная Рыбалка

Симуляторы, Мультиплеер, Спорт

Играть
“Рецепт Счастья” — увлекательная игра в жанре «соедини предметы»! Помогите Эмили раскрыть тайны пропавшего родственника, найти сокровища и восстановить её любимое кафе.

Рецепт Счастья

Казуальные, Головоломки, Новеллы

Играть

Топ прошлой недели

  • Oskanov Oskanov 8 постов
  • alekseyJHL alekseyJHL 6 постов
  • XpyMy XpyMy 1 пост
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Новости Пикабу Помощь Кодекс Пикабу Реклама О компании
Команда Пикабу Награды Контакты О проекте Зал славы
Промокоды Скидки Работа Курсы Блоги
Купоны Biggeek Купоны AliExpress Купоны М.Видео Купоны YandexTravel Купоны Lamoda
Мобильное приложение

Nrf24l01

С этим тегом используют

Arduino Все
11 постов сначала свежее
34
maniack74
maniack74
2 года назад
Arduino & Pi

Arduino - передача показаний датчиков по "воздуху"⁠⁠

Озадачился передачей показаний различных датчиков по воздуху для последующего накопления и обработки, мониторинга в реальном времени и тп. на основе этого.

Собрал две макетки. На одну ардуинку зацеплены различные датчики и модуль NRF24l01 как передатчик, на другую ардуинку только приёмник NRF24l01.

Здесь скетчи передатчика и приёмника

На этом собственно всё, данные с датчиков передаются и принимаются. У этого проекта есть дальнейшее развитие, данные с датчиков собираются в mysql-базу и выводятся на сайт для дальнейшей обработки. Оформлю позже в другом посте.

На данном этапе есть существенная проблема не связанная с моментом передачи, а связанная с чтением данных температуры с датчика DHT22 при значениях температуры ниже ноля.

выглядит это примерно так:

Humidity: 26.10% Temperature: 0.90°C 33.62°F Heat index: -2.27°C 27.91°F

Humidity: 26.30% Temperature: 0.70°C 33.26°F Heat index: -2.49°C 27.52°F

Humidity: 26.30% Temperature: 0.70°C 33.26°F Heat index: -2.49°C 27.52°F

Humidity: 26.40% Temperature: 0.50°C 32.90°F Heat index: -2.71°C 27.13°F

Humidity: 26.60% Temperature: 0.40°C 32.72°F Heat index: -2.81°C 26.94°F

Humidity: 26.60% Temperature: 0.30°C 32.54°F Heat index: -2.92°C 26.74°F

Humidity: 26.70% Temperature: 0.20°C 32.36°F Heat index: -3.03°C 26.55°F

Humidity: 26.90% Temperature: 0.00°C 32.00°F Heat index: -3.24°C 26.16°F

Humidity: 26.90% Temperature: 0.00°C 32.00°F Heat index: -3.24°C 26.16°F

Humidity: 27.10% Temperature: -3276.70°C -5866.06°F Heat index: -3607.57°C -6461.69°F

Humidity: 27.20% Temperature: -3276.60°C -5865.88°F Heat index: -3607.46°C -6461.49°F

Humidity: 27.30% Temperature: -3276.50°C -5865.70°F Heat index: -3607.35°C -6461.29°F

Humidity: 27.50% Temperature: -3276.30°C -5865.34°F Heat index: -3607.12°C -6460.88°F

Humidity: 27.50% Temperature: -3276.20°C -5865.16°F Heat index: -3607.01°C -6460.68°F

Humidity: 27.70% Temperature: -3276.10°C -5864.98°F Heat index: -3606.90°C -6460.48°F

Humidity: 27.80% Temperature: -3276.00°C -5864.80°F Heat index: -3606.78°C -6460.27°F

Humidity: 27.90% Temperature: -3276.00°C -5864.80°F Heat index: -3606.78°C -6460.27°F

Humidity: 28.00% Temperature: -3275.80°C -5864.44°F Heat index: -3606.56°C -6459.87°F

Humidity: 28.10% Temperature: -3275.70°C -5864.26°F Heat index: -3606.44°C -6459.66°F

Humidity: 28.20% Temperature: -3275.60°C -5864.08°F Heat index: -3606.33°C -6459.46°F

На последней строчке значение которое в дальнейшем не меняется.

Проблема проявляет себя не только в той библиотеке для DHT22 которую я использовал, а также в других. Хотелось бы решить эту проблему при помощи сообщества, сам пока не умею.

Показать полностью
Nrf24l01 Dht22 Arduino Текст
20
50
MaksSim33
MaksSim33
3 года назад
Arduino & Pi

Дисплей Nextion и NRF24 беспроводное управлении реле⁠⁠

Я уже вкладывал уроки про дисплей Nextion. В которых рассказывал, как можно организовать контроль доступа. Сегодня в проекте рассмотрим более расширено применение полученных знаний из уроков.

С помощью радио модуля NRF24 беспроводным способом (по воздуху) будем управлять реле. Включать и выключать можно различную нагрузку: свет, отопление, вентиляцию и пр.

Дисплей Nextion и NRF24 беспроводное управлении реле Arduino, Nrf24l01, Реле, Своими руками, Видеоблог, Видео, Самоделки, Длиннопост

На основе данной системы можно сделать беспроводное управление освещением в доме.

Дисплей Nextion и NRF24 беспроводное управлении реле Arduino, Nrf24l01, Реле, Своими руками, Видеоблог, Видео, Самоделки, Длиннопост

Надеюсь моя информация будет полезной.

Спасибо! Всем добра!

Показать полностью 2
[моё] Arduino Nrf24l01 Реле Своими руками Видеоблог Видео Самоделки Длиннопост
6
12
DellaiSam
DellaiSam
4 года назад

Аппаратура радиоуправления на ардуино своими руками⁠⁠

Аппаратура радиоуправления на ардуино своими руками с любым количеством каналов. В пульте установлено 2 стика,11 тактовых кнопок, спикер, вибро-мотор, светодиодный индикатор и дисплей от NOKIA 3410 с подсветкой.

[моё] Радиоуправление Arduino Аппаратура Nrf24l01 Видео Видеоблог
10
196
StaryPapka
4 года назад
Arduino & Pi

Термостат на NRF24l01 и ESP8266⁠⁠

Термостат на NRF24l01 и ESP8266 Esp8266, Attiny85, Nrf24l01, Arduino, Своими руками, Длиннопост

Всем здравствуйте. Мой первый пост, прошу слишком не пинать. Конструктивная критика приветствуется.


Начнем, наверное, с моего понятия умного дома. У всех оно разное. Для кого-то лампочка, включаемая с телефона- верх совершенства, кому-то умная розетка или кофеварка. Пылесос, наконец (с этим, пожалуй, соглашусь). Да много действительно умных и удобных вещей в продаже. Но я хочу поговорить об умном доме, который потихоньку делаю сам. Мое видение этого IoT.

Начнем сначала, что ли… Первый «девайс», который я посчитал шагом в мир умных вещей, как ни странно, стал AirWick, переделав который под свои алгоритмы много лет назад, стал подумывать о частичной автоматизации своего жилья. Было много проб и ошибок. О них мы разговаривать не будем- это отдельная тема. Много статей пересмотрел и о протоколах передачи данных, и о серверах для умных домов. Но одно мне покоя не давало – туева хуча проводов по всей хате. И ладно-бы , если ты купил новое жилье с черновой отделкой, или капитальный ремонт затеял… А блин, в готовой, отремонтированной квартире тогда как? Тут несколько лет назад, как выстрел, появилась ESP8266. На всех форумах по электронике только и разговора было о ней, кто что на ней собрал. Попробовал. Классно, понравилось. А что дальше- опять провода по всему дому? Так дело не пойдет.

И вот выстрелило. У сестры квартира с индивидуальным отоплением. Но какие-то чудаки с буквы МЫ, кабель под термостат не заложили. Котел работает хрен пойми как, насос постоянно гоняет теплоноситель, температуру руками на котле выставляешь. Выход- поставить термостат и не париться. Штробить стены в ремонтированной квартире? Не вариант. ESP8266 в роли датчика температуры? Вроде выход- ан нет. Батарейки менять замучаешься. Радиоканал- подходит. А как все контролировать и настраивать? Опять дисплеи? Не то. А если совместить радиоканал с WiFi? Выход найден!!! Осталось реализация. Решил так- датчик будет передавать параметры по радиоканалу, а блок управления котлом (не только котлом), принимать их и управлять розжигом.

Теперь по сути. Датчик получился практически универсальный. В роли датчика температуры выбрал AM2320, но подойдет и DHT22. Протоколы обмена одинаковые. В роли радиоканала выступит NRF24l01, подключенный по трехпроводной схеме. Забыл упомянуть про микроконтроллер. Выбрал для себя Attiny85. За низкое потребление в режиме сна. Осталось две ноги. Что можно добавить еще? Датчик освещенности на фоторезисторе или датчик протечки (два электрода). Да светодиодик, для контроля. Нашел подходящий корпус на али и понеслась… Получился универсальный датчик, который отправляет один раз, за запрограммированный промежуток времени (для температуры и влажности – 3 мин., для освещенности и протечки- 1 мин.

Батарейка -литиевая. Потребление в режиме сна примерно 11 uA. Расчетное время работы для температуры и влажности – 4 года, для АЦП – 1 год, может 1.5.

Теперь фотки:

Термостат на NRF24l01 и ESP8266 Esp8266, Attiny85, Nrf24l01, Arduino, Своими руками, Длиннопост
Термостат на NRF24l01 и ESP8266 Esp8266, Attiny85, Nrf24l01, Arduino, Своими руками, Длиннопост
Термостат на NRF24l01 и ESP8266 Esp8266, Attiny85, Nrf24l01, Arduino, Своими руками, Длиннопост
Термостат на NRF24l01 и ESP8266 Esp8266, Attiny85, Nrf24l01, Arduino, Своими руками, Длиннопост

Работает все в приложении BLYNK, не потому, что веб морду написать не могу, а потому, что систер часто уезжает и удаленно управлять хочется.

Показать полностью 4
[моё] Esp8266 Attiny85 Nrf24l01 Arduino Своими руками Длиннопост
149
3
Flasheroff
5 лет назад

Работа с модулем NRF24L01,8 канальное управление (РЕЛЕ)⁠⁠

Всем привет,не так давно я выкладывал пост Нужна помощь с модулем NRF24L01 там я описал свою проблему,но естественно никто мне не помог,как говорится сидят там диванные эксперты,лишь бы побазарить о том что всё не так, я возращаюсь теперь сюда с решением своей проблемы,спросите меня зачем я это выкладываю,ведь я решил свою проблему,да потому что найдётся та часть людей с такой же проблемой, и я хочу им помочь.

Использую Arduino Mega 2560(выступает в качестве платы исполнения(приёмник)), Arduino Nano(выступает в качестве платы управления(передатчик)), два модуля NRF24L01 и 8-релейный модуль.

Кстати о подключении NRF24L01 к Arduino Nano: CE-D9, CSN-D10, SCK-D13, MO-D11, MI-D12,а к Arduino Mega 2560: CE-D10, CSN-D53, SCK-D52, MO-D51, MI-D50.(У меня модули подключены через специальные стабилизирующие платы на 3.3 вольта).

На пинах Arduino Megs 2560  2,3,4,5,6,7,8,9 подключены реле,а на передатчике Arduino Nano кнопки подключены к пинам D2,D3,D4,D5,D6,D7,D8,A0(Со стягивающим резистором к 5В).(Все пины замыкаются на землю).

Код:

RX (приёмник):

#include <SPI.h>

#include "nRF24L01.h"

#include "RF24.h"

RF24 radio(10,53); // "создать" модуль на пинах 9 и 10 Для Уно 9,53 для Меги


byte address[][6] = {"1Node","2Node","3Node","4Node","5Node","6Node"}; //возможные номера труб

byte recieved_data[8];

byte relay1 = 2; // реле на 2 цифровом

byte relay2 = 3; // реле на 3 цифровом

byte relay3 = 4; // реле на 4 цифровом

byte relay4 = 5; // реле на 5 цифровом

byte relay5 = 6; // реле на 6 цифровом

byte relay6 = 7; // реле на 7 цифровом

byte relay7 = 8; // реле на 8 цифровом

byte relay8 = 9; // реле на 9 цифровом

void setup(){


pinMode(relay1, OUTPUT); // настроить пин реле как выход

pinMode(relay2, OUTPUT); // настроить пин реле как выход

pinMode(relay3, OUTPUT); // настроить пин реле как выход

pinMode(relay4, OUTPUT); // настроить пин реле как выход

pinMode(relay5, OUTPUT); // настроить пин реле как выход

pinMode(relay6, OUTPUT); // настроить пин реле как выход

pinMode(relay7, OUTPUT); // настроить пин реле как выход

pinMode(relay8, OUTPUT); // настроить пин реле как выход


radio.begin(); //активировать модуль

radio.setAutoAck(1); //режим подтверждения приёма, 1 вкл 0 выкл

radio.setRetries(0,15); //(время между попыткой достучаться, число попыток)

radio.enableAckPayload(); //разрешить отсылку данных в ответ на входящий сигнал

radio.setPayloadSize(32); //размер пакета, в байтах


radio.openReadingPipe(1,address[0]); //хотим слушать трубу 0

radio.setChannel(0x60); //выбираем канал (в котором нет шумов!)


radio.setPALevel (RF24_PA_MAX); //уровень мощности передатчика. На выбор RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX

radio.setDataRate (RF24_250KBPS); //скорость обмена. На выбор RF24_2MBPS, RF24_1MBPS, RF24_250KBPS

//должна быть одинакова на приёмнике и передатчике!

//при самой низкой скорости имеем самую высокую чувствительность и дальность!!


radio.powerUp(); //начать работу

radio.startListening(); //начинаем слушать эфир, мы приёмный модуль

}


void loop() {

byte pipeNo;

while ( radio.available(&pipeNo)) { // слушаем эфир со всех труб

radio.read( &recieved_data, sizeof(recieved_data) ); // чиатем входящий сигнал

digitalWrite(relay1, recieved_data[0]); // подать на реле сигнал с 0 места массива

//то бишь 0 или 1

digitalWrite(relay2, recieved_data[1]); // подать на реле сигнал с 1 места массива

//то бишь 0 или 1

digitalWrite(relay3, recieved_data[2]); // подать на реле сигнал с 2 места массива

//то бишь 0 или 1

digitalWrite(relay4, recieved_data[3]); // подать на реле сигнал с 3 места массива

//то бишь 0 или 1

digitalWrite(relay5, recieved_data[4]); // подать на реле сигнал с 4 места массива

//то бишь 0 или 1

digitalWrite(relay6, recieved_data[5]); // подать на реле сигнал с 5 места массива

//то бишь 0 или 1

digitalWrite(relay7, recieved_data[6]); // подать на реле сигнал с 6 места массива

//то бишь 0 или 1

digitalWrite(relay8, recieved_data[7]); // подать на реле сигнал с 7 места массива

//то бишь 0 или 1

}

}




TX(передатчик):

#include <SPI.h> // библиотека для работы с шиной SPI

#include "nRF24L01.h" // библиотека радиомодуля

#include "RF24.h" // ещё библиотека радиомодуля


RF24 radio(9, 10);

byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"}; //возможные номера труб

byte transmit_data[8];


byte button1 = 2; // кнопка на 2 цифровом

byte button2 = 3; // кнопка на 3 цифровом

byte button3 = 4; // кнопка на 4 цифровом

byte button4 = 5; // кнопка на 5 цифровом

byte button5 = 6; // кнопка на 6 цифровом

byte button6 = 7; // кнопка на 7 цифровом

byte button7 = 8; // кнопка на 8 цифровом

int button8 = 0; // кнопка на 0 аналоговом


void setup() {


Serial.begin(9600); //открываем порт для связи с ПК

radio.begin(); //активировать модуль

radio.setAutoAck(1); //режим подтверждения приёма, 1 вкл 0 выкл

radio.setRetries(0, 15); //время между попыткой достучаться, число попыток

radio.enableAckPayload(); //разрешить отсылку данных в ответ на входящий сигнал

radio.setPayloadSize(32); //размер пакета, в байтах


pinMode(button1, INPUT_PULLUP); // настроить пин кнопки

pinMode(button2, INPUT_PULLUP); // настроить пин кнопки

pinMode(button3, INPUT_PULLUP); // настроить пин кнопки

pinMode(button4, INPUT_PULLUP); // настроить пин кнопки

pinMode(button5, INPUT_PULLUP); // настроить пин кнопки

pinMode(button6, INPUT_PULLUP); // настроить пин кнопки

pinMode(button7, INPUT_PULLUP); // настроить пин кнопки

pinMode(button8, INPUT_PULLUP); // настроить пин кнопки


radio.openWritingPipe(address[0]); //мы - труба 0, открываем канал для передачи данных

radio.setChannel(0x60); //выбираем канал (в котором нет шумов!)

radio.setPALevel (RF24_PA_MAX); //уровень мощности передатчика. На выбор RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX

radio.setDataRate (RF24_250KBPS); //скорость обмена. На выбор RF24_2MBPS, RF24_1MBPS, RF24_250KBPS

//должна быть одинакова на приёмнике и передатчике!

//при самой низкой скорости имеем самую высокую чувствительность и дальность!

radio.powerUp(); //начать работу

radio.stopListening(); //не слушаем радиоэфир, мы передатчик

}

void loop() {


transmit_data[0] = digitalRead(button1); // сигнал с кнопки

transmit_data[1] = digitalRead(button2); // сигнал с кнопки

transmit_data[2] = digitalRead(button3); // сигнал с кнопки

transmit_data[3] = digitalRead(button4); // сигнал с кнопки

transmit_data[4] = digitalRead(button5); // сигнал с кнопки

transmit_data[5] = digitalRead(button6); // сигнал с кнопки

transmit_data[6] = digitalRead(button7); // сигнал с кнопки

transmit_data[7] = analogRead(button8); // сигнал с кнопки


radio.write(&transmit_data, sizeof(transmit_data)); //отправляем получившийся массив

}

Работа с модулем NRF24L01,8 канальное управление (РЕЛЕ) Arduino, Nrf24l01, Реле, Длиннопост
Работа с модулем NRF24L01,8 канальное управление (РЕЛЕ) Arduino, Nrf24l01, Реле, Длиннопост
Работа с модулем NRF24L01,8 канальное управление (РЕЛЕ) Arduino, Nrf24l01, Реле, Длиннопост
Показать полностью 3
[моё] Arduino Nrf24l01 Реле Длиннопост
13
2
Flasheroff
5 лет назад

Нужна помощь с модулем NRF24L01⁠⁠

Итак,история такая,у меня есть Arduino Mega на микроконтроллере ATMEGA2560, Arduino Nano (для тех кто незнал таже Arduino Uno),два NRF24L01,кнопки и 8-релейный модуль.

Из этих составляющих у меня получилось осуществить управление только трёх реле из восьми.

Далее в скетче где написано про массив принятых данных в RX цифра 3,я её менял на большее значение,после этого всё переставало работать (ну и в TX тоже менял соответственно)

TX

#include <SPI.h>

#include "nRF24L01.h"

#include "RF24.h"


RF24 radio(9, 10); // "создать" модуль на пинах 9 и 10 Для Уно

//RF24 radio(9,53); // для Меги


byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"}; //возможные номера труб


byte button1 = 3; // кнопка на 3 цифровом

byte button2 = 4; // кнопка на 4 цифровом

byte button3 = 5; // кнопка на 3 цифровом


byte transmit_data[3]; // массив, хранящий передаваемые данные

byte latest_data[3]; // массив, хранящий последние переданные данные

boolean flag; // флажок отправки данных


void setup() {

Serial.begin(9600); //открываем порт для связи с ПК


pinMode(button1, INPUT_PULLUP); // настроить пин кнопки

pinMode(button2, INPUT_PULLUP); // настроить пин кнопки

pinMode(button3, INPUT_PULLUP); // настроить пин кнопки


radio.begin(); //активировать модуль

radio.setAutoAck(1); //режим подтверждения приёма, 1 вкл 0 выкл

radio.setRetries(0, 15); //(время между попыткой достучаться, число попыток)

radio.enableAckPayload(); //разрешить отсылку данных в ответ на входящий сигнал

radio.setPayloadSize(32); //размер пакета, в байтах


radio.openWritingPipe(address[0]); //мы - труба 0, открываем канал для передачи данных

radio.setChannel(0x60); //выбираем канал (в котором нет шумов!)


radio.setPALevel (RF24_PA_MAX); //уровень мощности передатчика. На выбор RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX

radio.setDataRate (RF24_250KBPS); //скорость обмена. На выбор RF24_2MBPS, RF24_1MBPS, RF24_250KBPS

//должна быть одинакова на приёмнике и передатчике!

//при самой низкой скорости имеем самую высокую чувствительность и дальность!!


radio.powerUp(); //начать работу

radio.stopListening(); //не слушаем радиоэфир, мы передатчик

}


void loop() {


transmit_data[0] = digitalRead(button1); // сигнал с кнопки

transmit_data[1] = digitalRead(button2); // сигнал с кнопки

transmit_data[2] = digitalRead(button3); // сигнал с кнопки


for (int i = 0; i < 3; i++) { // в цикле от 0 до числа каналов

if (transmit_data[i] != latest_data[i]) { // если есть изменения в transmit_data

flag = 1; // поднять флаг отправки по радио

latest_data[i] = transmit_data[i]; // запомнить последнее изменение

}

}


if (flag == 1) {

radio.powerUp(); // включить передатчик

radio.write(&transmit_data, sizeof(transmit_data)); // отправить по радио

flag = 0; //опустить флаг

radio.powerDown(); // выключить передатчик

}

RX

#include <SPI.h>

#include "nRF24L01.h"

#include "RF24.h"

RF24 radio(9, 53); // "создать" модуль на пинах 9 и 10 Для Уно

//RF24 radio(9,53); // для Меги


byte recieved_data[3]; // массив принятых данных

byte relay1 = 2; // реле на 2 цифровом

byte relay2 = 3; // реле на 3 цифровом

byte relay3 = 4; // реле на 4 цифровом


byte address[][6] = {"1Node", "2Node", "3Node", "4Node", "5Node", "6Node"}; //возможные номера труб


void setup() {

Serial.begin(9600); //открываем порт для связи с ПК


pinMode(relay1, OUTPUT); // настроить пин реле как выход

pinMode(relay2, OUTPUT); // настроить пин реле как выход

pinMode(relay3, OUTPUT); // настроить пин реле как выход


radio.begin(); //активировать модуль

radio.setAutoAck(1); //режим подтверждения приёма, 1 вкл 0 выкл

radio.setRetries(0, 15); //(время между попыткой достучаться, число попыток)

radio.enableAckPayload(); //разрешить отсылку данных в ответ на входящий сигнал

radio.setPayloadSize(32); //размер пакета, в байтах


radio.openReadingPipe(1, address[0]); //хотим слушать трубу 0

radio.setChannel(0x60); //выбираем канал (в котором нет шумов!)


radio.setPALevel (RF24_PA_MAX); //уровень мощности передатчика. На выбор RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX

radio.setDataRate (RF24_250KBPS); //скорость обмена. На выбор RF24_2MBPS, RF24_1MBPS, RF24_250KBPS

//должна быть одинакова на приёмнике и передатчике!

//при самой низкой скорости имеем самую высокую чувствительность и дальность!!


radio.powerUp(); //начать работу

radio.startListening(); //начинаем слушать эфир, мы приёмный модуль

}


void loop() {

byte pipeNo;

while ( radio.available(&pipeNo)) { // слушаем эфир со всех труб

radio.read( &recieved_data, sizeof(recieved_data) ); // чиатем входящий сигнал

digitalWrite(relay1, recieved_data[0]); // подать на реле сигнал с 0 места массива

//то бишь 0 или 1

digitalWrite(relay2, recieved_data[1]); // подать на реле сигнал с 0 места массива

//то бишь 0 или 1

digitalWrite(relay3, recieved_data[2]); // подать на реле сигнал с 0 места массива

//то бишь 0 или 1


}

Показать полностью
[моё] Arduino Nrf24l01 Длиннопост Текст
15
98
29945
8 лет назад
Сообщество Ремонтёров

Плата питания для nrf24l01⁠⁠

Плата питания для nrf24l01 Arduino, Nrf24l01, Счастье, Ремонт техники
Показать полностью 1
[моё] Arduino Nrf24l01 Счастье Ремонт техники
23
129
Dionisnation
Dionisnation
8 лет назад
TECHNO BROTHER

Рация на Ардуино + NRF24L01 2.4ГГц⁠⁠

Давно хотел сделать что то подобное))) В скором времени замучу и себе

Arduino Nrf24l01 Рация Своими руками Интересное Видео
30
Посты не найдены
О Нас
О Пикабу
Контакты
Реклама
Сообщить об ошибке
Сообщить о нарушении законодательства
Отзывы и предложения
Новости Пикабу
RSS
Информация
Помощь
Кодекс Пикабу
Награды
Команда Пикабу
Бан-лист
Конфиденциальность
Правила соцсети
О рекомендациях
Наши проекты
Блоги
Работа
Промокоды
Игры
Скидки
Курсы
Зал славы
Mobile
Мобильное приложение
Партнёры
Промокоды Biggeek
Промокоды Маркет Деливери
Промокоды Яндекс Путешествия
Промокоды М.Видео
Промокоды в Ленте Онлайн
Промокоды Тефаль
Промокоды Сбермаркет
Промокоды Спортмастер
Постила
Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии