Начало работы с Raspberry Pi Pico (и Pico W)

Эта статья представляет собой руководство по началу работы с платой микроконтроллера Raspberry Pi Pico W. Она построена на основе чипа RP2040, предоставляет множество GPIO для подключения периферийных устройств и может быть запрограммирована с использованием языка программирования C/C++ или MicroPython. Давайте рассмотрим возможности Raspberry Pi Pico и узнаем, как запустить вашу первую программу.

Начало работы с Raspberry Pi Pico и Raspberry Pi Pico W

Знакомство с Raspberry Pi Pico

Raspberry Pi Pico – это недорогая плата микроконтроллера, разработанная на базе чипа RP2040 фондом Raspberry Pi Foundation. В отличие от предыдущих версий Raspberry Pi, Raspberry Pi Pico не предназначена для работы с операционной системой. Это плата микроконтроллера, подобная Arduino или ESP32, основная цель которой – управление электронными компонентами через GPIO. Если вы знакомы с платой ESP32 или ESP8266, Raspberry Pi Pico не сильно от них отличается.

Плата Raspberry Pi Pico W

Варианты платы Raspberry Pi Pico

Существуют два основных варианта платы Raspberry Pi Pico:

  • Raspberry Pi Pico: без беспроводного подключения (без Wi-Fi, без Bluetooth)

  • Raspberry Pi Pico W: с беспроводным подключением (Wi-Fi и Bluetooth)

Семейство Raspberry Pi Pico

Raspberry Pi Pico, Pico H, Pico W, Pico WH (Источник изображения)

Вы также можете встретить эти версии с буквой H, например Raspberry Pi Pico H или Raspberry Pi Pico WH, что означает, что они поставляются с припаянными штырьковыми разъемами.

Что выбрать: Raspberry Pi Pico или Raspberry Pi Pico W?

Raspberry Pi Pico W поставляется с беспроводным подключением, которое необходимо, если вам нужно использовать Wi-Fi или Bluetooth в проектах IoT или домашней автоматизации. Мы рекомендуем приобрести Raspberry Pi Pico W, так как разница в цене незначительна, а у вас будет возможность использовать Wi-Fi или Bluetooth при необходимости.

В этом руководстве мы будем использовать Raspberry Pi Pico W, но всё сказанное также применимо к Raspberry Pi Pico, за исключением функций беспроводного подключения.

Где купить Raspberry Pi Pico?

Плата Raspberry Pi Pico W широко доступна во многих различных магазинах. Перейдите по следующей ссылке, чтобы сравнить её цену в разных магазинах:

Характеристики Raspberry Pi Pico W

Характеристики процессора Raspberry Pi Pico

Вот список основных характеристик Raspberry Pi Pico W:

  • Микроконтроллер RP2040 с 2 МБ flash-памяти

    • Процессор: двухъядерный Arm Cortex-M0+ на частоте 133 МГц

    • 264 КБ высокопроизводительной многоблочной SRAM

    • 2 МБ встроенной QSPI Flash

  • Беспроводные интерфейсы 2,4 ГГц (802.11n) на основе Infineon CYW43439 (в моделях W)

  • Порт Micro-USB B (для питания и программирования)

  • 3-контактный порт ARM Serial Wire Debug (SWD)

  • 40 контактов

Интерфейсы GPIO Raspberry Pi Pico

Raspberry Pi Pico имеет 40 контактов, 26 из которых являются программируемыми GPIO, которые можно использовать для подключения периферийных устройств.

Raspberry Pi Pico поддерживает следующие периферийные интерфейсы на своих GPIO:

  • 2x UART

  • 2x I2C

  • 2x SPI

  • 16x каналов PWM

  • 4x вывода ADC (12-бит, 500 ksps)

GPIO Raspberry Pi Pico работают на напряжении 3,3 В.

Распиновка Raspberry Pi Pico

На следующем изображении показана распиновка Raspberry Pi Pico (какие функции поддерживаются каждым выводом). Для более подробного описания распиновки Raspberry Pi Pico ознакомьтесь с этим руководством: Raspberry Pi Pico and Pico W Pinout Guide: GPIOs Explained.

Распиновка Raspberry Pi Pico

Источник изображения: raspberrypi.com

Распиновка Raspberry Pi Pico W

Выводы, отмеченные красным цветом, являются выводами питания, которые выдают 3,3 В. Черные выводы – это выводы GND. Все выводы, отмеченные светло-зеленым цветом, могут использоваться как «обычные» GPIO (вход и выход), и все они могут генерировать сигналы PWM.

Протоколы связи SPI, I2C, UART и ADC поддерживаются на выводах с соответствующими обозначениями.

Как программировать Raspberry Pi Pico?

Raspberry Pi Pico можно программировать с использованием языка программирования C/C++ (с помощью Arduino IDE) или MicroPython. В настоящее время MicroPython является наиболее популярным способом программирования Raspberry Pi Pico, а Thonny IDE – рекомендуемая среда разработки для использования с Raspberry Pi Pico.

Raspberry Pi Pico имеет порт micro USB, который можно использовать как для питания, так и для программирования. Для программирования Raspberry Pi Pico вам нужен только USB-кабель для подключения платы к компьютеру. Большинство комплектов Raspberry Pi Pico включают подходящий USB-кабель.

Если вы хотите начать программировать Raspberry Pi Pico с помощью Arduino IDE, прочитайте следующее руководство:

Если вы хотите использовать MicroPython, продолжайте читать.

Что такое MicroPython?

Логотип MicroPython

MicroPython – это реализация языка программирования Python 3, предназначенная для микроконтроллеров и встраиваемых систем. MicroPython очень похож на обычный Python. За исключением нескольких особенностей, языковые возможности Python также доступны в MicroPython. Наиболее существенное различие между Python и MicroPython заключается в том, что MicroPython был разработан для работы в условиях ограниченных ресурсов.

По этой причине MicroPython поставляется не с полным набором стандартных библиотек. Он включает только небольшое подмножество стандартных библиотек Python, но содержит модули для простого управления и взаимодействия с GPIO, использования Wi-Fi и других протоколов связи.

Установка Thonny IDE

Thonny IDE – это рекомендуемое программное обеспечение для программирования платы Raspberry Pi Pico с помощью MicroPython, и именно его мы будем использовать в этом руководстве.

Thonny IDE также может использоваться для программирования ESP32 и ESP8266 с помощью прошивки MicroPython. Узнайте больше здесь: Getting Started with Thonny MicroPython (Python) IDE for ESP32 and ESP8266.

Перейдите по ссылке https://thonny.org/ и нажмите на соответствующую ссылку для загрузки пакета для вашей операционной системы.

Скачать Thonny IDE

Запустите загруженный исполняемый файл и следуйте процедуре установки (используйте все настройки по умолчанию).

Прошивка MicroPython на Raspberry Pi Pico

Подключите Raspberry Pi Pico к компьютеру, одновременно удерживая кнопку BOOTSEL, чтобы плата перешла в режим загрузчика для прошивки.

Режим загрузчика Raspberry Pi Pico

На компьютере откроется новое окно как новое USB-устройство, вы можете его проигнорировать и закрыть.

Откройте Thonny IDE.

Перейдите в Tools > Options. Выберите вкладку Interpreter в открывшемся окне.

Thonny IDE Tools Options

Выберите MicroPython (Raspberry Pi Pico) в качестве интерпретатора и Try to detect port automatically для порта. Затем нажмите на Install or update MicroPython.

Thonny IDE выбор интерпретатора

Откроется следующее окно.

Установка MicroPython на Raspberry Pi Pico через Thonny IDE

Выберите вариант MicroPython в соответствии с используемой платой. В нашем случае мы используем Pico W. Выберите другой вариант, если вы используете Pico.

Наконец, нажмите Install.

Через несколько секунд установка должна быть завершена.

Установка MicroPython на Raspberry Pi Pico завершена

Вы можете закрыть окно. Вы должны получить следующее сообщение в Shell, а в правом нижнем углу должен отображаться используемый интерпретатор и COM-порт.

Сообщение после установки MicroPython на Raspberry Pi Pico

Если устройство не распознается и в правом нижнем углу отображается сообщение «no backend», возможно, COM-порт не определяется автоматически. В этом случае перейдите в Tools > Options > Interpreter и выберите COM-порт вручную. После этого устройство MicroPython должно быть распознано, и вы должны увидеть предыдущее сообщение.

Проверка установки

Введите help() в Shell и посмотрите, ответит ли ваше устройство.

Raspberry Pi Pico Thonny IDE MicroPython help

Должна быть выведена полезная информация о программировании платы Raspberry Pi Pico с помощью MicroPython.

Введите следующее:

print('Hello')

В Shell должно быть напечатано Hello.

Тестирование Shell в Thonny IDE

Если вы дошли до этого шага, у вас должна быть успешно установлена Thonny IDE, а также прошивка MicroPython на плате Raspberry Pi Pico.

Запуск вашего первого скрипта

Чтобы познакомить вас с процессом написания файла и выполнения кода на плате Raspberry Pi Pico, мы загрузим новый скрипт, который просто мигает встроенным светодиодом.

Скрипт мигания светодиодом

Когда вы открываете Thonny IDE в первый раз, в редакторе отображается файл без имени. Скопируйте один из следующих скриптов в этот файл:

Raspberry Pi Pico

from machine import Pin
from time import sleep
led = Pin(25, Pin.OUT)
while True:
  led.value(not led.value())
  sleep(0.5)

Raspberry Pi Pico W

from machine import Pin
from time import sleep
led = Pin('LED', Pin.OUT)
while True:
  led.value(not led.value())
  sleep(0.5)

Запуск скрипта

Чтобы запустить этот скрипт на вашей плате, просто нажмите на значок Run в Thonny IDE.

Запуск файла в Thonny IDE

Встроенный светодиод начнет мигать.

Встроенный светодиод Raspberry Pi Pico W выключен Встроенный светодиод Raspberry Pi Pico W включен

Чтобы остановить выполнение программы, вы можете нажать кнопку STOP или просто нажать CTRL + C.

Кнопка остановки в Thonny IDE

Важное примечание: простой запуск файла через Thonny не копирует его на постоянную основу в файловую систему платы. Это означает, что если вы отключите её от компьютера и подадите питание на плату, ничего не произойдет, потому что в файловой системе не сохранен ни один файл Python. Функция Run в Thonny IDE полезна для тестирования кода, но если вы хотите загрузить его на плату на постоянной основе, вам нужно создать и сохранить файл в файловой системе платы. Смотрите следующий раздел.

Сохранение скрипта на плату Raspberry Pi Pico

Остановите выполнение предыдущей программы, нажав кнопку Stop, если вы этого ещё не сделали.

С кодом, скопированным в файл, нажмите на значок Save. Затем выберите Raspberry Pi Pico.

Сохранение файла на Raspberry Pi Pico в Thonny IDE

Сохраните файл с именем: main.py.

Примечание: когда вы называете файл main.py, Raspberry Pi Pico будет запускать этот файл автоматически при загрузке. Если вы назовете его иначе, он всё равно будет сохранен в файловой системе платы, но не будет запускаться автоматически при загрузке.

Наконец, нажмите OK для продолжения.

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

Встроенный светодиод Raspberry Pi Pico W включен

Заключение

Это руководство было кратким введением в плату Raspberry Pi Pico. Raspberry Pi Pico – это недорогая плата микроконтроллера, разработанная Raspberry Pi Foundation.

Плату можно программировать с использованием языка программирования C/C++ (с помощью Arduino IDE) или MicroPython. Наиболее популярный метод программирования этой платы – использование прошивки MicroPython. В этом руководстве вы узнали, как запустить свой первый скрипт MicroPython на плате и как сохранить его в виде файла.

Если вы также хотите узнать, как программировать Raspberry Pi Pico с помощью Arduino IDE, прочитайте следующее руководство:

Вы можете ознакомиться со всеми нашими проектами и руководствами по Raspberry Pi Pico по следующей ссылке:

Большинство скриптов MicroPython для плат ESP32 и ESP8266 также должны быть совместимы с Raspberry Pi Pico с небольшими изменениями в определении выводов.