Начало работы с Raspberry Pi Pico на MicroPython: руководство для начинающих


Плата Raspberry Pi в настоящее время является одной из самых популярных микроконтроллерных плат, применяемых в современной электронике. По сравнению с другими аналогичными платами (например, Arduino), она отличается большой вычислительной мощностью, но и стоит она при этом существенно дороже. Для преодоления этого ценового разрыва компания Raspberry Pi Foundation's в этом, 2021 году, выпустила плату Raspberry Pi Pico на своем собственном чипе RP2040, которая отличается низкой ценой – всего $4. Данная плата основана на двухъядерном процессоре с архитектурой ARM и имеет систему контактов ввода/вывода общего назначения (GPIO).

Начало работы с Raspberry Pi Pico на MicroPython

В данной статье мы рассмотрим основы работы с платой Raspberry Pi Pico и ее программирование с помощью языка MicroPython.

Общая характеристика платы Raspberry Pi Pico

Плата Raspberry Pi Pico содержит в своем составе двухъядерный ARM процессор на ядре Cortex M0+ с тактовой частотой до 133 МГц. На плате находится 264 Кб SRAM памяти (ОЗУ) и 2 Мб перезаписываемой флэш памяти, которую можно увеличить до 16 Мб с помощью внешнего модуля, подключаемого по шине Quad-SPI. Также плата имеет в своем составе 26 многофункциональных контактов ввода/вывода (GPIOs) работающих с уровнем напряжения 3.3v, 3 из этих контактов также могут выполнять функции аналоговых входов. Плата Raspberry Pi Pico достаточно универсальна в плане подачи на нее питающего напряжения, которое может подаваться на нее через разъем micro-USB, внешние источники и от батареек (аккумуляторов). Также важным преимуществом платы является отсутствие необходимости в наличии специального программатора для нее и она может программироваться с помощью простой технологии Drag-and-Drop” через USB.

Как показано ниже на распиновке платы Raspberry Pi Pico она имеет в своем составе 40 контактов, 26 из которых являются многофункциональными контактами ввода/вывода (GPIOs). Встроенный в плату светодиод подключен к ее контакту GPIO25. Одним из отмечаемых недостатков платы Raspberry Pi Pico является отсутствие у нее кнопки сброса (reset button), однако у плату есть контакт RUN, который выполняет роль контакта сброса (reset pin) если мы замыкаем его на землю (Ground).

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

Установка языка MicroPython на Raspberry Pi Pico

Для написания программ для платы Raspberry Pi Pico хорошо подходит язык MicroPython. Автор данной статьи (ссылка на оригинал приведена в конце статьи) для установки программной среды для работы с MicroPython использовал операционную систему Ubuntu 20.04 LTS, однако аналогичным образом это можно сделать и на других Linux подобных операционных системах.

MicroPython – это версия языка программирования Python, которая написана на языке C и оптимизирована для использования на небольших микроконтроллерах/микроконтроллерных платах, которой является Raspberry Pi Pico. Для написания программ на MicroPython нам сначала необходимо установить программное обеспечение для работы с языком Python. Автор проекта использовал для этого Python3, установленный на операционную систему Ubuntu.

Проверка версии языка Python

После установки Python нам также необходимо будет установить Python IDE “Thonny” для "безошибочной" разработки кода. Thonny IDE также поддерживается операционными системами Windows/MacOS. Нам всего лишь нужно скачать и установить ее дистрибутив для используемой нами операционной системы.

Установка Thonny IDE на плату Raspberry Pi Pico

Как загружать программы в плату Raspberry Pi Pico

После установки Thonny IDE нам необходимо подсоединить плату Raspberry Pi Pico к загрузчику (bootloader). Как мы уже знаем, для программирования платы Raspberry Pi Pico не нужен никакой специальный программатор, она программируется с помощью простого процесса drag-and-drop. Для реализации этого нам необходимо подключить плату к разъему USB в то время когда встроенная на плату кнопка BOOTSEL будет нажатой и удерживать эту кнопку до тех пор пока плата не определится системой, после этого кнопку можно будет отпустить.

Расположение кнопки BOOTSEL на плате Raspberry Pi Pico

Встроенная на плату кнопка BOOTSEL используется для того чтобы плата определилась на компьютере как устройство Mass-storage, для загрузки в нее обновленной версии прошивки или непосредственного написания кода программы на MicroPython. После того как плата определится на компьютере как устройство Mass-storage и плата соответственно перейдет в режим загрузчика, она получит имя в системе RPI-RP2. После этого ее можно будет открыть (по данному имени).

Плата Raspberry Pi Pico определилась в системе

После этого откройте окно терминала используя команду Ctrl+Alt+T и напечатайте в нем python3 -m thonny чтобы открыть Thonny Python IDE и удостовериться в том, что плата Raspberry Pi Pico подключена к системе.

Открытие Thonny Python IDE

После этого нажмите на кнопку ‘Python’ с номером его версии в правом нижнем углу окна Thonny чтобы выбрать интерпретатор Python "MicroPython (Raspberry Pi Pico)", который мы будем использовать для написания кода программы для нашей платы в Thonny IDE.

Выбор интерпретатора Python

После выбора интерпретатора "MicroPython (Raspberry Pi Pico)" появится всплывающее окно установки, в котором нам необходимо нажать на кнопку установки (install) чтобы загрузить последнюю версию программного обеспечения MicroPython в плату Raspberry Pi Pico.

Установка последней версии MicroPython в плату Raspberry Pi Pico

Процесс установки последней версии MicroPython в плату Raspberry Pi Pico

Завершение процесса установки последней версии MicroPython в плату Raspberry Pi Pico

После установки Micropython в плату Raspberry Pi Pico носитель с именем RPI-RP2 автоматически удалится ("отмонтируется") из системы и на экране появится интерактивная оболочка Micropython REPL.

Внешний вид интерактивной оболочки Micropython REPL

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

Начало работы в Thonny IDE

Результат работы нашей простейшей программы

Компиляция и загрузка кода программы для мигания светодиодом

Теперь, когда необходимое программное обеспечение у нас установлено, давайте попытаемся скомпилировать наш первым проект (мигание встроенным в плату светодиодом) чтобы удостовериться в том, что и наша IDE, и библиотека MicroPython работают корректно. Более подробно все эти процессы вы можете посмотреть на видео, представленном в конце статьи.

Расположение встроенного светодиода на плате Raspberry Pi Pico

Напишите код программы для мигания светодиодом в основном окне Thonny IDE и затем нажмите на RUN (зеленая кнопка) на панели инструментов.

Код программы на MicroPython для мигания светодиодом

После нажатия кнопки RUN на экране появится всплывающее окно, в котором вам будет предложено выбрать место сохранения программы. В этом окне нам необходимо выбрать “Raspberry Pi Pico” и сохранить файл под именем “main.py”. После сохранения файла встроенный в плату светодиод начнет мигать и даже если мы отключим плату от компьютера и запитаем ее от батарейки, то светодиод также будет мигать.

Диалоговое окно выбора места сохранения программы

Ввод имени для файла с сохраняемой программой

Код нашей программы в Thonny IDE

Примечание: нам необходимо сохранять нашу программу под именем “main.py” потому что при подаче на плату питания (то есть при ее включении) ее загрузчик на MicroPython будет искать файл с именем main.py чтобы запустить систему в работу. Это как функция main в C/C++.

Тестирование работы проекта

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

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

Источник статьи

(Проголосуй первым!)
Загрузка...
4 276 просмотров

Комментарии

Начало работы с Raspberry Pi Pico на MicroPython: руководство для начинающих — 6 комментариев

  1. 1. Как происходит импорт зависимостей из внешних библиотек не входящих в стандартный пакет Python?
    2. Как происходит импорт самописных модулей? Обычной загрузкой на плату?

  2. Не загружает последнюю версию программного обеспечения MicroPython в плату Raspberry Pi Pico.
    URLError:
    И что ?? Сертификаты глючат??

    • Однозначно сложно сказать, причин может быть много. Для начала попробуйте сделать это с другого компьютера с другой операционной системой. Или со своего компьютера, но с другой операционной системы, если есть такая аозможность

  3. В этой статье ошибочно сказано: "На плате находится 264 Кб SRAM памяти (ПЗУ) ".
    SRAM - ОЗУ.

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

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