Оглавление:

NRF24L01 Беспроводная передача данных между Arduino: 10 шагов
NRF24L01 Беспроводная передача данных между Arduino: 10 шагов

Видео: NRF24L01 Беспроводная передача данных между Arduino: 10 шагов

Видео: NRF24L01 Беспроводная передача данных между Arduino: 10 шагов
Видео: 3 способа беспроводной передачи данных между Arduino 2024, Ноябрь
Anonim
NRF24L01 Беспроводная передача данных между Arduino
NRF24L01 Беспроводная передача данных между Arduino

NRF24L01 - это маломощный беспроводной радиочастотный модуль 2,4 ГГц от Nordic Semiconductors. Он может работать со скоростью от 250 кбит / с до 2 Мбит / с. Если он работает на открытом пространстве с более низкой скоростью передачи, он может достигать 300 футов. Таким образом, он используется в приложениях малого радиуса действия, таких как домашняя автоматизация, игрушки, игровые контроллеры и т. Д.

Модуль NRF24L01 может как передавать, так и принимать данные. Он использует протокол SPI для связи с микроконтроллерами. Следовательно, вы можете использовать модуль с Arduino на контактах связи SPI. Мы увидим, как подключить этот модуль к Arduino и управлять светодиодом от другого Arduino. Благодаря разносу 1 МГц в рабочем диапазоне 2400–2525 МГц (2,40–2,525 ГГц) он может дать возможность иметь сеть из 125 независимо работающих модемов в одной и той же области. Каждый канал может иметь до 6 адресов и одновременно обмениваться данными с 6 другими устройствами.

Шаг 1. Особенности NRF24L01

Функции:

  • Рабочее напряжение: от 9 В до 3,6 В
  • Напряжение питания: 3 В
  • Напряжение на контакте: допуск 5 В (нет необходимости в преобразователях уровня)
  • Недорогой однокристальный радиочастотный приемопередатчик 2,4 ГГц GFSK IC
  • Рабочий диапазон (открытое пространство): 300 футов (можно увеличить до 3000 футов с помощью внешней антенны)

В этом руководстве мы будем отправлять и получать данные, используя две настройки модуля NRF24L01. Одна настройка предназначена для стороны передатчика, а другая - для стороны приемника. Мы отправляем команды в виде строки «ON» (любое сообщение, которое вы хотите отправить) на стороне передатчика. На стороне приемника мы напечатаем то же сообщение на Serial Monitor, которое было отправлено с другой стороны.

Чтобы узнать, как создать проект по наблюдению за ребенком, используя NRF24L01, посетите здесь

Шаг 2: предварительные условия

Необходимые компоненты:

  • Arduino Uno - 2 шт. (Также можно использовать Nano)
  • Беспроводной радиочастотный модуль NRF24L01 - 2 шт. Перемычки

Библиотеки:

  • Библиотека RF24 -
  • Библиотека SPI

Шаг 3. Сведения о PIN-коде

Детали PIN-кода
Детали PIN-кода
  1. GND - Земля
  2. VCC - источник питания 3,3 В (от 1,9 до 3,6 В)
  3. CE - включение микросхемы
  4. CSN - Chip Select Not
  5. SCK - последовательные часы для шины SPI
  6. MOSI - главный выход, подчиненный вход
  7. MISO - Мастер в подчинении
  8. IRQ - вывод прерывания (активный низкий уровень)

Модуль потребляет от 1,9 В до 3,6 В, но контакты могут выдерживать напряжение до 5 В.

Шаг 4: Подключения SPI для различных плат

Если вы используете Arduino Uno, Pro Mini, Nano или Pro Micro, то выводы SPI такие же, как на следующей принципиальной схеме. Если вы используете Arduino Mega, проверьте контакты SPI, которые отображаются по-разному в зависимости от конструкции оборудования. Проверьте справочную страницу библиотеки SPI, чтобы узнать о различных выводах SPI на разных типах плат. Кроме того, платы Arduino имеют отдельный заголовок ICSP для совместимости с Sheilds.

Шаг 5: Цепи для стороны передатчика и стороны приемника одинаковы для этого примера

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

Схема для стороны передатчика и стороны приемника одинакова для этого примера.

Шаг 6: Код - Сторона передатчика:

Шаг 7: получатель

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

Шаг 8: Код получателя:

Шаг 9: Объяснение:

Описание:

NRF24l01 может действовать как передатчик и приемник. В приведенном выше коде на стороне передатчика мы отправляем текст «ON», и он будет отображаться на стороне приемника через последовательный монитор и включает светодиод, подключенный к выводу 4. NRF24l01 можно идентифицировать по его адресу. Он упоминается в числовой строке. Мы использовали

адрес константного байта [6] = "00001";

Мы использовали здесь «00001» в качестве адреса. Вы можете назначить любую числовую строку для установки адреса. Данные отправляются через канал чтения / записи на NRF24l01. Это временный буфер, в котором хранятся данные для отправки или получения.

Передатчик - Запись данных в трубу:

radio.openWritingPipe (адрес);

Приемник - чтение данных из трубы:

radio.openReadingPipe (0, адрес);

Это простая настройка приема и передачи для модуля NRF. В качестве альтернативы вы можете отправить данные датчика со стороны передатчика и в соответствии со значениями датчика вы можете выполнить некоторые действия на стороне приемника.

Шаг 10: Проект наблюдения за ребенком с использованием NRF24L01

Расширенная версия этого руководства представлена в нашем блоге. Сделайте проект по наблюдению за ребенком, используя модуль NRF24L01.

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

Для получения дополнительных руководств посетите - Блог FactoryForward

Делайте покупки в Интернете на FactoryForward India (Raspberry Pi, Arduino, датчики, детали для роботов, наборы для самостоятельной сборки) и многое другое.

Рекомендуемые: