Arduino Nano 33 BLE: распиновка, схема подключения и программирование

Arduino Nano 33 BLE — компактная платформа для разработки на чипе U-blox NINA-B306 с микроконтроллером Nordic nRF52840 и беспроводным модулем Bluetooth BLE.

На плате также распаян IMU-модуль на 9 степеней свободы, который содержит трёхосевые сенсоры: акселерометр, гироскоп и магнитометр. Приведённый сет модулей, позволяет создать на Arduino Nano BLE собственный фитнес-браслет, умные часы или другой мобильный проект с беспроводной связью по Bluetooth.

Подключение и настройка

Шаг 1

Скачайте и установите на компьютер интегрированную среду разработки Arduino IDE.

Шаг 2

По умолчанию среда Arduino IDE настроена только на AVR-платы. Для работы с платформой Arduino Nano 33 BLE — добавьте в менеджере плат поддержку платформ Mbed OS.

Элементы платы

Беспроводной модуль U-blox NINA-B306

Arduino Nano 33 BLE выполнена на чипе U-blox NINA-B306, который включает в себя 32-битный микроконтроллер Nordic nRF52840 на архитектуре ARM Cortex-M4 с тактовой частотой 64 МГц, 1 МБ флеш-памяти и 256 КБ оперативной памяти. Чип NINA-B306 так же обеспечивает связь Bluetooth v5.0 в диапазоне 2,4 ГГц и поддерживает энергосберегающий протокол ArduinoBLE.

IMU-сенсор

IMU-сенсор на 9 степеней свободы включает в себя акселерометр, компас и магнитометр. Сборка выполнена на чипе LSM9DS1 по технологии (англ. System-in-Package — система в корпусе), где акселерометр, гироскоп и магнитометр лежат методом бутерброда в пластиковом корпусе. Для примеров работы используйте ArduinoLSM9DS1.

USB порт

Разъём micro-USB предназначен для прошивки платформы Arduino Nano Every с помощью компьютера.

Светодиодная индикация

Имя светодиода Назначение
ON Информационный индикатор питания.
L Пользовательский светодиод на 13 пине микроконтроллера. Используйте определение LED_BUILTIN для работы со светодиодом. При задании значения высокого уровня светодиод включается, при низком – выключается.
RGB Пользовательский RGB-светодиод с общим анодом. Катоды красного, зелёного и синего цвета выведены на 22, 23 и 24 пине микроконтроллера соответственно. Для удобства используйте встроенные в Arduino IDE определения LEDR, LEDG и LEDB для работы с RGB-светодиодом. При задании значения высокого уровня светодиоды выключается, при низком – включается.

Понижающий регулятор 3V3

Импульсный понижающий регулятор напряжения MPM3610 обеспечивает питание модуля U-blox NINA-B306 и другой логики платформы при подключении платформы через пин Vin. Диапазон входного напряжения от 5 до 18 вольт. Выходное напряжение 3,3 В с максимальным выходным током 1,2 А.

Кнопка RESET

Пользовательская кнопка с двумя полезными функциями:

  • Один клик (Single Сlick): служит для сброса микроконтроллера.
  • Двойной клик (Double Click): переводит микроконтролер в BOOT-режим, который пригодиться при зависании платы или дургих сбоев в программе.

Распиновка

Пины питания

  • VIN Пин для подключения внешнего источника напряжения в диапазоне от 5 до 18 вольт.
  • 5V: Для обратной совместимости с проектами на Arduino Nano пин 5V оставили на месте, но на плате отсутствует стабилизатор напряжения на 5 вольт и пин висит в воздухе. Чтобы получить активную линию питания на 5 вольт, вам понадобится спаять перемычку для площадок VUSB и подвести внешнее питание 5 вольт через USB-порт.
  • 3V3 Пин от стабилизатора напряжения с выходом 3,3 вольта и максимальных током 1,2 А. Регулятор обеспечивает питание чипа U-blox NINA-B306 и другой вспомогательной логики платы.
  • GND Выводы земли.

Порты ввода/вывода

В отличии от большинство плат Arduino, родным напряжением Arduino Nano 33 BLE является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать не более 3,3 В. Большее напряжение может повредить микроконтроллер!

Будьте внимательны при подключении периферии: убедитесь, что она может корректно функционировать в этом диапазоне напряжений.

  • Цифровые входы/выходы 22 пина: D0D21
    Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 15 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.
  • ШИМ 22 пина: D0D21
    Позволяет выводить аналоговые значения в виде ШИМ-сигнала. По умолчанию разрядность «ШИМ» установлена в 8 бит. Изменить разрядность «ШИМ» можно с помощью функции analogWriteResolution().
  • АЦП 8 пинов: A0A7
    Позволяет представить аналоговое напряжение в виде цифровом виде. По умолчанию разрядность «АЦП» установлена в 10 бит. Изменить разрядность «АЦП» можно с помощью функции analogReadResolution(). Диапазон входного напряжения от 0 до 3,3 В. При подаче большего напряжения микроконтроллер может выйти из строя.
  • I²C:
    Для общения с периферией по интерфейсу «I²C». Для работы используйте библиотеку Wire.
    • I²C пины SDA/D18 и SCL/D19
      Для коммуникации платы Arduino с другими платами расширения и сенсорами по параллельному интерфейсу.
    • I²C1 пины SDA/D30 и SCL/D31
      Используется для общение с беспроводным модем U-blox NINA-B306.
  • SPI: пины MOSI/D11, MISO/D12 и SCK/D13
    Для общения с периферией по интерфейсу «SPI». Для работы — используйте библиотеку SPI.
  • UART/Serial:
    Платформа поддерживает несколько последовательных интерфейсов. Для работы — используйте методы библиотеки Serial.
    • Serial/SerialUSB пины: D−/D31/C55 и D+/D32/C54
      Выводы шины соединены с USB-разъёмом платы. Используется для прошивки и отладки платформы через ПК.
    • Serial1 пины: RX/D0/C38 и TX/D1/C37
      Для коммуникации платы Arduino с другими платами расширения и сенсорами по последовательному интерфейсу.

Принципиальная и монтажная схемы

Габаритный чертёж

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

  • Чипы: NINA-B306, LSM9DS1
  • Входное напряжение через Vin: 5–18 В
  • Напряжение логических уровней: 3,3 В
  • Порты ввода-вывода: 22
  • Пины с АЦП: 8
  • Разрядность АЦП: 8/10/12 бит (по умолчанию 10 бит)
  • Пины с ШИМ: 22 (до 4 каналов)
  • Разрядность ШИМ: 8/10/12 бит (по умолчанию 8 бит)
  • Аппаратные интерфейсы SPI: 1
  • Аппаратные интерфейсы I²C: 1
  • Аппаратные интерфейсы UART: 1
  • Максимальный выходной ток с пина: 15 мА
  • Суммарный выходной ток с пинов: до 25 мА
  • Габариты платы с ножками: 45×18×13 мм

Беспроводной модуль U-blox NINA-B306

  • Микроконтроллер: Nordic nRF52840
  • Вычислительное ядро: ARM Cortex M4 (32 бита)
  • Тактовая частота: 64 МГц
  • Flash-память: 1 МБ
  • SRAM-память: 256 КБ
  • Частотный диапазон связи: 2,4 ГГц
  • Стандарт связи: Bluetooth v5.0 с поддержкой BLE

IMU-сенсор ST LSM9DS1

  • Диапазон измерения ускорения: ±2/±4/±8/±16g
  • Диапазон измерения поворота: ±245/±500/±2000 град./с
  • Диапазон измерения магнитной индукции: ±4/±8/±12/±16 Гс
  • Частота опроса акселерометра и гироскопа: 14,9–952 Гц
  • Частота опроса магнитометра: 0,625–80 Гц

Ресурсы