Количество: 1
Адрес: Проспект Чуй 28/1 (0 этаж)Режим: Пн-Сб 9:30 - 18:00 (Вс Выходной)Написать на WhatsAppПозвонить: 0 (705) 60-33-00
Радиомодуль NRF24L01 2.4 ГГц
Артикул: -
Радиомодуль NRF24L01 2.4 ГГц
Краткое описание:Позволяет передавать данные на расстоянии ~ 100м
Описание
Модель: NRF24l01
Напряжение: 3.3V
Частота: 2.4GHz
Расстояние: 100м на скорости 250кбит/с
Скорость: от 250кбит до 2Мбит
Что можно сделать?
- Управлять роботом, машинкой, сервами и моторами с помощью пульта управления (без компьютера).
- Возможна телеметрия. Сбор данных с удаленных объектов: температура, влажность, данные счетчиков и многое другое.
- Двусторонняя связь между модулями - можно не только принимать данные, но и отправлять команды.
Схема подключения
Рассмотрим скетчи на примере передачи данных от Ультразвукового дальномера (Как подключить Ультразвуковой дальномер HC-SR04 к Arduino UNO) к Компьютеру.
Что понадобится?
1. Две платы Arduino UNO (можно использовать любые другие платы Arduino)
2. Два радиомодуля NRF25L01
Описание
Один модуль подключенный к плате Arduino UNO (схема выше) будет подключен к компьютеру, другой же, после заливки скетча может быть отключен от компьютера и запитан от батареи.
Скетчи
Передатчик
/*Передатчик*/#include <SPI.h>#include <Mirf.h>#include <nRF24L01.h>#include <MirfHardwareSpiDriver.h>#include "Ultrasonic.h"#define MAX_BUFF 32Ultrasonic ultrasonic(4,3); //Trig - 4, Echo - 3void setup(){Serial.begin(9600);Mirf.cePin = 7;Mirf.csnPin = 8;Mirf.spi = &MirfHardwareSpi;Mirf.init();Mirf.setRADDR((byte *)"app1");Mirf.payload = sizeof(unsigned int);// Mirf.channel = 10;Mirf.config();Serial.println("Beginning ... ");}void loop(){unsigned int range;//отправка данныхMirf.setTADDR((byte *)"app2");range = ultrasonic.Ranging(CM);Mirf.send((uint8_t *)&range);while(Mirf.isSending()){}Serial.println(range);delay(100);}
Приемник
/*Приемник*/#include <SPI.h>#include <Mirf.h>#include <nRF24L01.h>#include <MirfHardwareSpiDriver.h>#define MAX_BUFF 32void setup(){Serial.begin(9600);Mirf.cePin = 7;Mirf.csnPin = 8;Mirf.spi = &MirfHardwareSpi;Mirf.init();Mirf.setRADDR((byte *)"app2");Mirf.payload = sizeof(unsigned int);// Mirf.channel = 10;Mirf.config();Serial.println("Beginning ... ");}uint8_t buff[4];int c_count = 0;void loop(){int i;//прием данныхwhile(!Mirf.dataReady()) {}Mirf.getData(buff);Serial.println((unsigned int)*buff);delay(100);}
Закрыть окно
(Окно закроется через сек.)