Добавить в корзинуПозвонить
Найти в Дзене
Паяльник и код

ProMicro nRF52840 плата для DIY проектов. Обзор. Прошивка. Примеры

Миниатюрная (33x17.8 мм) отладочная плата, совместимая по распиновке с SuperMini/Nice!Nano v2.0, предназначенная для BLE-устройств. Она основана на чипе Nordic nRF52840 (Cortex-M4F, 64 МГц), поддерживает Bluetooth 5.0, Zigbee, Thread, имеет 1 МБ Flash, 256 КБ ОЗУ, USB Type-C и порт для Li-Po аккумулятора Покупал тут Характеристики Плата идеально подходит для создания кастомных беспроводных клавиатур, датчиков умного дома, носимых устройств и BLE-периферии. Она программируется через Arduino IDE, CircuitPython или Micropython На задней стороне платы есть место под перемычку. Около пинов RST и VCC. Если её установить, то зарядка подключенной батареи будет увеличена со 100мА до 300мА Прошивка Настраивать будем Arduino IDE 2.3.8 1. В меню Файл -> Настройки -> Дополнительные ссылки для Менеджера плат Добавить ссылку: https://adafruit.github.io/arduino-board-index/package_adafruit_index.json 2. Перезагрузить Arduino IDE 3. Открыть Менеджер плат, найти Adafruit nRF52 by Adafruit, нажать устано

Миниатюрная (33x17.8 мм) отладочная плата, совместимая по распиновке с SuperMini/Nice!Nano v2.0, предназначенная для BLE-устройств. Она основана на чипе Nordic nRF52840 (Cortex-M4F, 64 МГц), поддерживает Bluetooth 5.0, Zigbee, Thread, имеет 1 МБ Flash, 256 КБ ОЗУ, USB Type-C и порт для Li-Po аккумулятора

Покупал тут

aliexpress.ru

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

  • Микроконтроллер: Nordic nRF52840 (ARM Cortex-M4F, 64 МГц).
  • Память: 1 МБ Flash, 256 КБ RAM.
  • Беспроводная связь: Bluetooth 5.0 (BLE), поддержка Mesh, NFC, Thread, Zigbee.
  • Питание: USB Type-C (5В) или 3.7В Li-Po аккумулятор (встроенный контроллер заряда).
  • Периферия: GPIO, ADC, PWM, SPI, I2C, UART.
  • Энергопотребление: Низкое, около 1 мА в режиме ожидания.

Плата идеально подходит для создания кастомных беспроводных клавиатур, датчиков умного дома, носимых устройств и BLE-периферии. Она программируется через Arduino IDE, CircuitPython или Micropython

-2

На задней стороне платы есть место под перемычку. Около пинов RST и VCC. Если её установить, то зарядка подключенной батареи будет увеличена со 100мА до 300мА

Прошивка

Настраивать будем Arduino IDE 2.3.8

1. В меню Файл -> Настройки -> Дополнительные ссылки для Менеджера плат

Добавить ссылку:

https://adafruit.github.io/arduino-board-index/package_adafruit_index.json

2. Перезагрузить Arduino IDE

3. Открыть Менеджер плат, найти Adafruit nRF52 by Adafruit, нажать установить

-3

На этом этапе может возникнуть ошибка. Из-за блокировок ресурсов может быть закрыт доступ. В сообщении об ошибке смотрим какой пакет не установился. Открываем через браузер файл https://adafruit.github.io/arduino-board-index/package_adafruit_index.json. Находим ссылку на нужный пакет. И так же через браузер его скачиваем в директорию:

C:\Users\<ВАШ_ПРОФИЛЬ>\AppData\Local\Arduino15\staging\packages

Повторяем установку

Результатом установки должно быть появление в списке платы Adafruit Bluefruit nRF52840 Feather Express

-4

Теперь можно записать на плату первый пример. Как всегда это Blink. На плате есть два светодиода. Один используется для индикации заряда батареи. На этой плате Синий. И есть управляемый – Красный. Бывают эти светодиоды меняются местами. Так различают версии «клонов»

Чтобы перевести плату в режим программирования надо быстро два раза замкнуть пин RST на GND. Я для этого сделал кнопку

-5

Код Blink

-6

Думаете что-то заморгало?

Конечно – нет. Эти все платы на Алиэкспресс клоны чего-то. Найти точную распиновку мне не удалось. Пришлось написать сканер, чтобы их найти

Яндекс

Загружаем на плату. И ждем, когда загорится красный светодиод
Загорелся на
24

В коде Blink меняем LED_BULTIN на 24 и грузим на плату

-7

Теперь всё работает

Синий светодиод, отвечающий за зарядку, то же моргает. Подключаем батарею

-8

Моргает только красный светодиод, потому что нет зарядки

С зарядкой и батареей

-9

Т.е. мы можем отключать все светодиоду, что сэкономит заряд батареи

Дальше с помощью сканера я нашел все пины на плате, подключая по очереди отдельный светодиод. Помечал, на каком он загорался. Распиновка получилась следующая:

-10

Теперь можно и поэкспериментировать

Еще несколько примеров

Яндекс

Info – показывает информацию о плате

Моя плата:

-11

TRNG – генератор случайных чисел от 1 до 256. Выводит в консоль 1000 случайных чисел использую внутренний генератор. Библиотека - Adafruit_nRFCrypto

Про TRNG можно почитать тут:

SLEEPING – моргаем лампочкой 30 сек, если нет действия плату переводим в сон. Просыпается по кнопке на 11 пине

nRF52840 – делаем BLE клавиатуру с одной кнопкой на пине 11. Подключаем к компьютеру по Bluetooth нашу плату, имя задано в программе «FunnyKlava». При нажатии на кнопку на компьютер отправляется «Hello WORLD!». Надпись можно увидеть в открытом блокноте

Вывод

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