Пробую NRF51822 | DiyTronic
Есть у меня китайский BLE модуль на nRF51822. Давно собирался с ним поэкспериментировать и вот руки наконец дошли. К сожалению информации о работе с этими модулями не так много, поэтому решил поделиться своим опытом.
Модуль nRF51822
Собственно модуль представляет собой распаянный на плату чип nRF51822 с всей необходимой обвязкой и пинами выведенными на пару гребёнок. Ну и как любой микроконтроллер он может быть прошит неким кодом, который может управлять портами ввода/вывода. Ну и главным бонусом идёт встроенный Bluetooth LE модуль.
Хочу особо обратить внимание на тот факт, что существует несколько вариаций чипа с разными вариантам памяти. Это будет важно в дальнейшем. Поэтому советую посмотреть прямо на чипе маркировку.
Естественным желанием было воткнуть модуль в брэдборд и потестировать. Но не ту-то было. Модуль имеет 4 ряда выводов, что как бы уже обламывает всю идею, но к тому-же оказалось выводы имеют нестандартный шаг 2 мм, так что даже на макетку его не воткнуть. В поисках какого-нибудь переходника наткнулся на готовую отладочную плату для таки модулей BLE400.
Плата BLE400
Вариант с платой выглядел поинтереснее, поэтому данная плата немедленно была закуплена у китайских коммерсантов. Собственно эта плата представляет собой разъём для модуля, пины, выведенные на штырьки, некоторые пины выведены на светодиоды (через перемычки), 2 пина подключены к кнопкам (опять же через перемычки). Так-же есть несколько стандартных разъёмов опять же подключенных к пинам модуля и USB -> COM преобразователь, который позволяет во первых запитать модуль через USB, а во вторых позволяет использовать UART прямо через USB. В общем простая, но полезная штука.
Итак плата BLE400 в наличии, модуль воткнут в разъём.
Втыкаем плату и видим в логах, что она определилась как /dev/ttyUSB0
|
|
Надо для неё проделать старый хитрый трюк с udev, чтобы получить стабильное неизменное имя. Ну что — поехали. Находим соответствующee USB устройство.
|
|
Смотрим udev аттрибуты
|
|
И прописываем его в правило udev
/etc/udev/rules.d/99-ble400.rules
|
|
Теперь перезагружаем правила
|
|
И отсоединяем/подсоединяем кабель устройства и наблюдаем в папке /dev/ устройство ble400 которое является фактически ссылкой на реальный файл устройства. Ну, а нам того и надо.
В сети нашёл несколько вариантов общения с модулем. Как правило по умолчанию модуль должен иметь встроенный UART, что теоретически должно дать нам возможность как минимум проверить подаёт ли модуль какие-то признаки жизни.
USB serial
Итак втыкаем плату с модулем в USB разъём и пробуем подключиться к UART-у. В ответ на посылку ему команду «y» от должен ответить «Start …».
Не прокатило — не отзывается на команды вообще никак. Только загорается светодиод SPD. При отправке команды «y» моргает Rx. Возможно просто в чипе хрен знает какая прошивка или он вообще девственно чист. Т.е. вроде как соединения устанавливается, но ни на какие команды не реагирует. Возможно (и скорей всего) нужно просто подобрать правильную скорость соединения.
Ну как говорится — «не очень-то и хотелось». Будем пробовать дальше. Вопрос с работоспособностью по прежнему остаётся открытым.
Bluetooth
Попытка номер два. Предположил, что при подключении у нас должно быть видно какое-то Bluetooth устройство. Втыкаем опять плату с модулем в USB, чтоб подать питание. Для тестирования использовал смартфон Xiaomi mi4c, который имеет поддержку BLE. Для тестирования использовал софт от нордиков — nRF Toolbox и nRF Connect. Но всё тщетно — никаких признаков неизвестных BLE устройств обнаружено не было. Это как-то уже начинает напрягать.
Bus Pirate
Вот тут http://floe.butterbrot.org/matrix/hacking/nrf/ какие-то ребята экспериментируют с подключением через Bus Pirate. Попробовал данный вариант — к плате могу подконнектиться, прочитать память, записать туда что-то. Но возможности крайне скудные. Там какой-то самописный программатор собранный на коленке под конкретный девайс. Заглянул в код и закрыл от греха подальше. Всё, что можно узнать о подключенном устройстве это первые 1000 байт из памяти. Ну и записать в устройство можно все что угодно начиная с заданного адреса.
Однако это уже первый позитивный опыт — по крайней мере устройство отзывалось и давало записать в себя файлы прошивок. В остальном — никакого толку.
Ну что — пришлось расчехлить старый добрый J-Link, который уже давно пылился на полке. К этому моменту я уже изрядно подзае наковырялся с SDK и даже читал стандартную документацию из комплекта, поэтому в теме уже немножко шарил. Оказывается J-Link это как раз и есть самый прямой путь к счастью. Да и на плате BLE400 есть готовый разъём, поэтому она немедленно была вкорячена в J-Link-овский шлейфик и внимание! это важно подключена через USB к компьютеру. Как оказалось J-Link напрочь отказывается питать подключенное устройство.
В итоге получаем что-то эдакое:
Важно!!!
Владельцев китайских J-Link-ов предупреждаю — не пользоваться стандартной программой для прошивки из SDK nrfjprog
. Она использует родную библиотеку от SEGGER, которая палит, что устройство является китайским клоном и убивает его (по счастью не намертво). Я на эти грабли наступил, но косяк этот для меня не в диковинку, поэтому быстро всё восстановил. Ну, а остальные — на свой риск и страх — я вас предупредил.
Собственно именно по этой причине на фото J-Link в разобранном состоянии — пришлось его заново перешивать, что невозможно без разбора.
Итак берём рабочий софт от J-Link и пробуем подключится J-Link Commander-ом. Собственно в командной строке указываем имя устройства (я был реально удивлён, что J-Link «знает» о nRF51822), скорость и тип подключения (swd)
|
|
Как мы видим произошло успешное подключение и даже определился тип чипа Device "NRF51822_XXAA"
, память (257 KB flash, 16 KB RAM)
и процессор Found Cortex-M0 r0p0
, что как бы намекает нам, что ура — всё работает.
Итак модуль подключен и подаёт признаки жизни — теперь осталось попробовать залить туда какой-то код и убедиться, что он заработает ну и что вообще мы можем в дальнейшем писать под него код.
Ну и остаётся нераскрыта тема SWD программаторов, коих у китайцев несть числа. Теоретически они должны работать, т. к. это урезанные JLink-и работающие только через SWD. Но у меня такого под рукой нет, поэтому сказать ничего не могу.
С софтом дело оказалось очень даже неплохо, хотя и немного запутано. Итак компания Nordic поставляет полный набор софта для разработки, кучу примеров и документации.
Качаем SDK с сайта https://developer.nordicsemi.com/nRF51_SDK/
Казалось бы вполне логично взять распоследнюю версию SDK. На сегодняшний день (январь 2018) это v14. Но не тут-то было. В принципе оно как бы должно работать, но SDK версии 14 полностью ориентирован на чипы серии nRF52 и все примеры по умолчанию используют библиотеки именно для этих чипов.
Я конечно вызов принял и было даже попробовал заменить ссылки на библиотеки для nRF51, но не особо преуспел в этом. Код успешно собирается, но залитый в устройство не работает. Пока притормозил эту тему — думаю можно заставить его работать, но я пока решил взять SDK более старой версии, а именно v10. Просто наугад: ) Ну и обнаружил, что там как раз всё вертится вокруг nRF51 семейства, что мне и нужно.
Итого для чипов семейства nRF51 стоит начать обучение с SDK v10. Просто будет чуть проще начать.
Итак качаем и распаковываем nRF51_SDK_10.0.0
Немного теории
Как уже писал выше чип nRF51822 это в общем-то обычный микроконтроллер. Поэтому мы можем просто написать для него код, залить в устройство и наслаждаться работой. Проблема тут одна — Bluetooth. При таком подходе нужно будет написать свой Bluetooth стэк, что хоть и в принципе возможно, но крайне трудно осуществимо иначе мне лишь останется позавидовать вашим способностям и крайне удивится зачем вы это читаете.
В принципе можно использовать этот чип не задействовав Bluetooth — просто как микроконтроллер. Но зачем, Ватсон?! Ну в общем это очевидный бред и нелепость.
Простым же смертным людям, которым от этого модуля нужен всё-таки Bluetooth нужен какой-то способ этот Bluetooth использовать прямо здесь и сейчас. И вот для этого случая компания Nordic поставляет некоторый код, называемый softdevice. Фактически это некая мини операционная система которая прошивается в устройство, а свой код мы пишем уже используя API этого softdevice-а.
Softdevice
Именно поэтому в примерах SDK как правило есть примеры в подпапке blank
т. е. запускаемые на голом контроллере и примеры для конкретных версий softdevice-ов (с префиксом «s»). Как я понял softdevice-ы отличаются набором функций и размещением в памяти. Конкретно для nRF51822 есть sofdevice-ы версий s110
, s120
и s130
. Sofdevice-ы поставляются в виде закрытого кода и исходники их недоступны.
Вот по этой ссылке https://www.nordicsemi.com/eng/Products/Bluetooth-low-energy/nRF51822 в разделе «Downloads» можно скачать softdevice-ы для nRF51822. Я не стал мудрить — выкачал последний. Внутри просто hex файл прошивки. Кстати чуть позже нашёл в SDK папку softdevice
где лежат те-же файлы.
Ну и чтоб не откладывать дела в долгий ящик зальём что-ли softdevice в наше устройство. Запускаем JLink, цепляем к нему ble400 c модулем и не забываем ble400 подключить к источнику питания (просто воткнем в USB компьютера). Ниже привожу последовательность команд JLink для заливки softdevice-а:
|
|
Команды типа w4
это запись 4-х байтового значения по заданному адресу. Конкретно эти я нашёл где-то в сети. Не очень чётко понимаю что там делается. Заявлено было, что это стирание каких-то областей. В общем надо будет подразобраться с этим шаманством. Но тем не менее это работает. Как видно из команды loadfile
заливаю туда прямо hex файл.
Подсмотрел тут
На этом считаю заливку softdevice-а законченной. Теперь нам нужно сварить и залить в модуль какой-нибудь интересный код, чтоб убедиться, что мы можем таки им управлять. По традиции это будет мигающий светодиод — благо их на плате аж 5 штук и ничего дополнительно делать не надо. Но для начала некоторые нюансы SDK.
BLE400 и SDK
Как оказалось все примеры рассчитаны на стандартные платы от Nordic. Но в то-же время нордики благородно оставили возможность добавить свою плату. Фактически нужно создать файл где нужно пробить соответствия физических пинов устройства внутренним константам SDK.
С другой стороны все эти платы в SDK не более чем некие наборы констант (тупо сишные define-ы) и можно вполне обойтись без всего этого геморроя с поддержкой плат. Тем не менее раз уж разобрался — поделюсь опытом.
Для SDK v10 все определения плат лежат в папке examples/bsp
. Создаём там файл платы custom_board.h. И в дальнейшем будем использовать именно его.
Запускаем тестовый пример
Как уже писал выше для теста будем использовать простейший пример — моргающие светодиоды. Такой пример есть SDK. расположен он в папке examples/peripheral/blinky
. Как мы видим в ней есть как уже скомпилированные варианты прошивок под различные платы, так и исходники под конкретные платы. Нашей платы BLE400 там очевидно нет, поэтому просто скопируем какую-нибудь из существующих и потом подправим её под свои нужды:
|
|
Вот так вот незатейливо. Внутри у нас 2 папки blink
и s110
. Первая нам не нужна и её можно смело удалить, а вторая это как раз вариант под softdevice. В данном случае под s110
, хотя мы только что залили в модуль s130
, но для такого примитивного примера это не беда.
Итак входим в папку s110. Внутри подпапки для различных компиляторов. Нас интересует armgcc. Ура — мы наконец видим Makefile и какой-то ld файл. Ну и к слову исходный код лежит в examples/peripheral/blinky
— это файл main.c
. Собственно эти 3 файла нам и нужны.
Makefile
Итак для начала правим Makefile. Заменяем везде CFLAGS = -DBOARD_PCA10028
на CFLAGS = -DBOARD_CUSTOM
. Так-же меняем
везде по тексту xxac
на xxaa
. Причина смотри выше про типы чипов. Пример сделан под другой тип чипа. Ну и нужно заменить имя softdevice-а — S110 на S130.
Я ещё поменял PROJECT_NAME
на PROJECT_NAME := blinky_s110_ble400
.
ld файл
Далее нам надо подправить ld файл blinky_gcc_nrf51.ld
— в этом файле описаны области памяти устройства и по умолчанию там данные для xxac
чипов, а у нас xxaa
. Поэтому нужно его поправить. Чтобы найти правильные значения для нашего чипа посмотрим папку components/softdevice/s130/toolchain/armgcc
|
|
Вот они родимые. Смотрим что там у нас для xxaa
.
Нас в этом файле интересует блок MEMORY
— берём значения для полей ORIGIN
и переносим в наш файл blinky_gcc_nrf51.ld
. Далее нам надо посчитать значения полей LENGTH
. Для FLASH это будет размер флеш-памяти устройства (для xxaa 256k) минус размер, который занимает softdevice (для S130 это 112k). Для MEM соответственно LENGTH будет равен размеру ОЗУ (16k для xxaa) минус размер ОЗУ зарезервированный softdevice-ом (для S130 — 10k).
Итого получаем следующий блок MEMORY, который мы и запишем в ld файл.
|
|
На этом с ld файлом мы закончили.
Компиляция
Да — совсем забыл — для сборки все этой истории в системе должны быть установлен компилятор для ARM процессоров. Это пакет gcc-arm-none-eabi
. Для успешной сборки нам надо прописать путь к бинарнику компилятора в components/toolchain/gcc/Makefile.posix
. Там по умолчанию какой-то хитрый путь, но в моём случае этот файл сейчас выглядит вот так
|
|
Ну собственно вроде всё. Теперь возвращаемся в папку с Makefile-ом нашего тестового проекта с мигающим светодиодом. Ну и собственно т. к. у нас всё уже готово просто запускаем сборку.
|
|
Как видим всё прошло успешно, правда в выводе мелькает nrf51422 (где-то я не немножко недопилил), но пока оставим это в покое. В данном случае на работу это не повлияет, хотя конечно надо будет разобраться.
Теперь у нас должна появиться папка _build
в которой будет готовый hex файл прошивки.
|
|
Заливаем прошивку в устройство
Запускаем JLink и BLE400 так-же как мы это делали в случае с прошивкой softdevice. Не забываем подавать питание на BLE400! Ну и выполняем следующий набор команд: loadfile
, r
, g
— смотри ниже.
|
|
После этого наблюдаем плату с мигающими светодиодами.
В итоге всё получилось. Модуль рабочий и его можно успешно прошивать. Теперь осталось проверить остальные возможности и в особенности самую мякотку – BLE. Но это уже тема для отдельной статьи. Ну и нужно ещё подчистить Makefile, автоматизировать загрузку прошивки — в общем причесать весь процесс, чтобы не отвлекаться на рутину.
- Пробуем запустить Bluetooth
- https://devzone.nordicsemi.com/question/70314/program-bluetooth-for-nrf51822-yunjia-board-with-stlink-v2/
- https://devzone.nordicsemi.com/blogs/22/getting-started-with-nrf51-development-on-mac-os-x/
- https://leavesified.wordpress.com/24.03.2016/setup-nrf51-development-on-linux/
- http://floe.butterbrot.org/matrix/hacking/nrf/
- https://developer.nordicsemi.com/nRF5_SDK/nRF51_SDK_v8.
- https://gist.github.com/bertrandmartel/a38315c5fe79ec5c8c6a9ed90b8df260
- https://medium.com/@robertmassaioli/using-the-ble400-and-nrf51822-on-osx-a57ed723510d
- https://medium.com/@robertmassaioli/picking-the-right-nrf5-chip-for-you-8e334493a185
- https://www.waveshare.com/wiki/NRF51822_Eval_Kit
- https://www.waveshare.com/nrf51822-eval-kit.htm
- https://www.funwithelectronics.com/? id=168
- https://github.com/sandeepmistry/arduino-nRF5#flashing-a-softdevice
- http://redbearlab.com/nrf51822-sdk/
- https://gustavovelascoh.wordpress.com/23.01.2017/starting-development-with-nordic-nrf5x-and-gcc-on-linux/
- https://leavesified.wordpress.com/24.03.2016/setup-nrf51-development-on-linux/
- http://infocenter.nordicsemi.com/index.jsp? topic=%2Fcom.nordic.infocenter.softdevices51%2Fdita%2Fnrf51%2Fsoftdevices.html
- https://diyiot.wordpress.com/29.11.2015/ble-application-with-nrf51822-firmware-flashing/
Radioland Technology NRF51822-Beacon Инструкция по эксплуатации
Radioland Technology NRF51822-Маяк
Описание товара
Обзор
Беспроводной модуль 51822-iBeacon разработан с использованием высокопроизводительного беспроводного SOC-чипа Nordic NRF51822.
Это полностью недорогая конструкция с низким энергопотреблением для приложений Bluetooth с низким энергопотреблением.
NRF51822 объединяет высокопроизводительное и маломощное ядро микроконтроллера CortexM0 и поддерживает стек протоколов BLE4.0 для приложений Bluetooth и множество периферийных интерфейсов.
Модуль оснащен независимым программным интерфейсом для облегчения пользовательского программирования и отладки.
Оснащен кнопками, длительное нажатие может управлять трансляцией модуля и режимом сна, приложение для мобильного телефона может изменять параметры модуля.
Особенности
- Соответствие требованиям к низкому энергопотреблению 2.4 ГГц и запатентованная встроенная радиочастотная система
- Программируемая выходная мощность до 4 дБмВт
- Поддержка IOS7.0, Android 4.3 или выше
- Расстояние: 30 метров
- Когда он не вещает, ток составляет всего около 2.7 мкА
- Высокопроизводительное и маломощное улучшенное ядро микроконтроллера CortexM0
- Принять стек протоколов Bluetooth, совместимый с низким энергопотреблением, Bluetooth v4. 0
- 256 КБ флеш-памяти системной программы и 16 КБ SRAM
- Диаметр малого размера: 25.0 мм, толщина: 4.6 мм
- PCB антенна
- Рабочий объемtagе: 1.8 В ~ 3.6 В
Сценарий приложения
- Внутренняя навигация
- Мобильный платеж
- Руководство по покупкам в магазине
- Анализ потока
Технологический параметр
Товары | nRF51822 | Товары | nRF51822 |
Объем поставкиtage | 1.8-3.6V | Получение тока | 9.7mA |
частота | 2402 ~ 2480MHz | Резервный ток | 3.1uA |
Выбираемый канал | 40 | Скорость передачи | 1 Mbps |
Модуляция | GFSK | Чип вспышка | 256KB |
Выходная мощность | -30dBm ~ 4dBm | Чип RAM | 16KB |
Эмиссионный ток (0 дБм) | 8mA | Форма антенны | PCB антенна |
чувствительность приемника | -93dBm | Расстояние связи | > 50м |
Введение в модуль
Вывод модуля
Номер контакта | Товары | Функция Pin |
1 | BAT + | 3. 3V |
2 | ЛЕТУЧАЯ МЫШЬ- | земля |
3 | SWCLK | Часы с цифровым выводом модуля |
4 | СВДИО | Данные модуля цифровых контактов |
размер модуля
Интерфейс
Service UUID:00001803-494c-4f47-4943-544543480000
Описание | UUID | Атрибут | Длина |
мобильный-> ibeacon | 00001805-494c-4f47-4943-544543480000 | уведомить / прочитать + уведомить | 20 (Макс) |
ibeacon-> мобильный | 00001804-494c-4f47-4943-544543480000 | записывать | 20 (Макс) |
Таблица сравнения мощности nRF51822 | ||
Мощность | Параметр | Контрольное значение RSSI на 1 м |
0dBm | 0x00 | -54 |
4dBm | 0x04 | -50 |
-30dBm | 0xD8 | -89 |
-20dBm | 0xЕС | -77 |
-16dBm | 0xF0 | -72 |
-12dBm | 0xF4 | -65 |
-8dBm | 0xF8 | -62 |
-4dBm | 0xFC | -58 |
В | Команда приложения | Return | Описание |
1 | Изменить имя : 0x11 + имя (длина <= 8) | 0x11 | Первая перезагрузка подключаемой версии вступает в силу, другие версии вступают в силу немедленно, все версии сохраняются |
2 | Изменить UUID : 0x12 + 16 байт UUID | 0x12 + 16 байт UUID | Мгновенный эффект, экономия энергии Например : 0x12 0x11 0x11… 0x99 0x99 | <- totle16 -> | |
3 | Прочитать UUID : 0x13 | 0x13 + 16 байт UUID | |
4 | Изменить Major, Minor battPower : 0x14 + Major + Minor + BattPower | 0x14 + Major + Minor + BattPower | Немедленный эффект, экономия энергии Major : 2 байта (например: 0x00 0x0a is10) Незначительный : 2 байта (например: 0x00 0x0b равно 11) BattPower: Эта позиция представляет собой мощность батареи, см. Примечание 1 для подробностей 1 байт (например: 0x01) |
5 | Найдите Major, Minor, BattPower: 0x15 | 0x15 + Major + Minor + BattPower | |
6 | Измените интервал широковещания : 0x16 + 1 байт (0x00-0xC8) | 0x16 + 4 байта | Немедленный эффект (например: 0x02 – 100 мс) |
7 | Измените мощность передачи : 0x17 + 1 байт | 2 байта | Непосредственный эффект 2541 может записывать : 0x01,0x02,0x03 51822 может записывать : 0x00, 0x04, 0xD8, 0xEC, 0xF0,0xF4,0xF8,0xFC Подробнее см. Примечание 2 |
Замечание о маяке
Формат данных трансляции
Позиция | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9-24 | 25-26 | 27-28 | 29 |
Данные | 0x02 | 0x01 | 0x06 | 0x1A | 0xFF | 0x4C | 0x00 | 0x02 | 0x15 | UUID | основной | незначительный | rssi на 1м |
Описание кнопок и светодиодов
- Светодиодные индикаторы мигают три раза при включении маяка
- Во включенном состоянии нажмите и удерживайте кнопку 3S, светодиод мигнет один раз, и маяк выключится. В выключенном состоянии нажмите и удерживайте кнопку 3S, чтобы запустить маяк.
Энергопотребление маяка
Метод проверки широковещательного тока: Beacon последовательно передает сигнал резистора 10 Ом и подключает осциллограф к источнику питания.tagе через резистор.
Метод испытания статическим током: последовательно подключите маяк к мультиметру, чтобы проверить ток.
Бездатчиковое энергопотребление :
Потребляемая мощность:
Ток покоя :2.6uA
Трансляция текущего :14mA
Время трансляции :5ms
Интервал трансляции :1000ms
Средний ток = 2.6 мкА * 995 мс + 14 мА * 5 мс 1000 мс = 0.0718905 мА
Время использования батареи 2032 = 200 мА ∙ 0.0718905 мА ≈ 2782 ℎ
Примечание:
Загрузка SDK :
https://www.nordicsemi.com/api/sitecore/Products/MedialibraryZipDownlad2
Сертификация
Компания Radioland Technology Co. , Ltd.
Адрес: 203, блок A1, промышленная зона ChenTian Hangcheng Xixiang
Городок, район Баоань, Шэньчжэнь. Китай
Skype: Радиоланд-Генри
WeChat: 15712148297
Телефон: +86-0755-82599763
Web: http://radioland-china.en.alibaba.com
Документы / Ресурсы
Рекомендации
- Шэньчжэнь Radioland Technology Co., Ltd. – Модуль CC2530 Zigbee, NRF51822
nRF51822 — Bluetooth с низким энергопотреблением, ANT и SoC 2,4 ГГц
SoC серии nRF51
Обзор
nRF51822 SoC
SoC общего назначения Bluetooth с низким энергопотреблением идеально подходит для решений с одним чипом или в качестве устройства подключения.
16 МГц Cortex-M0
256/128 КБ флэш-памяти, 32/16 КБ ОЗУ
2,4 ГГц трансивер
2 Мбит/с, 1 Мбит/с, 250 кбит/с , SPI, TWI
10-разрядный АЦП
Читать далее
nRF51422 SoC
Многопротокольная система на кристалле ANT/Bluetooth общего назначения с низким энергопотреблением.
16 МГц Cortex-M0
256/128 КБ флэш-памяти, 32/16 КБ ОЗУ
2,4 ГГц трансивер
2 Мбит/с, 1 Мбит/с, 250 кбит/с
UART, SPI, TWI
10-битный АЦП
Читать далее
nRF51824 SoC
nRF51824 — это однокристальная система Bluetooth с низким энергопотреблением, отвечающая требованиям AEC Q100 Grade 2. Это автомобильный класс nRF51822.
16 МГц Cortex-M0
256 КБ флэш-памяти, 16 КБ ОЗУ
2,4 ГГц трансивер
2 Мбит/с, 1 Мбит/с, 250 кбит/с
10-разрядный АЦП
AEC-Q100
Читать далее
SoftDevices
Совместимость с nRF51822
СофтДевайс S110
S110 — это стек периферийных протоколов, отвечающий требованиям Bluetooth 4.1, для серии nRF51.
Одновременный канал в качестве периферийного устройства и широковещательного устройства
Конфиденциальность 1. 1
Режим безопасности 1 — уровни 1, 2 и 3
Поддержка пользовательских UUID
Поддержка одновременного использования нескольких протоколов с проприетарными протоколами 2,4 ГГц
Читать далее
S120: Bluetooth 4.1
S120 — это центральный или периферийный стек протоколов Bluetooth 4.1 для серии nRF51.
8 одновременных соединений в качестве центрального с наблюдателем/периферийного с вещателем
Настраиваемая таблица ATT
Конфиденциальность 1.1
Режим безопасности 1 — уровни 1, 2 и 3
Поддержка пользовательских UUID
Поддержка одновременного использования нескольких протоколов с проприетарными протоколами 2,4 ГГц
S130: Bluetooth 4.2
S130 — это стек протоколов центрального и периферийного устройств серии nRF51, сертифицированный для Bluetooth 4.2.0004 Конфиденциальность 1.1
Режим безопасности 1 — уровни 1, 2, 3 и 4
Поддержка пользовательских UUID
Поддержка одновременного использования нескольких протоколов с проприетарными протоколами 2,4 ГГц
LE Secure Connections
4 Читать далее
Соответствующие SDK
Нажмите, чтобы узнать больше
nRF5 SDK
Комплект для разработки программного обеспечения Bluetooth LE и ANT
nRF5 SDK — это высококачественный, тщательно протестированный комплект для разработки программного обеспечения, который ускоряет разработку программного обеспечения для SoC серий nRF52 и nRF51.
Он содержит сотни полезных модулей встроенного ПО и примеры, которые помогут в создании вашего приложения.
Подробнее
Наборы для разработки
Оценка, создание прототипа и разработка с помощью nRF51822
nRF51 ДК
nRF51 DK — это запатентованный комплект разработки Bluetooth Low Energy, ANT и 2,4 ГГц для SoC серии nRF51. Разрабатывайте приложения для SoC nRF51822, nRF51422, nRF51824 и nRF51802.
Читать далее
ключ nRF51
Ключ nRF51 — это запатентованный USB-ключ Bluetooth с низким энергопотреблением, ANT и 2,4 ГГц для SoC серии nRF51. Разрабатывайте приложения для SoC nRF51822, nRF51422 и nRF51824.
Читать далее
Комплект профилировщика мощности
Комплект Power Profiler Kit — это простой в использовании инструмент для измерения и оптимизации энергопотребления встроенных решений.
Читать далее
Связанные приложения
Нажмите, чтобы узнать больше
Маяки
Компьютерная периферия
Спорт и фитнес
Игрушки и игры
VR и дополненная реальность
Носимые устройства
Наборы для разработки
Оценка, создание прототипа и разработка с помощью nRF51822
nRF51 ДК
nRF51 DK — это запатентованный комплект разработки Bluetooth Low Energy, ANT и 2,4 ГГц для SoC серии nRF51. Разрабатывайте приложения для SoC nRF51822, nRF51422, nRF51824 и nRF51802.
Читать далее
ключ nRF51
Ключ nRF51 — это запатентованный USB-ключ Bluetooth с низким энергопотреблением, ANT и 2,4 ГГц для SoC серии nRF51. Разрабатывайте приложения для SoC nRF51822, nRF51422 и nRF51824.
Читать далее
Комплект профилировщика мощности
Комплект Power Profiler Kit — это простой в использовании инструмент для измерения и оптимизации энергопотребления встроенных решений.
Читать далее
Последние новости
Клиент
24 окт. 2022
Stratosfy’s Tempgenie использует SoC nRF52840 для передачи датчиков темпе…
Читать далее
Клиент
20 окт. 2022
Интерактивная умная палочка от Warner Bros. Home Entertainment…
Читать далее
Клиент
17 окт. 2022
Link2Care Smartwatch DA13700 от Dayton Industrial использует Nordic…
Читать далее
Архив новостей
nrf51822 · GitHub Topics · GitHub
Здесь 54 публичных репозитория соответствует этой теме…
Лотлаб / Lot60-BLE-клавиатура
Звезда 136Куйомалайни / антардуино
Звезда 74лаборатория11 / nrf5x-база
Звезда 74микук / arduino-nRF5-умные часы
Звезда 57НайсЛабс / швабры-vida-pm-watchdog
Звезда 50KitSprout / IMUCube
Звезда 49александрлаврушко / BLE-HUD-навигация-ESP32
Звезда 40ЗДЖ-ТЭК / ZJ-RT-Thread-NIMBLE-NORDIC
Звезда 29Бертранмартель / Bluetooth-пульт дистанционного управления
Звезда 25d00616 / Arduino-NVM
Звезда 22платформа / платформа-нордикнрф51
Звезда 20Оллехойген / нРФ-ДТМ
Звезда 19Касберт / nrf_beacon_itcpolyuhk
Звезда 17сяонсяо / BluetoothToolKit
Звезда 13Жанматье / nrf51822-маломощный датчик
Звезда 9VNGIoTLab / Arduino_VBLUno_nRF51822
Звезда 8озаналтинская / BLE_Gamepad_NRF51822
Звезда 6Коннакс-Ой / Bleam-сканер-3
Звезда 4монстр1025 / nrf51822-ble-тег
Звезда 4вертикон / КнопкаСветодиод
Звезда 3Улучшить эту страницу
Добавьте описание, изображение и ссылки на nrf51822 страницу темы, чтобы разработчикам было легче узнать о ней.