Распиновка nrf24l01: Как работает радиомодуль nRF24L01 + с Arduino. Описание, распиновка, подключение, datasheet

Содержание

Как работает радиомодуль nRF24L01 + с Arduino. Описание, распиновка, подключение, datasheet

Главная » Arduino » Как работает радиомодуль nRF24L01 + с Arduino. Описание, распиновка, подключение, datasheet

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

И когда дело доходит до недорогих, но надежных 2-полосных радиочастотных решений, никто не справится с этой задачей лучше, чем приемопередающий модуль nRF24L01 + от Nordic Semiconductor.

Модуль приемопередатчика nRF24L01 + (plus) часто можно приобрести в  онлайн магазинах менее чем за два доллара, что делает его одним из самых недорогих вариантов передачи данных, которые вы можете найти. И что самое приятное, то что эти модули малогабаритные, что позволяет использовать беспроводной интерфейс практически в любом проекте.

Обзор модуля nRF24L01+

Радиочастота

Приемопередающий модуль nRF24L01 + предназначен для работы  по всему миру в диапазоне частот ISM 2,4 ГГц и использует для передачи данных GFSK модуляцию. Скорость передачи данных может составлять 250 Кбит/с, 1 Мбит/с и 2 Мбит/с.

Что такое диапазон ISM 2,4 ГГц?

Полоса 2,4 ГГц является одним из промышленных, научных и медицинских (ISM) диапазонов, зарезервированных на международном уровне для использования в нелицензированных маломощных устройствах. Примерами являются беспроводные телефоны, устройства Bluetooth, устройства ближней радиосвязи (NFC) и беспроводные компьютерные сети (WiFi), которые используют частоты ISM.

Потребляемая мощность

Рабочее напряжение модуля составляет от 1,9 до 3,6 В, но хорошая новость заключается в том, что выводы согласуются с 5 В логикой, поэтому мы можем легко подключить его к Arduino или любому 5 В логическому микроконтроллеру без использования какого-либо преобразователя логического уровня.

Модуль поддерживает программируемую выходную мощность, а именно: 0 дБм, -6 дБм, -12 дБм или -18 дБм и потребляет невероятно мало, около 12 мА во время передачи при 0 дБм, что даже ниже, чем у одного светодиода.

И что самое приятное, он потребляет 26 мкА в режиме ожидания и 900 нА в режиме отключения. Вот почему данный модуль является беспроводным устройством для приложений с низким энергопотреблением.

Интерфейс

Модуль nRF24L01 + обменивается данными через 4-контактный последовательный интерфейс (SPI) с максимальной скоростью передачи данных 10 Мбит/с. Все параметры, такие как частотный канал (125 выбираемых каналов), выходная мощность (0 дБм, -6 дБм, -12 дБм или -18 дБм) и скорость передачи данных (250 кбит/с, 1 Мбит/с или 2 Мбит/с), можно настроить через SPI интерфейс.

Шина SPI использует концепцию Master и Slave, и в большинстве распространенных приложений: Arduino является Master, а модуль приемопередатчика nRF24L01 + — Slave.  В отличие от шины I2C количество ведомых на шине SPI ограничено, на Arduino Uno можно использовать максимум два ведомых SPI, т.е. два модуля приемопередатчика nRF24L01 +.

Характеристики nRF24L01 +

Частотный диапазон 2,4 ГГц ISM Band
Скорость передачи по воздуху, max 2 Мбит / с
Формат модуляции GFSK
Максимум. Выходная мощность 0 дБм
Рабочее напряжение питания 1,9–3,6 В
Ток потребления, max 13,5 мA
Ток в режиме ожидания, min 26 мкA
Логические Входы 5 В совместимый
Дальность связи 800+ м (по прямой видимости)

Более подробную информацию по модулю можно посмотреть в datasheet.

Инвертор 12 В/ 220 В

Инвертор с чистой синусоидой, может обеспечивать питание переменно…

Подробнее

На основе чипа nRF24L01 + доступно множество модулей.  Ниже приведены самые популярные версии.

nRF24L01 + Беспроводной модуль

В первой версии используется встроенная антенна. Это позволило создать более компактную версию модуля. Однако небольшая антенна также означает меньшую дальность передачи. С этой версией модуля вы сможете общаться на расстоянии до 

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

nRF24L01 + PA LNA модуль с внешней антенной

Вторая версия поставляется с разъемом SMA и внешней антенной, но это не основное отличие данной версии. Реальное отличие состоит в том, что эта версия поставляется со специальным чипом RFX2401C, который объединяет схемы коммутации PA, LNA и приема-передачи. Этот чип расширения диапазона вместе с внешней антенной помогает модулю достичь значительно большей дальности передачи — около 1000 м.

Что такое PA LNA?

PA обозначает усилитель мощности. Он просто увеличивает мощность сигнала, передаваемого с чипа nRF24L01 +.  LNA означает усилитель с низким уровнем шума. Функция LNA состоит в том, чтобы чрезвычайно слабый и неопределенный сигнал от антенны (обычно порядка микровольт или ниже -100 дБм) усилить  до более приемлемого уровня (обычно около 0,5…1 В)

Малошумящий усилитель (LNA) приемного тракта и усилитель мощности (PA) тракта передачи подключаются к антенне через дуплексер, который разделяет два сигнала и предотвращает перегрузку чувствительного входа LNA относительно мощного выхода PA.

За исключением этой разницы, оба модуля являются совместимыми для использования с Arduino. Это означает, что если вы строите свой проект с одним из них, то вы можете просто отключить его и использовать другой без необходимости вносить какие-либо изменения в код.

Как работает радиомодуль nRF24L01 +?

Частота RF канала

Модуль приемопередатчика nRF24L01 передает и принимает данные на определенной частоте, называемой каналом.  Кроме того, чтобы два или более приемопередающих модуля могли обмениваться данными друг с другом, они должны находиться на одном канале. Этот канал может быть любой частоты в диапазоне ISM 2,4 ГГц или, если быть более точным, он может составлять от 2,400 до 2,525 ГГц (от 2400 до 2525 МГц).

Каждый канал занимает полосу частот менее 1 МГц. Это дает нам 125 возможных каналов с интервалом 1 МГц. Таким образом, модуль может использовать 125 различных каналов, что дает возможность иметь сеть из 125 независимо работающих модулей в одном месте.

Канал занимает полосу пропускания менее 1 МГц при скорости передачи данных 250 Кбит/с и 1 Мбит/с. Однако при скорости передачи данных 2 Мбит/с полоса пропускания 2 МГц занята (шире, чем разрешение настройки частоты канала RF). Таким образом, чтобы обеспечить неперекрывающиеся каналы и уменьшить перекрестные помехи в режиме 2 Мбит/с, вам нужно сохранить дистанцию в 2 МГц между двумя каналами.

Частота выбранного вами канала устанавливается по следующей формуле:

Например, если вы выберете 108 в качестве канала для передачи данных, частота радиочастотного канала вашего канала будет 2508 МГц (2400 + 108).

NRF24L01+ Multiceiver

NRF24L01 + предоставляет функцию под названием Multiceiver. MultiCeiver — это аббревиатура от «Multiple Transmitters Single Receiver», что переводится как «Много Передатчиков Один Приёмник».

Здесь каждый радиочастотный канал логически разделен на 6 параллельных каналов данных, называемых Data Pipes.  Другими словами, канал данных является логическим каналом в физическом радиоканале. Каждый канал данных имеет свой физический адрес (адрес канала данных) и может быть настроен. Это можно проиллюстрировать следующим образом:

nRF24L01 + Multiceiver — несколько передатчиков, один приемник

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

Расширенный протокол ShockBurst

Модуль приемопередатчика nRF24L01  использует структуру пакета, известную как Enhanced ShockBurst. Эта простая структура пакета разбита на 5 различных полей, что показано ниже:

Первоначальная структура ShockBurst состояла только из полей Preamble, Address, Payload и Cyclic Redundancy Check (CRC). Усовершенствованный ShockBurst обеспечил более широкие функциональные возможности для более совершенной связи с использованием недавно представленного поля управления пакетами (PCF).

Эта новая структура хороша по ряду причин. Во-первых, она допускает полезную нагрузку переменной длины с спецификатором длины полезной нагрузки, то есть размер полезной нагрузки может варьироваться от 1 до 32 байтов.

Во-вторых, она предоставляет каждому отправленному пакету идентификатор пакета, который позволяет принимающему устройству определять, является ли сообщение новым или было ли оно повторно передано (и, таким образом, может быть проигнорировано).

Наконец, самое главное, каждое сообщение может запросить подтверждение, когда оно получено другим устройством.

nRF24L01 + Автоматическая обработка пакетов

Теперь давайте обсудим три сценария, чтобы лучше понять, как два модуля nRF24L01 + взаимодействуют друг с другом.

Транзакция с подтверждением и прерыванием

Это пример положительного сценария. Здесь передатчик начинает связь, отправляя пакет данных получателю. Как только весь пакет передан, он ожидает (около 130 мкс) подтверждения приема пакета (ACK).

Когда приемник получает пакет, он отправляет пакет ACK передатчику. При получении пакета ACK передатчик выдает сигнал прерывания (IRQ), чтобы указать, что  готовы новые данные.

Транзакция с потерянным пакетом данных

Это негативный сценарий, когда необходима повторная передача из-за потери переданного пакета. После того, как пакет передан, передатчик ожидает получения пакета ACK.

Если передатчик не получает его в течение времени автоматической повторной передачи (ARD: Auto-Retransmit-Delay), пакет передается повторно.  Когда повторно переданный пакет принят приемником, передается пакет ACK, который, в свою очередь, генерирует прерывание в передатчике.

Транзакция с потерянным подтверждением

Это опять-таки негативный сценарий, когда требуется повторная передача из-за потери пакета ACK. Здесь, даже если приемник получает пакет с первого раза, то из-за потери пакета ACK, передатчик считает, что приемник вообще не получил пакет.

Таким образом, после того, как время ARD истекло, он повторно передает пакет. Теперь, когда приемник получает пакет, содержащий тот же идентификатор пакета, что и предыдущий, он отбрасывает его и снова отправляет ACK-пакет.

Вся эта обработка пакетов выполняется автоматически чипом nRF24L01 + без участия микроконтроллера.

Распиновка модуля приемопередатчика nRF24L01 +

Давайте посмотрим на распиновку обеих версий радиомодуля nRF24L01 +.

  • GND — это контакт заземления.
  • VCC — обеспечивает питание для модуля.  Это может быть где-то от 1,9 до 3,9 вольт. Вы можете подключить его к выводу 3,3 В вашей Arduino. Помните, что подключение его к выводу 5 В может привести к повреждению вашего модуля nRF24L01 +!
  • CE (Chip Enable) — активный-HIGH вывод. При выборе nRF24L01 будет либо передавать, либо получать, в зависимости от того, в каком режиме он находится в данный момент.
  • CSN (Chip Select Not) — активный-LOW вывод и обычно поддерживается на высоком уровне. Когда этот вывод становится низким, nRF24L01 начинает прослушивать данные на шине SPI и обрабатывает их соответствующим образом.
  • SCK (Serial Clock) — принимает тактовые импульсы, предоставляемые шиной SPI Master.
  • MOSI (Master Out Slave In) — является входом SPI для nRF24L01.
  • MISO (Master In Slave Out) — это выход SPI от nRF24L01.
  • IRQ — это вывод прерывания, который может предупредить мастер, когда новые данные доступны для обработки.

В следующей статье рассмотрим вопрос подключения модуля nRF24L01 + к Arduino.

 

Тестер транзисторов / ESR-метр / генератор

Многофункциональный прибор для проверки транзисторов, диодов, тиристоров…

Подробнее

Радиомодуль NRF24L01 2.4ГГц с внешней антенной

Радиомодуль RKP-NRF24L01+PA+LNA с внешней антенной для Arduino – это модуль приемопередатчика на частоте 2.4 ГГц.

  • Радио модуль для Arduino RKP-NRF24L01+PA+LNA позволяет связать устройства радиоканалом передачи данных.
  • Модуль предназначен для создания различных робототехнических проектов. Например, для управления мобильным роботом. Или для сбора показаний дистанционных датчиков (один радиомодуль может держать связь одновременно с множеством других). Для построения беспроводных сетей «умного дома», как сканер радиочастот и многое другое.
  • Модуль работает в диапазоне частот 2.4~2.5 ГГц, что обеспечивает достаточно высокую скорость передачи данных и на большие расстояния (до 1000 м на открытом пространстве). Встроенный винтовой разъём позволяет заменять антенну, а усилитель радиосигнала – увеличить дальность связи.
  • Модуль поддерживает LNA и PA усиление.
  • Радиомодуль RKP-NRF24L01+PA+LNA это одновременно и цифровой приемник и передатчик. Соответственно для наладки связи нужно как минимум два таких радио модуля.
  • Дальность радиомодуля RKP-NRF24L01+PA+LNA будет напрямую зависеть от скорости передачи данных. При скорости 2 Мбит/с радиус действия составит 520 м, при скорости 1 Мбит/с – 750 м, при 250 кбит/сек – до 1.1 км. Данные приведены для прямой видимости. Максимальная длина передаваемого пакета – 32 байта.
  • Радиомодуль способен работать на одном канале максимум с шестью передатчиками одновременно и одним приёмником. Но если некоторые устройства будут иметь одинаковые адреса, их количество может быть увеличено.
  • Микросхема nRF24L01 имеет функции энергосбережения.
  • Модуль поддерживает пересылку потерянных пакетов.
  • Радио модуль RKP-NRF24L01+PA+LNA прост в использовании и без проблем подключается к контроллерам Arduino.

Характеристики:
Напряжение: 3 — 3.6 В
Несущая частота: 2.4 ~2.5 ГГц
Расстояние передачи/приема: до 1000 м (на открытом пространстве)
Скорость передачи/приема: 2 Мбит/с до 520 м (открытое пространство)
Скорость передачи/приема: 1 Мбит/с до 750 м (открытое пространство)
Скорость передачи/приема: 250 кбит/сек до 1000 м (открытое пространство)

Максимальная выходная мощность: +20 дБм
Усиление PA: 20 дцБ
Усиление LNA: 10 дцБ
Усиление антенны: 2 дБи
Пиковое потребление при передаче: 115 мА
Пиковое потребление при приеме: 45 мА
Интерфейс: SPI
Размер: 40.8 x 15.3 мм
Количество каналов: 128

Связь происходит в диапазоне частот 2,4–2.527 ГГц. Частота, на которой будут работать модули, определяется номером канала. Они имеют шаг 1 МГц. Каналу 0 соответствует частота 2,4 ГГц, каналу 76 частота 2,476 Ггц.
Соответственно есть возможность задать номер канала, мощность и скорость передачи сигнала.

Распиновка модуля RKP-NRF24L01+PA+LNA


Обозначение выводов RKP-NRF24L01+
GND – общий провод
VCC – питание 3,3 В
CE – включение радиотракта микросхемы высоким уровнем
CSN – Chip Select Not активный низкий уровень. Если установлен низкий уровень, то модуль отвечает на SPI команды. Это более важный сигнал выбора МС чем сигнал CE

SCK – тактирование шины SPI, до 10 МГц
MOSI – используется для передачи данных от микроконтроллера к устройству
MISO – для передачи данных из устройства в микроконтроллер
IRQ – выход сигнала для запроса прерывания при отправке и получении пакета

Подключение к Arduino
Радиомодуль нельзя подключать к источнику питания 5 В без адаптера, оптимальное напряжение питания составляет от 3.3В до 3.6В.

Радиомодуль RKP-NRF24L01+PA+LNA подключается к Ардуино при помощи SPI интерфейса. Существует несколько библиотек Arduino для работы с радиомодулями nRF24L01. От выбранной библиотеки может зависеть способ подключения модуля к Ардуино. Наиболее популярные библиотеки — RF24 и Mirf.

Распиновка

nRF24L01, функции, характеристики, работа и подключение Arduino Приемопередатчик означает, что один и тот же модуль может использоваться как передатчик или приемник. Энергопотребление модуля очень низкое, всего 9,0 мА при выходной мощности -6 дБм и 12,3 мА в режиме RX, что даже меньше, чем у светодиода. Его максимальная дальность действия составляет до 100 метров при использовании на открытом пространстве с антенной. Распиновка и технические характеристики NRF24L01 приведены ниже.

Модуль nRF24L01

 

nRF24L01   ВЫВОД: nRF24L01 ВЫВОД .
Номер контакта 9 0004 Название контакта Характеристики контактов
1 ВКЦ Этот контакт используется для подачи питания на модуль. Напряжение может варьироваться от 1,9 до 3,9 вольт. Итак, мы можем подключить его напрямую к выходу 3,3 В нашего Arduino.
2 CSN                (чип не выбран) Это активный НИЗКИЙ контакт, который обычно поддерживается ВЫСОКИМ. Нам нужно держать этот контакт высоким, за исключением случаев, когда мы отправляем устройству команду SPI или получаем данные по шине SPI от микроконтроллера.
3
MOSI              (главный выход подчиненный вход)
Это вход SPI для nRF24L01. Используется для приема данных от микроконтроллера
4 IRQ Это вывод прерывания, который предупреждает мастер, когда для обработки доступны новые данные.
5 MISO              (ведущий в подчиненном выходе) Это выход SPI от nRF24L01. Используется для отправки данных на микроконтроллер
6 SCK (последовательные часы) Принимает тактовые импульсы от ведущего устройства шины SPI.
7 CE (включение чипа) Это контакт включения модуля, который используется для выбора режима nRF24L01, который либо передает, либо принимает, в зависимости от того, в каком режиме он находится в данный момент.
8 Земля Это заземляющий контакт. Обычно его маркируют, заключая штифт в квадрат, чтобы его можно было использовать для идентификации других штифтов.

ПРИМЕЧАНИЕ. Не подключайте контакт VCC напрямую к контакту 5V Arduino. Используйте регулятор на 3,3 В.

 

NRF24l01 Технические характеристики модуля:
Диапазон частот 2,4 ГГц Диапазон ISM
Максимальная скорость передачи данных по эфиру 2 Мбит/с
Формат модуляции ГФСК
Макс. Выходная мощность 0 дБм
Рабочее напряжение питания от 1,9 В до 3,6 В
Макс. Рабочий ток 13,5 мА
Мин. Текущий (режим ожидания) 26 мкА
Логические входы Устойчивость к 5 В
Диапазон связи 800+ м (прямая видимость)

Модуль приемопередатчика состоит из полностью интегрированного синтезатора частоты, кварцевого генератора, усилителя, демодулятора, модулятора и механизма протокола Enhanced ShockBurst.

Особенности NRF24L01: Модуль nRF24L01
  • Настоящий одночиповый трансивер GFSK
  • Полный канальный уровень OSI в аппаратном обеспечении
  • Усовершенствованный протокол ShockBurst™.
  • Автоматический ACK (подтверждение) и повторная передача.
  • Вычисление адреса и CRC (проверка циклическим избыточным кодом).
  • Скорость передачи данных 1 или 2 Мбит/с (нормальное состояние)
  • Скорость цифрового интерфейса (SPI) 0-8 Мбит/с
  • 125 Работа канала RF
  • Короткое время переключения разрешает скачкообразную перестройку частоты
  • Полностью РЧ-совместимость с nRF24XX
  • Контактные площадки ввода сигнала, устойчивые к напряжению 5 В
  • 20-контактный корпус (QFN20 4×4 мм)
  • Использует сверхдешевый кристалл +/- 60 ppm
  • Использует недорогие микросхемы индуктивности и двухслойную печатную плату
  • .
  • Диапазон напряжения питания: от 1,9 до 3,6 В

 

Работа модуля приемопередатчика NRF24L01:

Модуль приемопередатчика nRF24L01 отправляет и принимает данные на определенной частоте, называемой Канал . При подключении двух или более модулей приемопередатчика для связи друг с другом они должны находиться на одном и том же канале. Частота этого канала находится в диапазоне ISM 2,4 ГГц или в диапазоне от 2,400 до 2,525 ГГц (от 2400 до 2525 МГц).

Каждый канал занимает полосу пропускания менее 1 МГц. Это дает нам ровно 125 возможных каналов с интервалом в 1 МГц, т. е. (2525 – 2400)/1 = 125 каналов.

 

Модуль nRF24L01 Подключение к Arduino:

Поскольку рабочее напряжение модуля находится в диапазоне от 1,9 до 3,6 В, вы можете напрямую подключить контакт VCC к 3,3 В. Но другие контакты модуля устойчивы к напряжению 5 В и могут быть подключены к контактам Arduino напрямую.

MOSI, MISO и SCK являются контактами SPI (последовательный периферийный интерфейс) и должны быть подключены только к контактам SPI Arduino. Разные платы Arduino имеют разные выводы SPI. Ниже приведены выводы SPI некоторых популярных плат Arduino:

CSN и CE могут быть подключены к любому цифровому выводу Arduino. Поскольку они используются для установки модуля в режим передатчика или приемника. Вывод IRQ является необязательным и используется только тогда, когда требуется прерывание.

 

Соединения передатчика nRF24L01

 

Соединения передатчика nRF24l01 с Arduino

**Источник изображения: Electronicwings

90 019 nRF24L01
Ардуино УНО
ВКЦ 3,3 В
Земля ЗЕМЛЯ
ССК Д13
МИСО Д12
МОСИ Д11
ДНС Д7
СЕ Д8

 

Соединения приемника nRF24L01 Соединения приемника nRF24L01 Arduino

**Источник изображения: Electronicwings

9001 9 nRF24L01
Ардуино УНО
ВКЦ 3,3 В
Земля ЗЕМЛЯ
ССК Д13
МИСО Д12
МОСИ Д11
ДНС Д7
СЕ Д8

Полное руководство по Arduino – nRF24L01 : Взаимодействие nRF24L01 с Arduino

Применение модуля nRF24L01:
  • джойстик
  • Бесключевой доступ
  • Беспроводная передача данных
  • Наблюдение
  • Системы сигнализации и безопасности
  • Домашняя автоматизация
  • Автомобилестроение
  • Телеметрия
  • Интеллектуальное спортивное оборудование
  • Промышленные датчики
  • Игрушки

Читать похожие статьи:

| Распиновка ВЧ модуля передатчика и приемника 433 МГц

| HC-06 Распиновка, технические характеристики и соединения Arduino

Рубрики ИС и КОМПОНЕНТЫ, Распиновка Распиновка

NRF24L01 — всесторонний обзор модуля NRF24L01 Мы рассмотрим распиновку nrf24L01, функции и способы использования модуля NRF24L01 в последовательной связи.

Какая распиновка NRF24L01?

Рис. 1: Рация-приемопередатчик

Как было сказано ранее, это приемопередатчик. Следовательно, он может работать и как приемник, и как передатчик. Кроме того, он имеет относительно низкое энергопотребление, учитывая, что ему требуется всего 90,0 мА при выходной мощности -6 дБм. В режиме RX модуль потребляет 12,3 мА, что меньше, чем требуется для работы светодиода.

Также модуль обладает широким максимальным радиусом действия до 100 м при работе на открытом пространстве с внешней антенной.

Конфигурация контактов NRF24L01

В таблице ниже представлена ​​разводка контактов модуля радиочастотного приемопередатчика.

Номер контакта Название контакта Назначение контакта
1 VCC Это контакт питания модуля, через который подается входное напряжение 1,9–3,9 В.
2 Выбор микросхемы не (CSN) Вы всегда должны держать вывод активного-НИЗКИЙ на высоком уровне для облегчения связи SPI.
3 Master Out Slave In (MOSI) Терминал действует как входной контакт SPI nRF24L01, отвечающий за прием данных от микроконтроллера.
4 IRQ Он связывается с мастером при появлении новых данных для обработки.
5 Master In Slave Out (MISO) Выходной терминал SPI nRF24L01 отправляет данные на микроконтроллер.
6 Последовательный тактовый сигнал (SCK) На контакт поступают тактовые импульсы от ведущего устройства шины SPI.
7 Включение чипа (CE) Работает, когда модуль включает контакт. Кроме того, это удобно при выборе, следует ли принимать или передавать данные.
8 GND Штырек заземления, часто помечаемый квадратным корпусом для облегчения идентификации, удобен для заземления цепи.

Рис. 2: Микросхема приемопередатчика

  1. Работает в диапазоне напряжений питания от 1,9 до 3,6 В и требует двухслойной печатной платы и дешевых катушек индуктивности.
  2. Кроме того, модуль приемопередатчика NRF24L01 поставляется в 20-контактном корпусе и требует недорогого кристалла +/- 60 ppm.
  3. В-третьих, модуль имеет толерантные контактные площадки для ввода сигнала 5 В и совместим с другими модулями nRF24XX.
  4. Модуль приемопередатчика также поддерживает скачкообразную перестройку частоты благодаря относительно короткому времени переключения.
  5. Кроме того, модуль имеет 125 радиочастотных каналов и скорость цифрового интерфейса SPI от нуля до 8 Мбит/с.
  6. Кроме того, он позволяет выполнять проверку циклическим избыточным кодом и вычисление адреса.
  7. Наконец, он оснащен коммуникационным протоколом Enhanced ShockBurst™ и функцией автоматического подтверждения и повторной передачи.

Технические характеристики

Рис. 3. Модуль беспроводного приемопередатчика NRF24L01

  1. Частотный диапазон модуля находится в диапазоне 2,4 ГГц и обеспечивает максимальную скорость передачи данных 2 Мбит/с.
  2. Во-вторых, он работает в формате модуляции GFSK и имеет максимальную выходную мощность 0 дБм.
  3. Технические характеристики питания включают максимальный рабочий ток 13,5 мА, а в режиме ожидания требуется минимальный ток 26 мкА.
  4. Наконец, он имеет полноразмерную дальность связи на линии прямой видимости более 800 м.

Как использовать коммуникационный модуль NRF24L01

Вы можете подключить модуль ко всем интеллектуальным платам и микроконтроллерам.

Взаимодействие с Arduino

На приведенной ниже схеме показано, как подключить модуль к Arduino UNO.

Помните, что модуль может работать и как приемник, и как передатчик.

Двунаправленная беспроводная связь с двумя NRF24L01 и Arduino

Вы должны запустить коды приемника и передатчика на Arduino Uno в этом режиме.

Кроме того, для двунаправленной связи необходимо создание двух каналов/каналов. Кроме того, также необходимо определить каждую из линий. Обратите внимание, что адрес записи основного Arduino является адресом чтения вторичного Arduino, и наоборот.

Теперь используйте радио. Прекратите прослушивание (), установите основной Arduino в качестве передатчика, запустив приведенный ниже код.

Далее используйте радио. Функция Start listen() устанавливает вторичный Arduino в качестве приемника с помощью приведенного ниже кода.

В этом примере коды передатчика и приемника следующие:

Код передатчика

Примечательно, что эта структура данных может иметь максимум 32 байта.

Код приемника

Мониторинг датчиков на основе NRF24L01 и Arduino

Эта схема удобна в тех случаях, когда необходимы мониторинг и управление. Таким образом, используя приведенные ниже коды, вы можете управлять работой светодиодов, подключенных к двум платам Arduino Uno.

Код передатчика

Код приемника

Обратите внимание, что приведенная ниже программа может управлять функциями как приемника, так и передатчика.

Пример в качестве передатчика

Модуль передает данные с одного частотного канала/адреса передатчика на другой при работе в качестве передатчика. Следовательно, чтобы использовать его в качестве передатчика, загрузите код ниже.

Детали кода передатчика

Следующие библиотеки отвечают за связь Arduino с модулем в качестве передатчика.

Пример использования в качестве приемника

Процесс использования модуля в качестве приемника аналогичен процессу его использования в качестве передатчика. Но есть три основных модификации:  

  1. Для приемника требуется адресный канал/диапазон адресов. В предыдущем примере с передатчиком в этом не было необходимости.
  2. Также модуль нуждается в инициализации в качестве приемника для работы в этом режиме.
  3. В-третьих, также требуется методика получения и проверки данных.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *