Рубрики
Проекты на Raspberry Pi

Начало работы с платой Seeed XIAO RP2040

Это руководство по началу работы с платой Seeed XIAO RP2040 от Seeed Studio. Недавно Seeed Studio выпустила самую маленькую в мире плату RP2040 под названием XIAO RP2040, которая похожа на Raspberry Pi Pico. Ее фирменные ценности — высокая производительность, низкая стоимость, простота использования и крошечный размер — делают ее идеальной для TinyML, умных носимых устройств и проектов IoT.

Размер платы аналогичен плате XIAO BLE NRF52840 и XIAO ESP32-C3. Seeed Studio XIAO RP2040 поддерживает программирование с помощью Arduino IDE, MicroPython и CircuitPython.

В этом руководстве мы рассмотрим обзор платы XIAO RP2040, а также ее функции, возможности, распиновку и приложения. Сначала мы рассмотрим ее базовое использование, например, мигание светодиода и использование встроенного светодиода Neopixel. Затем мы будем управлять миганием светодиода с помощью аналогового контакта и потенциометра. Позже мы считаем значения температуры и влажности с датчика DHT11, а также отобразим текст на OLED-экране.

Необходимые компоненты

  1. Плата Seeed Studio XIAO RP2040.
  2. Светодиод 5мм любого цвета (купить на AliExpress).
  3. Резистор 200 Ом.
  4. Датчик температуры и влажности DHT11 (купить на AliExpress).
  5. Модуль OLED дисплея SSD1306 128×64 с интерфейсом I2C (купить на AliExpress).
  6. Макетная плата.
  7. Соединительные провода.

Реклама: ООО «АЛИБАБА.КОМ (РУ)» ИНН: 7703380158

Плата Seeed Studio XIAO RP2040

Seeed Studio XIAO RP2040 — это совместимый с Arduino микроконтроллер с чипом Raspberry Pi Pico RP2040. Он оснащен мощным двухъядерным процессором RP2040, который может гибко работать с частотой до 133 МГц, что является маломощным микроконтроллером. Плата также имеет 264 КБ SRAM и 2 МБ встроенной флэш-памяти, что позволяет сохранять и запускать больше программ. С другой стороны, эта маленькая плата имеет хорошую производительность при обработке, но требует меньше энергии.

Плата разработана в крошечном размере, размером с большой палец (20×17,5 мм), и может использоваться для носимых устройств и небольших проектов. На Seeed Studio XIAO RP2040 имеется 14 GPIO-контактов, из которых 11 цифровых контактов, 4 аналоговых контакта, 11 контактов PWM, 1 интерфейс I2C, 1 интерфейс UART, 1 интерфейс SPI и 1 интерфейс SWD Bonding pad.

Seeed Studio XIAO RP2040 дружелюбна к сообществам благодаря своей хорошей программной совместимости, которая поддерживает Arduino, Micropython и CircuitPython. За исключением программного обеспечения, гибкий ввод-вывод позволяет ему общаться практически с любым внешним устройством. Вы также можете использовать редактор Thonny для программирования, как если бы вы использовали Raspberry Pi Pico. Благодаря двум быстрым ядрам, большому объему встроенной оперативной памяти и порту TensorFlow Lite RP2040 является отличной платформой для приложений машинного обучения.

Верхняя сторона платы имеет чип RP2040, встроенный в печатную плату. Как и другие платы, она имеет две кнопки, одну для сброса и другую для загрузки. Она также имеет красный светодиод питания и встроенный светодиод RGB. На плате также имеется светодиод Neopixel, который можно программировать. Плата имеет интерфейс USB типа C для программирования и последовательной связи.

Особенности платы

  • Мощный микроконтроллер: двухъядерный процессор ARM Cortex M0+, настраиваемая тактовая частота до 133 МГц.
  • Хорошие объемы памяти на кристалле: 264 КБ SRAM и 2 МБ встроенной флэш-памяти.
  • Гибкая совместимость: поддержка Micropython/Arduino/CircuitPython.
  • Простота эксплуатации проекта: удобная для макетной платы и SMD-дизайн, отсутствие компонентов на задней панели.
  • Маленький размер: размером с большой палец (20×17,5 мм) для носимых устройств и небольших проектов.
  • Несколько интерфейсов: 11 цифровых контактов, 4 аналоговых контакта, 11 контактов ШИМ, 1 интерфейс I2C, 1 интерфейс UART, 1 интерфейс SPI, 1 интерфейс контактной площадки SWD.

Распиновка

На плате Seeed Studio XIAO RP2040 имеется 14 контактов GPIO, из которых 11 цифровых, 4 аналоговых, 11 контактов ШИМ, 1 интерфейс I2C, 1 интерфейс UART, 1 интерфейс SPI и 1 интерфейс контактной площадки SWD.

Рабочее напряжение микроконтроллера платы составляет 3,3 В. Входное напряжение, подключенное к общим контактам ввода/вывода, может привести к повреждению чипа, если оно выше 3,3 В. Плата может питаться от внешнего источника питания 5 В. Встроенная схема преобразователя постоянного тока, способная преобразовывать напряжение 5 В в 3,3 В, позволяет питать устройство напряжением 5 В через VIN-PIN и 5V-PIN.

Вход в режим загрузчика

Иногда порт Seeed Studio XIAO RP2040 может исчезнуть при сбое процесса пользовательского программирования. Эту проблему можно решить, выполнив следующую операцию:

  • Длительно нажмите кнопку «B».
  • Подключите Seeed Studio XIAO PR2040 к компьютеру.
  • Компьютер будет отображаться как драйвер диска.

В этот момент чип переходит в режим загрузчика и снова появляется порт записи. Это возможно поскольку чип RP2040 имеет два раздела, один из которых — загрузчик, а другой — пользовательская программа. Продукт запишет код загрузчика в системную память, когда покинет завод. Мы можем переключать режимы, выполняя указанные выше шаги.

Перезагрузка платы

Если вы хотите сбросить настройки Seeed Studio XIAO RP2040, выполните следующие действия:

  • Подключите Seeed Studio XIAO RP2040 к компьютеру.
  • Нажмите на кнопку «Reset» один раз.

Обратите внимание: поведение встроенных программируемых одноцветных светодиодов (два синих, один зеленый) противоположно поведению на Arduino. На Seeed Studio XIAO RP2040 для включения необходимо подать на вывод низкий уровень.

Начало работы с платой Seeed XIAO RP2040 в Arduino IDE

Перед использованием платы XIAO RP2040 нам нужно настроить Arduino IDE. Arduino IDE не имеет предустановленной платы XIAO RP2040. Поэтому нам нужно сначала установить плату.

Сначала откройте Arduino IDE и перейдите в File > Preferences (Файл > Настройки) и заполните поле “Additional Boards Manager URLs” («URL-адреса дополнительных плат») следующим URL-адресом:

https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json

Перейдите в Tools > Board > Boards Manager (Инструменты > Плата > Менеджер плат), введите ключевое слово «RP2040» в поле поиска, выберите последнюю версию и установите ее.

После установки платы перейдите в меню Tools > Board > Seeed RP2040 Boards («Инструменты» > «Плата» > «Платы Seeed RP2040») и выберите «Seed XIAO RP2040».

Перейдите в меню Tools > Port (Инструменты > Порт) и выберите имя последовательного порта, к которому подключена Seeed XIAO RP2040.

Теперь ваша плата готова к программированию и запуску проекта.

Мигание светодиода

Первая программа, которую мы реализуем, это мигание светодиода. На плате есть встроенный RGB-светодиод, подключенный к контакту 25. Мы будем использовать пример кода для мигания светодиода в течение 1 секунды.

Исходный код программы

Скопируйте следующий код и загрузите его на плату RP2040.

После загрузки вы должны увидеть, как зеленый светодиод (USER) контакта 25 на плате мигает раз в секунду. Если это так, поздравляем!

Это означает, что подключение прошло успешно, и теперь вы можете исследовать больше проектов с помощью Seeed Studio XIAO RP2040!

Использование светодиодов Nexopixel RGB

Контакт 11 платы XIAO RP2040 — это контакт включения RGB-светодиода. Вы можете зажечь RGB-светодиод, установив высокий уровень на контакте 11. Здесь мы заставим его мигать. Сначала нам нужно добавить стороннюю библиотеку.

Откройте Arduino IDE, перейдите в Sketch > Include Library > Manage Libraries для поиска библиотеки. Введите ключевое слово «Adafruit_NeoPixel» в Ardunio library Manager (менеджер библиотек) и установите последнюю версию данной библиотеки.

Исходный код программы

Теперь скопируйте следующий код в Arduino IDE и нажмите кнопку Upload («Загрузить»), чтобы загрузить его.

После загрузки кода RGB отобразит цвет радуги.

Аналоговый вывод Usgae для управления светодиодом

Теперь давайте посмотрим, как мы можем использовать аналоговый вывод платы XIAO RP2040 для управления светодиодом. Для этого подключите потенциометр к выводу A0, а 5-миллиметровый светодиод к выводу 27 через резистор 200 Ом.

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

Исходный код программы

Загрузите следующий код для управления интервалом мигания светодиода путем вращения ручки потенциометра.

Подключение датчика DHT11 к RP2040

Теперь давайте подключим датчик DHT11 к плате XIAO RP2040. Подключите VCC, GND и выходной контакт датчика DHT11 к 3.3V, GND и контакту 27 платы XIAO.

Я снова использовал простое соединение с помощью макетной платы, как показано на рисунке ниже.

Исходный код программы

Для кода требуется библиотека датчика DHT11. Откройте Arduino IDE, перейдите в Sketch > Include Library > Manage Libraries для поиска библиотеки. Введите ключевое слово «DHT11» в Ardunio library Manager (менеджере библиотек) и установите последнюю версию данной библиотеки.

Скопируйте следующий код в Arduino IDE и нажмите кнопку Upload («Загрузить»), чтобы загрузить его.

После загрузки кода откройте Serial Monitor (окно монитора последовательной связи) — в нем вы можете увидеть данные о влажности и температуре.

OLED-дисплей с RP2040

Здесь мы собираемся подключить плату XIAO RP2040 к OLED-дисплею 0,96″ через контакты I2C и вывести на экран сообщение «Hello world».

Мы будем использовать контакт 5 как контакт SCL, а контакт 4 как контакт SDA.

Исходный код программы

Откройте Arduino IDE, перейдите в Sketch > Include Library > Manage Libraries, чтобы найти библиотеку. Введите ключевое слово «U8G2» library в Ardunio library Manager и установите последнюю версию данной библиотеки.

Скопируйте следующий код в Arduino IDE и нажмите кнопку «Загрузить», чтобы загрузить его.

Результаты работы этого проекта будут выглядеть следующим образом:

Видео, демонстрирующее работу проекта

Ссылка на видео на YouTube

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

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