Комментарии 60
К примеру на основе дизайна плат Arduino можно создавать свои платы под конкретные задачи и все компоненты широко доступны, а где искать RP2040?
В своё время создание оригинального одноплатника Raspberry Pi подстегнуло других производителей снижать цены и выпускать что-то интересное.
Я не пробовал искать сам чип, но несколько компаний уже анонсировали выпуск своих плат на базе этого чипа. Не думаю, что они будут бросаться обещаниями если не могут организовать поставки. Время покажет.
Например, тех же блоков PIO (ради них я взял поиграться) на ESP32 нет. Так же на ESP32 нет такого количества железных PWM. Ещё на ESP32 количество и разрешение ADC меньше, так же нет поддержки USB.
Зато на ESP32 есть WiFi и Bluetooth. Есть много проектов, где нужен WiFi, но не нужно ADC и USB. Там ESP32 лучше подойдёт, конечно.
Если уметь использовать изюминку каждого микроконтроллера по назначению, то этот микроконтроллер будет особенно подходящим.
У новой esp32-s2 уже есть usb.
тех же блоков PIO (ради них я взял поиграться) на ESP32 нет
PIO блоки дают возможность создавать свои интерфейсы. Например, можно запрограммировать интерфейс WS2812, добавить I2S, SDIO или VGA и т.п.
ULP-RISC-V в esp32-s2 случайно не позволяет делать то же самое?
UPD: частота у него слишком маленькая конечно для VGA, это скорее для другого, да.
PIO в RP2040 заточен на I/O и за счёт этого может получить интересные скорости, которые не влияют от производительности основного камня. То есть, VGA как раз реально.
Цитата из datasheet'а (страница 325):
When outputting DPI, PIO can sustain 360 Mb/s during the active scanline period when running from a 48 MHzsystem clock.
Возможно, я не прав и опыта в микроконтроллерах у меня нет, но для домашних целей с нуля создать проект для stm32 мне показалось сложным (с ESP32 не пробовал, с arduino — пробовал, там тоже несложно, но сама arduino слабая по характеристикам).
В данном случае, судя по описанию, установка простая и писать на микропитоне можно без особой подготовки. А то что стоит 4 доллара — ну и ладно, для штучных экспериментов сэкономленное время будет ценнее.
Пожалуй, ESP32 было позамороченнее и это спустя несколько лет как я пробовал STM32.
Не совсем понял, что значит «Arduino слабая». В чём слабость платформы? Для прототипов подходит, порог вхождения ниже если сравнивать с тем же STM32. Большой парк плат и МК (в том числе STM32 и ESP32).
У неё проблема в низком уровне вхождения — те кто ей пользуются, зачастую, мало что знают о конкретных микроконтроллерах и о том, как вообще надо их использовать. И в том, что от вас там пытаются скрыть слишком много сложностей. А также в качестве библиотек и.т.п. Но не в том, что можно писать под довольно слабые AVR. Даже «родные» для неё платы есть на довольно мощных ARM.
К слову, про библиотеки не согласен: многие библиотеки из экосистемы arduino очень даже хороши.
К тому же, в перечисленных вами «слабостях» ардуино её же сила — всё предельно упрощено, и именно поэтому то комюнити… =)
OS (когда она есть) в Arduino скрыто от пользователя. Вроде как для ESP используется FreeRTOS внутри. Но фишка Arduino как раз в полной абстракции от OS и это хорошо.
Для многих проектов не нужны такие усложнения и невостребованная гибкость. Тут важнее «Time-to-Market».
И где же купить за 4$? Поделитесь ссылочкой. А то чёт не нашёл.
На rs-online есть. Adafruit уже продаёт (вчера вроде не было). Во многих европейских магазинах уже появились.
Тут можно посмотреть где купить за $4: www.raspberrypi.org/products/raspberry-pi-pico
В списке нет России, но можно найти в соседних странах с доставкой. Сама доставка, конечно, будет не бесплатная.
К сожалению, я не знаю кто в Казани может продавать похожее локально.
Например, надо управлять WS2812 — можно запрограммировать PIO на этот протокол и теперь он будет. По скорости это будет намного быстрее, чем делать bit-bang самому, а свободное время процессора потратить на что-то более важное.
Почему не описано? Я же не выдумал это. Есть официальное описание в datasheet'ах, которые я привёл в статье. В datasheet'е от RP2040 есть целая глава 3 с подробным и увлекательным описанием.
Тут небольшое введение на эту тему.
По поводу проектов: автоматическая подсветка, регулировка температуры/влажности, автономный робот и прочее.
Спасибо за статью! PIO тоже очень заинтересовал с момента анонса контроллера, было бы интересно почитать опыт работы с ним. В частности интересно, можно ли на нем достаточно эффективно реализовать 1-wire, про другие протоколы часто упоминают как примеры для PIO, а этот — нет. Особенно учитывая, что 1-wire ни в одном из популярных контроллеров аппаратно не поддержан.
Два ядра — тоже необычность, хотелось бы услышать про то, какие средства синхронизации есть, как работает обработка прерываний, поддержка со стороны SDK, прочие особенности.
Ну и что, что "опередил". Не сказать, что статьями прямо "засыпало", тем более если описывать разные аспекты камня и личный опыт. Если есть энергия — всегда лучше всегда писать. (= Сейчас особенно интересно, пока этот камень дойдет до нас (Россия) по адекватной цене и пока до него свои руки дойдут...
Про Pico я узнал на hackaday (20 января), потом в пятницу метнулся за ними в магазин и выходные игрался. В воскресенье пришла идея написать статью по свежему.
Для второго ядра у меня пока нет особо идей, да и PIO привлекательнее для экспериментов.
Поезд микроконтроллеров никогда не "уйдет", они всегда будут нужны. Выбор разработчика продиктован в основном ценником и качеством экосистемы. Добавить к этому тот факт, что цикл жизни микроконтроллера составляет 10-20 лет и входить в тему можно когда угодно, только составь достойную конкуренцию.
Особенно когда это не просто МК общего назначения, а ещё какие-то аппаратные фишки и ускорения, что бы задачу можно решить ещё более эффективно.
Например, лет 10 назад МК для машинного обучения был не так нужен как сейчас.
Поэтому уже только поэтому можно надеятся, что даже если не взлетит, провала не будет.
А вот, кстати, сравнение с esp:

взято отсюда — www.youtube.com/watch?v=cVHCllbN3bQ&t=4s
А по поводу таблички, то мне кажется, что там очень грамотное сравнение. Можно подумать, что PIO и ULP — это одно и то же. А это не так и потому в одно поле вставлять не совсем верно.
Ещё максимальный Flash у RP2040 будет 16MB и для ESP32 вроде как 16MB, а там указано 2 и 4 только.
Так же написано, что нет I2S и CAN. Это немного вводит в заблуждение, так как PIO может реализовать эти протоколы.
жаль, что pico разобрали так быстро. ждать апреля-мая…
Тут лучше сравнивать с тем же Cortex M0+. Например, Teensy-LC.
Да, pico быстро разобрали. Я успел только парочку купить, но зато по промо-скидке.
Думал взять ещё, но уже было поздно. Впрочем, не удивительно. Перекупщики и тут малину испортили.
Вот только своей ниши среди Blue Pill, ESP8266, ESP32, nRF52840 и Ардуино Нано(Pro Mini) у Raspberry Pi Pico я не вижу.
Почему ниши нет? Pi Pico, например, почти во всём лучше «Arduino Nano(Pro Mini)». Легко может её заменить.
С Blue Pill вполне можно сравнить, так как у них есть свои плюсы и минусы. Проект может грамотно использоваться плюсы той ли иной платы.
ESP/Nordic немного о другом и поэтому не совсем правильно сравнивать.
Pi Pico, например, почти во всём лучше «Arduino Nano(Pro Mini)». Легко может её заменить.Программируется в среде Ардуино с ее разнообразием софта и простотой? Может долговременно работать напрямую от LiIon или CR2032? Ардуино Нано(Pro Mini) идеальна для отладки простых устройств, устройств с низким потреблением, впоследствии легко заменяется ATmega328P в DIP или TQFP с обвязкой из 3х конденсаторов, кварца и резистора.
ESP/Nordic немного о другом и поэтому не совсем правильно сравнивать.Все это платы с микроконтроллерами для прототипирования/встраивания/самоделок, нижнего ценового диапазона, поддерживаемые средой Ардуино.
Я это именно так вижу.
Программируется в среде Ардуино с ее разнообразием софта и простотой?
Не сегодня, но завтра будет. Arduino тоже не сразу портировали на ESP и STM32.
Может долговременно работать напрямую от LiIon или CR2032?
Может. Но тут, конечно, зависит от определения слова «долговременно». Уж очень сложно измерить это слово количественно без дополнительной информации.
… впоследствии легко заменяется ATmega328P в DIP или TQFP с обвязкой из 3х конденсаторов, кварца и резистора.
Верно, именно так было давно. Сам даже так делал в своё время.
Но сейчас в DIP делают редко, да и по больше мере это новички в пайке для упрощения процесса. Но они уже перешли на платы (типа той же Нано), что бы даже с DIP'ом не возиться. Нано не сильно больше ATmega328P в DIP корпусе.
Сейчас возможность сделать на DIP не несёт такой ценности как это было лет 10 назад. Сегодня возможности самого чипа и среды разработки важнее вариаций с корпусом.
Народ ставить гребёнку 2,54 и делает DIP из всей платы если это необходимо. А это можно поставить практически на любую популярную плату.
Про ESP/Nordic я сказал так, потому что они дают беспроводное соединение. Нано и RP2040 такого предоставить не могут и потому они в разных категориях применения.
Конечно, можно использовать ESP32 как обычную Нано для простого управления светом по сенсору, а к Нано добавить WiFi модуль, но мы же говорим про голые МК и платы.
АЦП против блекпилл никакущее
да и БПф явно медленее считать будет
Raspberry Pi Pico на МК RP2040: начало и первые шаги. Что есть поесть за $4