ui.add_head_html(""" """)

Подключение Raspberry Pi Pico

Коротко об отладочной плате

Рис 1. внешний вид Raspberry Pi Pico


Это маленькая, дешёвая и очень бодрая плата на микроконтроллере RP2040 (от самой Raspberry Pi). Как и все продукты Raspberry она имеет отличную документацию.

Cсылка на официальный сайт Raspberry Pi

Существует 2 семейства Pico , 1 и 2 , сервис LD Editor online пока тестировался мной только с первым семейством(смотрите фото платы на рисунке 1).

⚙️ Железо

  • Процессор: RP2040, 2 ядра ARM Cortex-M0+ (до 133 МГц)
  • Память: 264 КБ RAM
  • Flash: обычно 2-4 МБ
  • GPIO: 26 пинов
  • Интерфейсы:
    • I2C
    • SPI
    • UART
    • PWM
    • ADC (3 канала)
  • Цена: до 5 $ дёшево и сердито 💸

Загрузка программы в контроллер

Загрузка скачанной с сервиса прошивки в формате .uf2 в контроллер предельно простая, не требуется каких либо специальных адаптеров или программаторов. Подключение Raspberry Pi Pico к компьютеру производится с помощью обычного шнура USB , система его видит как обычный съемный флеш накопитель , главное перед подключением нажать на плате кнопку BOOTSEL и не отключая ее соединить плату с компьютером.

Использование физических выводов

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

Для того чтобы программа поняла что это вывод платы он должен быть обозначен как левом столбце таблицы 1. Большие буквы английского алфавита далее его номер. Например GP22, GP0 . Применение указанных в левом столбце таблицы 1 допустимо только к контактам и катушкам.

Если так обозначен нормально открытый или нормально закрытый контакт контакт , то вывод платы Raspberry Pi Pico будет настроен как вход.(рис 1 , выводы GP4, GP17)

Рис 2 Пример именования выводов платы RP Pico в лестничной диаграмме

Логика лестничной диаграммы будет считать нормально открытый контакт замкнутым при наличии напряжения на одноименном физическом выводе Raspberry , и наоборот нормально закрытый контакт разомкнутым.

Если наименование вывода из таблицы 1 присвоено катушке (GP25 на Рис 1), то этот физический вывод считается выходом и может управлять реальной нагрузкой.

Название порта ввода выводаВариант применения
GP0ВХОД/ВЫХОД
GP1ВХОД/ВЫХОД
GP2ВХОД/ВЫХОД
GP3ВХОД/ВЫХОД
GP4ВХОД/ВЫХОД
GP5ВХОД/ВЫХОД
GP6ВХОД/ВЫХОД
GP7ВХОД/ВЫХОД
GP8ВХОД/ВЫХОД
GP9ВХОД/ВЫХОД
GP10ВХОД/ВЫХОД
GP11ВХОД/ВЫХОД
GP12ВХОД/ВЫХОД
GP13ВХОД/ВЫХОД
GP14ВХОД/ВЫХОД
GP15ВХОД/ВЫХОД
GP16ВХОД/ВЫХОД
GP17ВХОД/ВЫХОД
GP18ВХОД/ВЫХОД
GP18ВХОД/ВЫХОД
GP19ВХОД/ВЫХОД
GP20ВХОД/ВЫХОД
GP21ВХОД/ВЫХОД
GP22ВХОД/ВЫХОД
GP25ВЫХОД НА СВЕТОДИОД
GP26ВХОД/ВЫХОД
GP28ВХОД/ВЫХОД
GNDОБЩИЙ, ЗЕМЛЯ
3V3 (36 на плате)ВЫХОД 3.3 ВОЛЬТ
таблица 1 Выводы Raspbery Pi Pico , которые можно использовать с LD Editor Online.

Типовые схемы подключения

Подключение кнопок и тумблеров , переключателей и.т.п. к входам RP Pico:

Подключать внешние кнопки, тумблеры , концевые выключатели, переключатели и тому подобное необходимо от вывода 36 платы Raspberry Pi (выход 3.3 вольт), через резистор от 220 до 560 Ом, аналогично схеме на рис 3, только номера и количество входов в соответствии с вашей программой . Резисторы необходимы для защиты входов микроконтроллера.

Рис 3 пример подключения кнопок к Raspberry Pi Pico

У входов для защиты от наводок включена подтяжка к земле.

Как подать внешний сигнал с большим напряжением на вход RP Pico

Очень часто возникает задача подать внешний сигнал сигнал на вход микроконтроллера , но входы рассчитаны только на напряжение не превышающее 3.3 вольта. Самым простым решением доступным начинающим является использование промежуточного реле , подключенного аналогично схеме на рис.4

Сигнал подается на обмотку реле, оно срабатывает и уже своими контактами подает 3.3 на вход отладочной платы. Катушка промежуточного реле должна соответствовать подаваемому на него напряжению, например 12 V постоянного тока, 24 V постоянного тока или 220 Вольт переменного тока.

Рис4 Использование промежуточного реле
Подключение релейного модуля как выхода к RP Pico:

Самый простой вариант использовать релейный модуль для Arduino подобный тому что на рисунке ниже. Бывают на разное количество реле , до 16 на одной плате из тех что я видел.

Рис 5 Релейный модуль

Relay VCC -> Pico 3V3V

Relay GND -> Pico GND

Relay IN -> любой вывод Pico из таблицы 1 , обозначенный как катушка -( )-

К контактам релейного модуля: NO, COM,NC подключается нагрузка.

Внимание , релейные модули не всех производителей сохраняют работоспособность на 3.3 вольтах ! однако питать модуль надо от 3.3 вольт , иначе выход RP может выйти из строя.

Рис 6 Расположение выводов Raspberry Pi Pico ( Pinout)