Фильтр по тематике

Bluetooth low energy, ANT+ и проприетарный протокол на 2,4 ГГц – всё в одном

В статье представлен обзор нового семейства nRF52 систем-на-кристалле (СнК) от Nordic Semiconductor, которое позволяет создавать устройства с использованием протоколов Bluetooth low energy, ANT+ и проприетарного протокола. Рассмотрены возможности новой СнК nRF52832, области её применения и средства разработки, позволяющие максимально быстро приступить к созданию собственных приложений.

10.10.2016 1195 0
Bluetooth low energy, ANT+ и проприетарный протокол на 2,4 ГГц – всё в одном

Новое поколение СнК от Nordic Semiconductor

При решении задач в области передачи небольшого объёма данных (информация с датчиков, команды управления) на расстояниях в десятки метров в устройствах с батарейным питанием, одной из основных проблем является снижение энергопотребления. Существует несколько протоколов, успешно справляющихся с ней – это Bluetooth low energy (также известный как Bluetooth Smart), ANT+, ZigBee, 6LoWPAN. На потребительском рынке наибольшее распространение приобрели стандарты Bluetooth low energy (BLE) и ANT+. В большей степени это связано с поддержкой стандартов крупными игроками на рынке мобильных устройств, такими как Apple и Samsung.

Можно найти предложения с поддержкой этих протоколов у различных производителей полупроводников – Texas Instrument, Broadcom, CSR, Dialog Semiconductor и некоторых других. Но компания Nordic Semiconductor пошла дальше и объединила поддержку стандартов BLE и ANT+ в своей новой СнК серии nRF52 [1].

Основные области применения новой СнК:

  • Интернет вещей;
  • носимая электроника – сенсоры и хабы;
  • Appcessories – сенсоры и хабы;
  • компьютерная периферия;
  • дистанционное управление;
  • радиомаяки;
  • медицинские устройства;
  • спортивные гаджеты;
  • умные часы;
  • датчики умного дома;
  • игрушки;
  • промышленные датчики;
  • управление беспроводной зарядкой A4WP.

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

В настоящее время семейство nRF52 представлено СнК nRF52832, в основе которой лежит мощный 32-разрядный процессор ARM Cortex-M4F c 512 КБ флеш-памяти и 64 КБ ОЗУ. Эта СнК предназначена для реализации беспроводных устройств с ультранизким потреблением энергии. Встроенный приёмопередатчик предназначен для работы в диапазоне 2,4 ГГц и поддерживает протоколы BLE, ANT+, а также проприетарный протокол Gazel от Nordic. На уровне передачи «по воздуху» он совместим с продуктами Nordic Semiconductor других семейств: nRF51, nRF24L и nRF24AP.

Входящий в состав nRF52832 процессор Cortex-M4F позволяет реализовывать требовательные к сложным вычислениям приложения. Интегральная схема поддерживает команды DSP, имеет встроенный блок FPU (Floating Point Unit) для выполнения операций с плавающей точкой, осуществляет выполнение за один такт операции умножения с накоплением и аппаратное деление для реализации энергоэффективной обработки сложных с точки зрения вычислений операций.

СнК nRF52832 является высокоэффективным малопотребляющим устройством, которое может работать в диапазоне питающих напряжений от 1,7 до 3,6 В. Все отдельные периферийные устройства и тактирующие схемы могут гибко отключаться от питания, когда они не используются, минимизируя таким образом энергопотребление. Для этого СнК имеет комплексную автоматизированную и адаптивную систему управления питанием.

В чип встроена поддержка NFC. Так называемое Out-of-Band (OOB) спаривание устройств с использованием NFC упрощает процесс аутентификации между двумя Bluetooth-устройствами, производя обмен аутентификационной информации через NFC-соединение.

Характеристики nRF52832:

  • мультипротокольная 2,4 ГГц СнК;
  • процессор ARM Cortex-M4F;
  • напряжение питания 1,7…3,6 В;
  • память 512 КБ флеш + 64 КБ ОЗУ;
  • одновременная поддержка работы по BLE/ANT;
  • встроенная поддержка NFC-метки для OOB-спаривания;
  • выходная мощность до +4 дБм;
  • чувствительность –96 дБм, BLE;
  • управляемое событиями API;
  • совместимость «по воздуху» с nRF51, nRF24L и nRF24AP;
  • передача данных 2 Мбит/1Мбит;
  • автоматическое управление питанием периферии;
  • конфигурируемые аналоговые и цифровые порты ввода/вывода;
  • 3 × Master/Slave SPI;
  • 2 × I2C;
  • UART (RTS/CST);
  • 3 × PWM;
  • безопасность – AES HS кодирование;
  • RTC;
  • интерфейс цифрового микрофона (PDM);
  • встроенный балун;
  • корпуса – 48-выводной QFN 6 × 6 мм и ультракомпактный WL-CSP 3 × 3,2 мм.

Средства разработки

Для знакомства с возможностями СнК nRF52832 и упрощения процесса разработки Nordic Semocinductor предлагает комплект разработчика nRF52-DK (см. рис. 1).

Комплект nRF52-DK включает:

  • отладочную плату с СнК nRF52832;
  • батарею CR2032;
  • 5 шт. СнК nRF52832 для создания собственных устройств;
  • NFC-антенну.

Отладочная плата совместима со стандартом Arduino Uno rev.3, что даёт возможность использовать в своих разработках Arduino-совместимые платы сторонних производителей.

Плата поддерживается стандартными инструментами командной строки от Nordic для использования их с компиляторами Keil, IAR и GCC. Для осуществления процессов программирования и отладки в плату встроен программатор/отладчик Segger J-Link OB, поддерживаемый стандартными тулчейнами. Плата даёт возможность работать со всеми портами ввода/вывода и интерфейсами СнК, используя коннекторы, и оснащена четырьмя светодиодами и четырьмя тактовыми кнопками, функции которых программируются пользователем. Соответствие интерфейсных выводов платы показано на рисунке 2.

На отладочной плате имеется печатная антенна для работы в диапазоне 2,4 ГГц, коннекторы для подключения внешней NFC-антенны и проведения радиочастотных измерений. Также есть выводы, позволяющие произвести измерение фактического энергопотребления. Для прототипирования устройств с батарейным питанием на плате предусмотрен держатель для батареи типа CR2032, а сама батарея входит в комплект поставки. Напряжение питания может варьироваться в диапазоне 1,7…3,6 В и подаваться от батареи встроенного в плату микро-USB разъёма или же со специализированных выводов питания.

Множество примеров из nRF52-SDK, которые можно бесплатно скачать с сайта Nordic Semiconductor, демонстрируют использование стандартов BLE, ANT+, проприетарного протокола Gazel, а также работу с различной периферией СнК.

Программное обеспечение

SoftDevice

Архитектура программного обеспечения серии nRF52 предлагает чёткое разделение между кодом приложения и встраиваемым стеком беспроводных протоколов BLE, ANT+ и Gazel, называемым SoftDevice (см. рис. 3).

SoftDevices представляют уже скомпилированные и слинкованные бинарные HEX-файлы, а также заголовочные файлы API. Это делает интерфейс похожим на абстрактный драйвер обычного устройства, предоставляющего свои сервисы приложению, как в нашем случае – полный беспроводной протокол. Исходные тексты программ для пользователя недоступны. Код приложения разрабатывается и компилируется независимо от стека беспроводного протокола. Это упрощает разработку и снижает вероятность ошибок. На сайте Nordic представлены три версии стека: S132, S212 и S332. Каждая – с поддержкой различных режимов работы с использованием беспроводных протоколов. Для обновления прошивки «по воздуху» используется Master Boot Record. Возможно независимое обновление SoftDevice, приложения и загрузчика.

ANT+ версии SoftDevices для серии nRF52 доступны для скачивания с сайта Dynastream Innovation [2]. Они поддерживают как исключительно ANT+, так и комбинированные ANT+/Bluetooth Smart программные устройства.

Версия S132 SoftDevice поддерживает центральную (Central) и периферийную (Peripheral) роли устройства для протокола BLE. Возможна одновременная работа с подключением до 8 устройств с одним наблюдателем (Observer) и одним вещателем (Broadcaster). S132 интегрирует в себе контроллер (Controller) и хост (Host), и обеспечивает полный и гибкий API-интерфейс для реализации решений Bluetooth Smart на базе СнК nRF52. При использовании стека SoftDevice управление периферией происходит через API стека, который контролирует рабочий процесс.

S212 SoftDevice является стеком протокола ANT+, который обеспечивает полный и гибкий программный интерфейс API для построения ANT+ решений на базе чипа nRF52832. S212 упрощает совмещение стека протокола ANT+ и приложения на одном процессоре.

S332 SoftDevice представляет собой комбинированное решение для протоколов ANT+ и BLE. Эта версия стека поддерживает все четыре роли Bluetooth low energy (центральная, периферийная, наблюдатель и вещатель), а также протокол ANT+.

Программный комплект разработчика nRF52 (SDK)

SDK с поддержкой серии nRF52 можно скачать с сайта Nordic Semiconductor. Комплект ПО содержит исходные коды библиотек и примеры приложений с использованием функций для работы с беспроводной передачей данных всей периферии СнК: загрузчики проводного и беспроводного обновления прошивок, примеры RTOS и многое другое. nRF52 SDK является хорошей отправной точкой для начала разработки собственных приложений.

nRFgo Studio

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

Вместе с nRFgo Studio устанавливается nRF5x Tools – пакет, включающий JLinkARM, JLink CDC, nRFjprog и mergehex. nRFjprog является инструментом командной строки для программирования чипов серии nRF5x.

Master Control Panel (MCP)

Master Control Panel для 32- и 64-разрядных версий Windows предназначен для работы с USB-донглом nRF51 Dongle (см. рис. 4), миниатюрной версией отладочной платы предшествующего семейcтва nRF51.

Он позволяет тестировать беспроводное подключение: производить поиск устройств, устанавливать Bluetooth-соединение, обнаруживать сервисы и читать их атрибуты, принимать и передавать данные. Вместе с Master Control Panel устанавливается API под названием Master Emulator, с помощью которого можно создать .NET-приложение с ролью мастер-устройства.

nRF Master Control Panel для Android или iOs – это мощный инструмент, который позволяет исследовать разрабатываемые BLE-устройства и соединения между ними на смартфонах. MCP поддерживает множество адаптированных профилей Bluetooth SIG, а также профиль обновления прошивки «по воздуху» Device Firmware Update (DFU) от Nordic Semiconductor.

nRF Sniffer

nRF Sniffer – это программное обеспечение для исследования пакетов, передающихся от одного устройства к другому (см. рис. 5). В качестве устройства, используемого как сниффер, может выступать nRF51 Dongle или же плата nRF52-DK.

Дополнительную информацию по семейству nRF52 можно найти в Инфоцентре сайта Nordic [3].

Как начать разработку

Для знакомства с семейством nRF52 понадобится комплект разработчика nRF52-DK и установка упомянутого программного обеспечения, которое можно бесплатно скачать с сайта Nordic Semiconductor. Nordic рекомендует использовать Keil Microcontroller Development Kit [4], а установщик nRF52 SDK сразу интегрирует примеры и библиотеки в Keil, что упрощает процесс создания проекта приложения. Все примеры в SDK имеют файлы проектов в формате Keil.

1. Запустить скомпилированные примеры

Для быстрого тестирования примеров и работоспособности отладочной платы нет необходимости устанавливать все инструменты и ПО. В составе SDK идут уже скомпилированные HEX-файлы для большинства примеров. Для примеров, которые предполагают беспроводную передачу данных, необходимый SoftDevice уже включен в HEX-файл. Заметим, что SDK не включает скомпилированных примеров использования протокола ANT+.

Чтобы запустить скомпилированный пример, необходимо:

а) загрузить последнюю версию файла nRF5_SDK_x.x.x_xxxxxxxx.zip (например, nRF5_SDK_11.0.0_89a8197.zip) с репозитория [5];
б) распаковать zip-архив в папку, которая будет использоваться для работы с SDK;
в) подключить плату к компьютеру, используя USB-кабель. Компьютер распознает её как стандартный USB-диск;
г) в папке с SDK, перейти к примеру, который вы хотите протестировать, и открыть поддиректорию hex. Например, для очень простого примера Blinky, который не использует SoftDevice, перейти в папку \peripheral\blinky\hex;
д) выбрать HEX-файл для nRF52-DK (PCA10040) и скопировать его на USB-диск, соответствующий отладочной плате;
е) пример начнёт выполняться сразу же после копирования.

2. Скомпилировать и запустить первый пример

Прежде всего, необходимо удалить всю имеющуюся информацию из памяти платы. Если SoftDevice не устанавливался на плату, это можно сделать прямо в Keil, выбрав Flash > Erase. Если же SoftDevice был установлен, то потребуется использовать nRFgo Studio, чтобы убедиться в том, что вся информация удалена. Для этого в nRFgo Studio в разделе Device Manager нужно нажать на кнопку Erase All. Для этих же целей можно воспользоваться и инструментом командной строки nrfjprog.

Для запуска примера:

а) открыть папку, содержащую файлы SDK, выбрать пример и плату, например, …\examples\peripherial\blinky\pca10040;
б) если вы хотите запустить пример с SoftDevice, то выберете соответствующее устройство, иначе, нужно выбрать …\blank;
в) выбрать используемый компилятор. Для Keil 5 выбрать …\arm5_no_packs;
г) открыть файл проекта с расширением uvprojx (например, blinky_blank_pca10040.uvprojx) в Keil, дважды кликнув на нём мышью;
д) скомпилировать проект (см. рис. 6);
е) загрузить код во флеш-память устройства, нажав кнопку LOAD в Keil;
ж) протестировать пример в соответствии с описанием (его можно найти в папке Documentation проекта).

3. Запустить пример, использующий SoftDevice

Бинарные файлы SoftDevice находятся в папке components\softdevice\SoftDeviceName\hex SDK, где Soft DeviceName – требуемая версия Soft Device.

Существует несколько способов прошивки SoftDevice:

  • используя nRFgoStudio;
  • из проекта примера в ARM Keil;
  • используя makefile GCC примера.

Любой из способов удаляет всё содержимое из памяти платы, включая SoftDevice, приложение и данные приложения. nRFgo Studio и makefile GCC стирают плату автоматически. В ARM Keil необходимо стереть плату вручную, до того как прошивать SoftDevice.

Для прошивки SoftDevice, используя nRFgo Studio:

а) открыть nRFgo Studio;
б) в разделе Device Manager выбрать плату, с которой вы работаете (идентификатор – это серийный номер, написанный в нижней строчке на чипе SEGGER, расположенном на плате);
в) перейти на закладку Program SoftDevice;
г) нажать Browse и найти бинарный файл SoftDevice, который будет использоваться;
д) нажать Program.

Для программирования SoftDevice, используя проект примера в Keil:

а) сотрите информацию из памяти платы, как это было описано ранее;
б) откройте проект примера в Keil. Пример должен использовать SoftDevice;
в) выбирите целью флеш-память SoftDevice, например flash_s132_nrf52.2.0.0._softdevice;
г) нажмите Option for Target;
д) выберите панель Debug и кликните клавишу Settings для J-Link/J-TRACE Cortex;
е) выберите J-Link/J-Trace Adapter, соответствующий серийному номеру, указанному на чипе программатора SEGGER платы;
ж) нажмите OK, чтобы закрыть диалоговые окна;
з) в главном окне нажмите Download для записи SoftDevice.

Keil запишет соответствующий примеру SoftDevice.

Для записи SoftDevice, используя makefile GCC:

а) в командной строке открыть папку, в которой находится makefile примера;
б) убедитесь, что в переменной окружения PATH указан путь к файлу nrfprog.exe;
в) выполните команду make flash_softdevice.

Запуск makefile сотрёт существующее в памяти платы SoftDevice и запишет соответствующее примеру новое программное устройство.

HEX-файл стека прошивается в память устройства один раз, после чего можно записывать уже своё приложение в соответствующую область памяти, опять же используя nRFgo Studio, Keil или makefile GCC.

Модули на базе СнК nRF52832

Для ускорения вывода собственных продуктов на рынок, можно использовать готовые модули, которые помимо СнК имеют сертифицированную антенну и удобны для ручной пайки. Иногда то, что компании-производители таких модулей предлагают и собственное ПО, значительно упрощающее разработку.

Примером такого интегрированного решения служит модуль BL652 [6] компании Laird (см. рис. 7). Модуль предназначен для промышленных и медицинских приложений, работе в промышленном диапазоне температур (–40…+85°C) и имеет небольшие размеры – всего 14 × 10 × 2,1 мм. Для программирования можно использовать nRF52 SDK от Nordic Semiconductor или же собственный язык Laird под названием smartBASIC, который значительно упрощает разработку.

Также модули на базе СнК nRF52832 можно встретить и у других производителей, например, BMD-300 от Rigado [7], который имеет совсем миниатюрные размеры 14 × 9,8 × 1,9 мм, или от Fujitsu [8].

Литература

  1. www.nordicsemi.com.
  2. www.thisisant.com/developer/components/nrf52832.
  3. www.infocenter.nordicsemi.com.
  4. www.keil.com.
  5. www.developer.nordicsemi.com.
  6. www.lairdtech.com/products/bl652-ble-module.
  7. www.rigado.com/introducing-nrf52-bmd-300.
  8. www.fujitsu.com/uk/about/resources/news/press-releases/2016/fceu-20160609-01.html.

Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

10.10.2016 1195 0
Комментарии
Рекомендуем
К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 4. История возникновения  концепции поляритонов

К 130-летию со дня рождения великого советского физика Игоря Евгеньевича Тамма. Часть 4. История возникновения концепции поляритонов

В прошлом году в журнале «Современная электроника» были опубликованы три статьи, посвящённые юбилею выдающегося российского физика-теоретика Игоря Евгеньевича Тамма (СОЭЛ № 7–9, 2025). В частности, были описаны современные быстродействующие электрооптические модуляторы, поверхностные состояния Тамма, запрещённые фотонные зоны и фотонные кристаллы. В этих статьях умышленно не затрагивались темы поляритонов, оптических состояний Тамма (ОСТ) и плазмон-поляритонов Тамма (ППТ). Поскольку ключевой вклад в раннюю разработку этих явлений в основном принадлежит российским учёным, целесообразно посвятить их открытию более подробные отдельные статьи. Ниже рассмотрены два основных типа гибридных фотонных частиц: экситон-поляритоны и фонон-поляритоны.  
24.04.2026 СЭ №4/2026 109 0
Телевизор с электронно-лучевой трубкой: разработки С.И. Катаева и их значение

Телевизор с электронно-лучевой трубкой: разработки С.И. Катаева и их значение

«…Наступит время… когда миллионы таких приборов, таких "электрических глаз" будут всесторонне обслуживать общественную и частную жизнь, науку, технику и промышленность…» Б. Розинг Семён Исидорович Катаев (1904–1991 гг.), советский учёный и изобретатель в области телевидения, доктор технических наук, профессор, заслуженный деятель науки и техники – незаслуженно обделён вниманием популяризаторами истории электроники и телевидения в нашей стране. Тем не менее И.С. Катаев внёс значительный вклад в развитие инженерной мысли в СССР при разработке и усовершенствовании электронно-лучевых трубок (ЭЛТ), ставших на многие годы ключевой технологией, лежащей в основе экранов телевизоров и оборудования различного назначения. Катаев дополнил изобретение Зворыкина и по праву может считаться ещё одним «отцом» отечественного телевидения. В найденных документах роль Катаева прослеживается чётко, и в статье мы хотим это показать.
23.04.2026 СЭ №4/2026 114 0
Электронные системы диагностики, стимуляции и воздействия на человека на примере BAMH и управления –  на примере AE-Skin

Электронные системы диагностики, стимуляции и воздействия на человека на примере BAMH и управления – на примере AE-Skin

Путь будущих разработок в области современной электроники пролегает от визуального отображения окружающего пространства до тактильного. В этой связи представляют интерес система Bioinspired Adaptable Multiplanar mechano-vibrotactile Haptic (BAMH) – пневматически активируемый роботизированный электронный комплекс с интерфейсом из мягкого материала и система AE-Skin, обеспечивающая интерфейс между кожей человека и физическими поверхностями. Принцип её действия достаточно известен и заложен в управлении интерактивными экранами. В первой части статьи рассматриваются особенности новых разработок в области медицинской электроники и перспективы тактильного воздействия на кожу человека для лечения и изменения настроения. Во второй части представлен подробный разбор AE-Skin и примеры её совершенствования во всех сферах жизни человека: от управления посредством электронных тактильных датчиков миниатюрной формы до устройств на основе новых технологий, воспринимающих движения руками без прикосновения и без применения пироэлектрических детекторов, как управляющие сигналы для РЭА.
17.04.2026 СЭ №4/2026 156 0

ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjeHksEz
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjddDXPx
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться