- В тему: Что такое Raspberry Pi. Мини-ПК от 20 долларов — не просто игрушка
Официальная стоимость Raspberry Pi Pico — всего 4 доллара. Одноплатник построен на базе собственного кастомного чипсета в лице однокристальной системы на чипе RP2040: 2 ядра Cortex-M0+ с частотой до 133 МГц, оперативная память типа SRAM на 264 КБ, встроенное хранилище на 2 МБ. Это отличная связка для применения в робототехнике, метеостанциях и других DIY-проектах. Сама плата не позволяет использовать полноценную операционную систему, но может запускать программы на C или MicroPython, либо же запущенные на хост-компьютере (ПК, Mac или же «взрослая» модель серии Pi).
Собственная однокристальная система RP2040 вызывает не меньший интерес, чем сама Raspberry Pi Pico. Директор по производству Raspberry Pi Trading Джеймс Адамс (James Adams) рассказал, как был создан «Pi Silicon».
Мы не смогли найти способ предложить что-то новое в сегменте микроконтроллеров, используя существующие кремниевые решения конкурентов, поэтому мы решили создать свой чипсет. RP2040 находился в разработке долгое время — первоначальная работа по этому проекту началась в конце 2016 года, а в сентябре 2018-го мы получили тестовый экземпляр, который поместили в плату теперешней Raspberry Pi Pico. С тех пор он претерпел значительные изменения. Мы многому научились при производстве нашей первой однокристальной системы, и хотя на её создание ушло некоторое время, конечный результат получился восхитительным (с точки зрения архитектуры, а также соотношения производительности и цены) — это настоящий успех инженеров. RP2040 изготавливается на фабриках TSMC по техпроцессу 40 нм.
Чипсет предлагает действительно уникальные возможности: два ядра (я не знаю другие двухъядерные микроконтроллеры за такую цену) в сочетании с высокопроизводительной матрицей шин. Это означает, что вы можете получить полную производительность на обоих ядрах одновременно, и вдобавок к этому большой объём оперативной памяти с высокой пропускной способностью.
Помимо обычной «фиксированной» периферии (UART, I2C, SPI и другой) у нас также есть PIO (Programmable IO), способный эмулировать другие интерфейсы. Мы также добавили в загрузочную ROM другие полезные фишки, такие как оптимизированные библиотеки с плавающей точкой и USB-ядро, которое может использоваться как в режиме ведущего, так и в режиме ведомого устройства.
Откроет ли Pico серию плат на базе RP2040? Джеймс Адамс сказал, что это зависит от того, насколько успешной окажется данная модель.
Содержание
ХарактеристикиДизайнRaspberry Pi Pico в делеДля чего нужен Raspberry Pi PicoТак что же он такое
Характеристики
- Система на чипе: микроконтроллер RP2040, оснащённый двумя ядрами Cortex-M0+ с частотой до 133 МГц, оперативной памятью на 264 КБ и флеш-памятью на 2 МБ. Интерфейсы: 23 × мультифункциональный 3,3-вольтный пин; 2 × SPI; 2 × I2C, 2 × UART; 3 × 12-битный АЦП; 16 × контроллируемый PWM-канал; 8 × PIO.
На бумаге Pico не годится в конкуренты даже Raspberry Pi Zero стоимостью 5 долларов. Но эти модели нецелесообразно сравнивать: Pico — это не компьютер на Linux, а, скорее, микроконтроллер наподобие Arduino, благодаря чему он лучше подходит для определённых проектов. Он даже работает совместно с обычным Raspberry Pi. Как и «старшие» Raspberry Pi, и Arduino, малыш Pico использует 3,3-вольтные разъёмы. Это можно записывать в преимущества, но многие компоненты могут использовать напряжение 3 или 5 В, а те, которые предназначены для 5 В, все ещё могут работать через делитель напряжения конвертер или преобразователь логических уровней на плате.
Raspberry Pi Pico — целесообразное дополнение для использования во многих проектах. По сравнению с обычными моделями Raspberry Pi, этот малыш потребляет гораздо меньше тока. Также стоит учитывать, что он является микроконтроллером, не требующим никаких накладных расходов, которые свойственны полноценным компьютерам. В нашем обзоре мы питали Raspberry Pi Pico с 12 подключёнными светодиодами Neopixel, работающими на полной яркости, блоком питания на 5 В. Потребление тока составило 140 мА, то есть мощность равнялась всего 0,7 Вт! Это значение особенно примечательно с учётом того, что Raspberry Pi 4, работающий в режиме простоя, потребляет 4–5 Вт. По сравнению с Raspberry Pi новая Pico — настоящая малышка во всех отношениях.
Говоря о питании, Raspberry Pi Pico подключается через microUSB, либо же можно использовать VSYS GIO для диапазона между 1,8 и 5,5 В. У данной модели нет никакого отдельного разъёма для зарядки, поэтому необходимо использовать дополнительные примочки — это подробно описано на 18-й странице инструкции к использованию.
Дизайн
Больше всего поражает, что Raspberry Pi Pico очень похож на очередной контроллер Arduino, Adafruit Feather или Teensy. Малыш Pico уже точно не выглядит как типичный Raspberry Pi ни по дизайну, ни по пользовательскому опыту. Он является типичным микроконтроллером — при своих габаритах (51×21 мм) он даже меньше, чем Pi Zero.
Предназначенные для использования с макетными платами и платами для поверхностного монтажа, 40 пинов в Raspberry Pi Pico незапаянны — для их использования придётся обзавестись паяльником. К Pico можно припаять собственные клеммные колодки.
Для Raspberry Pi Pico требуются макетные платы, которые по размеру будут как половина одноплатника или даже больше, поэтому такой вариант не особо практичен.
Джеймс Абрамс рассказал о дизайне новой модели: «Pico разрабатывался таким образом, чтобы его размер и стоимость были минимальными, но при этом устройство оставалось подходящим для новичков». Плата имеет ту же длину, что и стандартный 40-контактный DIP, но на 2,5 мм шире его — Raspberry Pi Pico может выступать не только как головной микроконтроллер для разработки, но и как один из компонентов большей системы (его можно припаять как SMT-модуль, используя просверленные на краю платы отверстия).
Сможет ли Pico стать новым стандартом, подобно Raspberry Pi HAT или Arduino Shield? Вполне вероятно. Pico может быть интегрирован в платы-носители, одна из которых уже используется в Raspberry Pi, а другие в настоящее время разрабатываются в сотрудничестве со сторонними компаниями — подобные платы-носители обеспечат дополнительную функциональность.
Raspberry Pi Pico в деле
Без USB, HDMI или других портов, Raspberry Pi Pico полезен только в связке с компьютером — одноплатник может работать с Windows, Mac и Linux. В наших тестах мы использовали Windows 10 и на первых порах следовали официальной документации, которая разделена на два языка: C и MicroPhyton.
Сначала мы тестировали MicroPhyton — версию Phyton 3, разработанную Дэмиеном Джорджем (Damien George) для микроконтроллеров. Для установки MicroPhyton на Pico требуется скопировать UF2-файл на неё. Нажимая на кнопку BOOTSEL во время подключения кабеля Micro-USB в компьютер, появляется всплывающее окно нового диска. После того, как файл скопирован, к Raspberry Pi Pico можно подключиться как к последовательному устройству, обеспечивающему доступ к Python Shell.
Для написания кода и сохранения файлов на Pico понадобится редактор, производитель советует новичкам выбрать Thonny. Его установка была лёгкой, и вскоре после неё мы начали писать код, чтобы светодиоды загорелись и начинали мигать, когда PIR-датчик засекает движение.
В Pico появилось два нововведения для серии Raspberry Pi — программируемый вводы-выводы (Programmable IO, PIO) и аналоговые входы. PIO представляет из себя универсальный аппаратный интерфейс, который может быть использован для эмуляции интерфейсов наподобие I2C, SPI, I2S и даже VGA или DPI.
Мы протестировали ряд официальных примеров, в том числе PIO-проект по управлению связкой светодиодов Neopixel, в котором показывается, как сделать декоратор и функцию для создания анимационной последовательности на адресной светодиодной ленте WS2812. Для осуществления этого проекта понадобились знания о том, как работают Neopixel — если предстоит использовать PIO, нужно понимать, как в конечном итоге будет работать предполагаемая конфигурация. PIO может быть настолько простым или настолько сложным, насколько это необходимо — сам проект достаточно хорошо проиллюстрировал саму концепцию. Есть три аналоговых входа, оснащённые теми же самыми контактами GPIO, что и цифровые контакты, однако, используя класс АЦП из библиотеки машинного обучения, мы можем настроить их на считывание напряжения этих контактов. Аналоговые входы полезны для определения типа подключаемой электроники, будь то потенциометры, джойстики или датчики температуры.
Как дела обстоят с языком С на Raspberry Pi Pico? Ну, сейчас можно ответить одним словом — мудрёно. Следуя официальному руководству, мы прошли через несколько инструкций по установке приложений, библиотек и фиксов для того, чтобы зажечь светодиоды и отправить текст на последовательную консоль.
Хотя это сработало и мы остались довольны результатом, на завершение такого проекта потребовалось довольно много времени, и это может оттолкнуть многих. Для использования C нам нужно было перейти в командную стоку или использовать Visual Studio Code. У обоих этих подходов есть свои плюсы и минусы, но наш главный совет — внимательно изучите шестую главу инструкции к Raspberry Pi Pico и чётко следуйте описанным в ней действиям, иначе вы потратите слишком много времени на самостоятельное изучение нюансов. К языку C для Raspberry Pi Pico нужно будет вернуться, когда одноплатник начнёт продаваться — вполне возможно, что работа с этим языком будет усовершенствована и упрощена.
Джеймс Адамс отметил, что MicroPhyton — «предпочтительный» язык для Raspberry Pi Pico, но подчеркнул, что C является языком для низкоуровневых встроенных чипов. Он также сказал, что можно использовать ассемблер для ARM.
Для чего нужен Raspberry Pi Pico
Raspberry Pi Pico создана для встраивания в какие-либо проекты — её цена, габариты и дизайн делают эту плату прямой альтернативой для Arduino. Роботы, Neopixel и электроника — всё это стало возможным для фанатов Raspberry благодаря новому одноплатнику.
Хотя полноценные модели Raspberry Pi, даже та же Pi Zero, более мощные, малыш Pico всё же больше подходит для некоторых проектов. Он быстро запускается и не требует безопасного выключения, потребляет гораздо меньше энергии и имеет встроенный аналого-цифровой преобразователь, а этого не хватает всем остальным Raspberry Pi.
Единственное, чего не достаёт Raspberry Pi Pico, — беспроводной связи. У одноплатника полностью отсутствует Wi-Fi и Bluetooth, и это сильно ограничивает потенциал данной модели. Конечно, беспроводную связь можно обеспечить внешними компонентами, но для этого нужны соответствующие познания — не каждому это под силу. Прямые конкуренты Raspberry Pi Pico в лице ESP32 и ESP8266 стоят столько же, но в них есть Wi-Fi. Если этот момент является ключевым для вас, то, вероятно, от Pico стоит отказаться.
Так что же он такое
Raspberry Pi Pico — интересный гаджет. Он больше похож на Arduino, чем на Raspberry Pi, так что его предназначение немного размыто. Если вам нужен миниатюрный Raspberry Pi с Wi-Fi и Bluetooth — купите Pi Zero W. Если вы хотите встроить плату управления в свой проект в надежде на то, что она будет работать быстро и надёжно, — Pico как раз для вас.
Raspberry Pi Pico — именитый гаджет с хорошей поддержкой и Cortex-M0+, в этом плане его трудно переоценить.
Плюсы
- Низкая цена. Маленький размер. Лёгкость в использовании. Встроенный аналого-цифровой преобразователь.
Минусы
- Работать с языком С сложно. Нет встроенной беспроводной связи. Нет 5-вольтового разъёма для зарядки.
Это перевод обзора Tom’s Hardware.
Источник: