Как стать автором
Обновить

Raspberry Pi Pico за $4 — на что способна новая плата от разработчиков “малинок”

Время на прочтение4 мин
Количество просмотров100K
Всего голосов 56: ↑50 и ↓6+44
Комментарии136

Комментарии 136

Интересный аналог esp8266, но совсем не raspberry по возможностям)

Без WiFi?
ESP — это в первую очередь WiFi. И контроллер там не ARM
Здесь конкурент скорее «голубая таблетка» — отладочная плата на STM32 начального уровня
Здесь конкурент скорее «голубая таблетка» — отладочная плата на STM32 начального уровня

Только ценник в несколько раз выше
Здесь конкурент скорее «голубая таблетка» — отладочная плата на STM32 начального уровня

Только вот при переходе к производству STM32 уходит в продакшен, потому что доступная и дешевая, а вот что делать с этим контроллером, если мне вдруг понадобится хотя бы пара тысяч штук на кастомной плате, непонятно.
Паять прямо эту плату как модуль. так и задумано, и даже возможно дешевле выйдет. Как вариант у спаркфана задуман модуль на том же чипе, вообще в слот вставляемый
Ага. И вместо 80 центов контроллер стоит $3. К тому же, если будет так же, как с малинами, то легко можно столкнуться с тем, что 100 штук покупаются, а вот 5000 уже нет. Просто нет на складах.
Э, стоп. Это не просто контроллер, это еще и кварц, и обвес, и флешь, и даже стаб напряжения.
А с поставками — да, могут быть проблемы
Ну опять же, для прототипа или десятка устройств — замечательно. Но вот как только идет в серию, на всем этом можно очень сильно сэкономить, поменяв на то, что есть в доступе на складах в данном конкретном месте и в данное конкретное время. Если это в китае, то на китайские аналоги, если это в рф, то на то, что есть у поставщиков. И в этом случае я хочу сам выбрать стаб, кварц и обвязку.
Было бы там что-то нетривиальное: высокие частоты, радиотракт, етс, еще был бы смысл в модуле, как например у esp8266/32, там и правда не имея опыта, можно в радиотракте накосячить, и часто лучше взять модуль.
А тут обычный мк без особых требований к обвязке.

Подписываюсь под всеми тремя вашими комментариями.

А за что минусуют-то?

Ну да, ремонтопригодность нулевая, цена при этом в таких масштабах уже конская. При этом требования бывают разные и обвес таких макеток не всегда хорош. Взять ардуину, ох и как же плохо с энергосбережением у них, нереально ужасно. При этом распаяв отдельно чип, можно получить довольно хороший уровень энергосбережения. Подобные платки для штучных прототипов вкатят, но не для массового производства, какой к примеру завод возьмётся распаивать это на плату?
даже VGA / DPI

Интересно было бы попробовать такой вариант в связке с б/у LCD монитором за 300 рублей — шикарная погодная станция бы вышла.
Проще купить LCD экранчик с подключением по SPI за те же 300 рублей.
Чип действительно уникален, ведь двухъядерных систем такой стоимости на рынке больше нет.

ESP32 — два ядра по 240 МГц, вышел в 2016, произведён TSMC по 40 нм процессу. Ещё и ОЗУ вдвое больше, и цена чуть ниже $4.
И есть WiFi!

И Bluetooth!
)

Полностью поддерживаю всех, кто хочет беспроводные интерфейсы. В статье, кстати, есть фото одной из плат на том же чипе, что и Pico: Arduino Nano RP2040 Connect — там есть и WiFi, и Bluetooth, и даже акселерометр с гироскопом. Обязательно куплю поиграться, когда выйдет.
А еще за 5-8 долларов продается ESP32CAM — плата с 2 мегапиксельной камерой. Я летом с такими баловался, записывал как растут растения.

А что по энергопотреблению?

Ну и зачем она нужна, проще взять ту же Blue Pill или Nucleo на основе STM32F103 или 401. Это чистые микроконтроллеры. У них возможностей даже больше.

У Blue Pill одно ядро работающее на вдвое меньшей частоте и у нее в 13 раз меньше RAM. Само ядро то мощнее, но в Pico добавили аппаратное деление, семафоры и т.д., плюс PIO работает параллельно процу, там десяток команд, по сути пишутся микропрограммы на ассме.

На самом деле у этого мк есть свои бонусы. Например, там нет флешь памяти на борту, есть внешний spi флеш. Зато до 16 мбайт. На rpi pico распаяно 2. Из этого можно делать прекрасные даталоггеры, которые пишут "в себя". Я делал на stm32f103 такую штуку — барограф для воздушного шара, и мне для данных было доступно 96кб. Пришлось довольно сильно искажаться:)

Чипы spi dataflash стоят копье

И о чем это говорит?

о том, что для примитивных задач, типа дата логгеров blue pill + DF будет ощутимо дешевле этой погремушки.
Пилюля на али стоит 2 доллара, а эта плата будет стоить под десятку из-за импортного для китайцев проца и тп
ATmega16 и SD карта = даталоггер на 32ГБайта. Но меги сейчас стоят дорого, лучше сразу на stm32f103 делать, и полезней на перспективу
Вы тут получаете уже распаянное устройство за 4 бакса. За 10 на спаркфане с 16 мб. Причем если хоть какая-то обработка, то rp2040 вообще-то сильно мощнее f103 и по процу, и по памяти (эдак на порядок).
2 ядра по 133МГц = 266 МГц кортекса м0.
Пилюля на 72 МГц кортекс м3. Тут даже пол порядка выигрыша нет. А фактические цены, по которым можно будет купить на али/авито будут вообще не в пользу пико.

Кроме того, процы BCM в розницу не купить. Если кто захочет перенести свою поделку на проводах на нормальную плату, его ждет разочарование.
На порядок — я конкретно про память. 20 против 264 RAM, 128k против 16мб (и то и другое на максималках)
BCM тут кажется вовсе непричем. Во всех релизах упоминается, что чип разаработан самим rpi, производство — tmsc. Может и будет потом в розницу, а пока и платы-то сами под заказ. В принципе что сама пика, что SparkFun Pro Micro можно запаять как модуль, а SparkFun MicroMod втыкается в слот m2
На максималках у stm32f103 другие размеры памяти
stm32f103
Когда вы увидите этот stm32f103z и его цену, то вам совсем не понравится
Быстродействие M0 0.84 DMIPS / МГц
Быстродействие M3 1.25DMIPS/МГц

133 * 2 * 0.84 = 223,44 DMIPS
72 * 1.25 = 90 DMIPS
всего в 2.5 раза
Пол-порядка десятичных — это 3.16 раза (sqrt(10)), так что и по частоте вполне есть.
Я имел в виду что Меги безнадежно отстали от рынка. А если вы освоите f103, то перейти на f107 или f407 будет гораздо легче чем с меги на стм. Но stm не панацея. да и для даталоггера производительность вряд ли основной параметр, скорее более важно время журналирования от одной батарейки.
лучше сразу на stm32f103 делать, и полезней на перспективу

Это те, которые уже почти пропали из продажи, а на остатки цены задрались вплоть до 17 баксов за контроллер? :)
Не, для себя-то пока еще можно купить на Али синюю платку… Но долго ли это продлится?
ну камон, на stm32 столько плат, на пилюле свет клином не сошелся
Кстати, у меня, похоже, «другой на сердце дьявол» — Longan Nano
По мощности чуть больше пилюли, и примерно те же гроши там еще экранчик и слот под карту. Правда разъем USB-C
Ну опять же — для себя в единичном экземпляре — да. А если захочется перенести проект на нормальную плату и пустить в хоть какое-то производство?
GD32 тот же кортекс м3, еще и с более шустрым флэшем и 108МГц против 72. А стоит — дешевле. И никаких стен пафоса, уровня «М1»
Не понял вашего комментария
Цены на STM32F103 начинаются от $1.68 за STM32F103C4T6 до $6.2 за STM32F103ZGT6 в партии 1000 штук.
цены
при том что восьмибитная ATmega16 стоит $3.56 на тех же условиях,
и в то время как готовая плата ESP32-WROOM с памятью, вайфаем, разъемами на esp32 с частотой 240МГц и двумя ядрами стоит те же $3.5 в розницу)

Если вы их берете под производство, то нужное вам количество нужно забронировать у дистрибьютера в начале года (просто потому что производителю нужно заложить в свои планы на производство ваше количество). Если вы берете штучно, так и берите на али, и цена будет не оптовая, а розничная. А сокращать производство stm не собирается, наоборот расширяет линейку stm32
Цены на STM32F103 начинаются от $1.68 за STM32F103C4T6

Я всегда брал STM32F10RBT6 партиями по 100-200 штук раз в 2-3 месяца по цене 2$ за штуку (в Компэле). Не подскажете где я сейчас мог бы взять такую партию по такой цене? И с ожиданием не больше месяца? Даже согласен на цену в 3$.
У Компэла сейчас вот такая картина в предложениях


Аналогичная картина и у других дистрибютеров.
Скорее всего ни где. Ни кому не выгодно держать на складах сложную полупроводниковую продукцию. Для того чтобы затарить склад, кому-то нужно их заказать у производителя, оплатить и ждать когда кто-то выберет и вернет деньги в кассу. или не выберет и списать потом.

Все производители уже несколько лет как перешли на предзаказ. Кроме того, и европейские и американские производители обязаны отчитываться своим правительствам по поводу выполнения санкций против России, в которые входят и сложная электроника.

Сейчас единственный способ обеспечить свое производство это оформить ваши проекты через официального дистрибьютера в России, продекларировать объемы производства и гарантированно получить чипы для своих нужд на ближайший год. И такая ситуация со всеми европейскими и американскими производителями микроконтроллеров и сложной полупроводниковой электроники. И такая ситуация уже несколько лет. Раз вы регулярно работаете с Компелом, то наверняка они вам уже весь мозг проели что нужно оформить проекты и обеспечить себя стабильными поставками на ближайший год. Если, конечно, вы не занимаетесь производством военной техники и оборудованием для нефтедобычи, эти сферы под санкциями и легально вы для них не получите чипы.

или переходите на китайские чипы
Скорее всего ни где. Ни кому не выгодно держать на складах сложную полупроводниковую продукцию. Для того чтобы затарить склад, кому-то нужно их заказать у производителя, оплатить и ждать когда кто-то выберет и вернет деньги в кассу. или не выберет и списать потом.

Ну вообще-то я уже 10 лет заказываю их и все 10 лет этого ширпотреба было полно везде. Изредка бывали моменты, когда надо было подождать 3-10 дней. А тут вдруг всем резко стало невыгодно? :)
Раз вы регулярно работаете с Компелом, то наверняка они вам уже весь мозг проели что нужно оформить проекты и обеспечить себя стабильными поставками на ближайший год.

Ни разу ни словом не заикались об этом. Да, на некоторые позиции бывало требовалось заполнить анкету типа «А для чего это Вам нужно и не будете ли вы строить из этого оружие?», но и все.
Действительно, многие позиции stm32 за январь выбрали со складов.
у них просто забастовка на фабрике STM была, чипы не делали
По наличию на складах дистрибьютеров лучще смотреть на странице сомого чипа на сайте производителя
Distributor availability of STM32F103RBT6
Показывает 1300 чипов на складе у ARROW в европе на 22 января

А вот сам Arrow показывает по нулям наличие.
Заголовок спойлера

На вашем скрине есть кнопка запросить квоту. Судя по статистике arrow и stm продажи идут, но на складе не задерживаются. Так что за неделю, скорее всего, arrow вашу квоту бы закрыл
Срок закрытия квоты у них чуть больше обещается :)
Это время производства, если вы сейчас закажите миллион чипов, то производитель вам их сможет произвести не ранее чем через пол года.
А то что сейчас продается на Arrow было запущено в производство пол года назад. Вы же видите что за неделю количество проданных чипов изменилось. Ради ваших ста чипов ни кто производство запускать не будет. Или, по другому говоря, если нет спроса на данный чип, то поставлять его на склад не зачем. А спроса на чип нет, пока не оставят заявку на квоту.
Нет, не вижу. Но это могут быть просто ранее оформленные запросы. Производитель-то поставляет им чипы, я не сомневаюсь, но в недостаточном для удовлетворения спроса количестве. Поэтому сейчас и мин. партия 960 штук и срок поставки 20 недель. На более ранние сроки все ожидающиеся поставки, видимо, уже забронированы.
Ради интереса запросил квоту на 1000 штук, хотя мне такое количество и нафиг не нужно. Посмотрим что ответят.
Пришел ответ на запрос квоты. Коротко: «Этой позиции сейчас нет в наличии и мы не знаем когда она появится.»
Ради ваших ста чипов ни кто производство запускать не будет. Или, по другому говоря, если нет спроса на данный чип, то поставлять его на склад не зачем. А спроса на чип нет, пока не оставят заявку на квоту.

Вы уж простите, но похоже, Вы просто не в теме. Это один из самых ходовых микроконтроллеров, которые всегда были в наличии сотнями на складах у каждого первого продавца. Вот еще до ноября точно были. А потом спрос вдруг резко исчез? :)
Да какой этот? ) вы за время общения три раза меняли название чипа ))
STM32F103RBT6
STM32F10RBT6 тут вы что-то не дописали
STM32F303RBT6

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

Ни производителя и дистрибьютера ваши сто чипов не интересуют. Они даже запускать производство ради ста чипов не будут, и ради тысячи не будут. Вам доставались остатки от крупных заказов, крупный заказчик заменил корпус, или объем памяти или взял более старший чип, и ни каких остатков не осталось. И ни кому не интересны ваши сто чипов даже если вы думали что он ходовой, тем более что вы не потрудились забронировать их своевременно. Просто вы не в теме. Это для вас он ходовой, а STM производит несколько сотен типов stm32 и половину из них считает ходовыми. То что вы считаете один из семи сотен типов более ходовым, это ваше личное заблуждение.

С другой стороны, есть какие-то явные проблемы в мире с производством микросхем. Авто производители один за другим заявляют что не смогут произвести запланированное количество автомобилей из за нехватки чипов.

а сам STM заявляет что чип STM32F103RB будет производить минимум еще десять лет
Да какой этот? ) вы за время общения три раза меняли название чипа ))

Да, перепутал, но сути это не меняет :) На складах нет ни STM32F103RBT6 ни STM32F303RBT6.
Ну так-то правильно, чтобы сейчас получить чипы заявку нужно было разместить минимум пол года назад.

Серьезно? То есть все дистрибьютеры работают только по предварительным заказам, которые они размещают у производителя? Даже по такому ширпотребу как STM32F103?
Вам доставались остатки от крупных заказов, крупный заказчик заменил корпус, или объем памяти или взял более старший чип, и ни каких остатков не осталось.

10 лет у всех дистрибьютеров эти контроллеры всегда были в наличии сотнями и тысячами, а сейчас из всей линейки STM32F103 у крупнейшего из них только 3 модели в наличии. На форумах народ жалуется на пропадание из наличия не только этих, но и STM32F0xx, STM32F4xx, STM32F7xx. Один из известных китайских производителей приостановил продажи своих плат для 3D-принтеров, объяснив это трудностями с поставками STM32F407.

Вчера «ванганул» под новостью про эту плату — игрушка для обучения, ковыряния в микро питончике. Оказался прав, что не удивительно, исходя из параметров устройства. Статья это подтверждает. Расширение классической малинки без наСИльства — тоже плюс для быстрого старта. Вот до этой мысли вчера не допер. Но, ИХМО, очень посредственное железо, при огромном «хайпе». Не знаю, как такой чип проектировали 5 лет, подобные проекты любой грамотный RTLщик + конструктор СБИС за неделю наклепает (без учета экосистемы). Возможно, дело в сборе средств на лицензию, аренду ПО и производство. Мое личное мнение… А так — успеха проекту и в добрый путь! Много чипов разных не помешают!
Если эта плата будет массовой, микропитону только плюс будет большой от роста сообщества. Но, для себя то ESP значительно полезнее, и наличием WiFi, и имеющимися библиотеками
Тем, кто хочет WiFi и библиотеки, зайдёт Arduino Nano RP2040 Connect: там есть WiFi, и на неё будут портированы библиотеки Arduino.
Эту плату только анонсируют. И цена платы пико даже без вайфая дороже чем модуль с esp32

Да, 5 лет многовато (возможно, долго определялись с требуемые результатом), но и недели маловато даже для десятка грамотных инженеров. И просто rtl не достаточно, что бы клепать микрухи.

Согласен. Неделя — это «сарказм». На FPGA такую штуку поднимали за пару часов, нужен еще один проц — нарисуем. Оптимизация — долгий процесс. Не все так просто. Особенно — если ручками много что делать, а не выпускать «круглый» дизайн… А такое, к сожалению, видел…
>> за неделю наклепает
>> поднимали за пару часов
Как так получилось, что данный чип выпустили они, а не вы?
А так, что Малинка — это бренд. Любые побрякушки от неё разлетаются «на ура» хотя бы по новостным лентам. А кому была бы интересна ровно такая же платка, запущенная на Кикстартере никому не известным обывателем?
Скажу больше, чип с такими несбалансированными характеристиками просто захейтили бы. Как разработчик встраиваемых систем с 20 летним стажем вообще не вижу коммерческого применения данной платформы кроме того, о чем писал. Но в своей нише, как плата для интерактивного обучения / расширения малинки без наСИлия, изделие вполне выгодно смотрится, вот только процессорное ядро слабовато…
Этот не сделали, так как нам не нужен контроллер с такими характеристиками, а которые сделали — в свободной продаже нет и не будет, да и летают они в нескольких тысячах километров над землей. Теперь к теме. Снова же, я не RTLщик и конструктор СБИС, но очень плотно работаю с этими ребятами, по этому эту кухню немного знаю. Вот сложно ли собрать минимальную систему в FPGA для запуска минимального Linux? Дело 5 минут (не считая многочасовой синтез). Открывается IDE, рисуется (черчением это даже не могу называть) процессорное ядро, контроллер DRAM, JTAG и UART. Все без исключения конфигурируется в GUI. Снова же, если демоборда известна и все конфиги к ней есть, иначе — только настройка ног и контроллера DRAM займет много часов. Да, образ системы грузится по JTAG и из устройств ВВ только UART, но в терминале уже можно будет работать. Смогу ли я это вот прям сейчас, дома, повторить? Конечно нет. Качественные, поддерживаемые «из коробки» отладочные платы стоят сотни долларов, а софт — тысячи. К чему я клоню — сам кремний, из готовых IP ядер собрать не так сложно. В отличии от разработки самих ядер. Реально, для такого простого малинового чипа, тестовое окружение куда сложнее собрать, чем сам чип. Но вот цена ПО для этих целей — миллионы долларов. Не знаю, сдает ли кто в аренду данную инфраструктуру, в политику не лез, на предыдущей работе было куплено «по минималкам», FPGA инструменты, вообще спиратили, на текущей — в полном объеме, но и компания — одна из кремниевых гигантов. IP ядра тоже ой как не дешевы, по этому и предположил, что использование примитивного M0 — исключительно вопрос цены лицензии. И 5 лет — это не разработка, а решение административных / финансовых вопросов.
Ну вот опять «да мы ща с пацанами за пять минут такое нарисуем».
Вы хотя бы ТЗ за пять минут напишете?
Или специалисты с 20 годами работы в ембеддед начинают сразу с FPGA?
А потом ещё за 5 минут, магическим образом, схема из FPGA материализуется прямо в магазинах, вместе с софтверной обвязкой и т.п.

Тот же Baikal-T1 устроен не сильно сложнее вашего «Открывается IDE, рисуется (черчением это даже не могу называть) процессорное ядро, контроллер DRAM, JTAG и UART».

К чему я клоню — сам кремний, из готовых IP ядер собрать не так сложно.

Никто и не говорит что это «так сложно».
Но между «каляками-маляками» в Quartus и готовым продуктом на прилавке, лежит долгий путь.
Да никто не спорит, что от каляк, правда, калякали в Виваде, огромный путь. В брингапе парочки чипов уже удалось поучаствовать, Ни с чем не сравнимое чувство, адреналин перед первым включением зашкаливает. Так вот чип, прилично посложнее Байкала, с кучей собственных IP от ТЗ до кремния — чуть больше года. Правда и команда — сотни человек, и компания — один из мировых «кремниевых» лидеров. Я не говорю, что малинку делали дурочки, которые 5 лет такой простой проект рожали, а связываю столь длинный срок с поиском финансов, инфраструктуры и так далее. Софт для разработки микросхем, это уже не только про ПО и деньги, уже про политику. Вот сомневаюсь, что если я заявлюсь в Кэдэнс с мешком долларов, мне так просто его продадут.
PS: Многие IP ядра уже готовы были, заимствованы из других проектов.
чуть больше года. Правда и команда — сотни человек, и компания — один из мировых «кремниевых» лидеров.

Т.е. речь идёт о сотнях человеко-лет и неограниченных ресурсах.
Не стоит смеяться над проектами, которые тянутся силами одиночек,
особенно в таком бизнесе, где без миллиона долларов с тобой и разговаривать не будут.

Вот к примеру Parallella, где один человек на свои личные деньги разработал микроархитектуру, SoC и подготовил его к производству.
ОС, порт GCC для своей архитектуры, софтверная поддержка, плата. Всё это было сделано силами 2-3 человек.
А где я смеялся над проектом? Просто предположил, что львиную долю времени могло занять поиск финансов и бюрократия. На самом деле, покурив мануалы, пришел к выводу — чип прекрасен для области применения. И его производство — это не только «хайп», хоть доля его есть, не только чисто финансовые соображения, но и отличный образовательный материал. В коммерческих изделиях, думаю, он не будет успешен, но малиновые платки разлетятся как горячие пирожки. Даже статейку писать по нему начал.
Т.е. речь идёт о сотнях человеко-лет и неограниченных ресурсах.

Ресурсы ограничены. Ни один капиталист или здравомыслящий человек не будет спонсировать полную ерунду. Если брать только конкретный кристалл, то да — сотни человеко-лет. Если добавить «самодельные» IP ядра, то уже можно говорить про тысячи, а инфраструктуру — про десятки тысяч. Результатом пользуются сотни миллионов, так что мифические человеко-часы превращаются в человеко-секунды. Интересно посчитать, сколько человеко-тысячелетий в Linux (именно в ядре, а не OS)…
Ресурсы ограничены.

Вы же понимаете, что я говорю не о «всей энергии вселенной», а о достатке финансирования для проекта сложностью в десятки тысяч человеко-лет. Тем более в области разработки микропроцессоров, которая предполагает высокие затраты.
НЛО прилетело и опубликовало эту надпись здесь

А какой там компилятор внутри используется?

для ARM, очевидно, используется arm компилятор
платка для тех кто не хочет разбираться с C для работы с микроконтроллерами)
Поддержка C и интеграция с Visual Studio Code там тоже есть.
Там не настоящий питон, а микро питон. Так как настоящий питон предполагает что у него бесконечные ресурсы, а для микроконтроллеров это всегда не так
блин, зеро ни на что не годная, а они ещё хуже плату выпустили… лучше бы зеро улучшили, а то что за фигня — зеро не тянет линукс с их фирменной оболочкой пиксель. запускаешь смену локали и платка зависла, запускаешь браузер и платка зависла, запускаешь открытие вордовского документа — платка зависла… светодиодами мигать и просто ардуинка может.
Все таки zero, КМК, не плох для коснольных проектов, которым нужно стучаться в сеть/работать с базами/linux-ядро и приложения/нормальный python etc. Что-то типо микро домашних серверов или роботов с кучей сеносоров и wifi и т.д.
Зеро — это первая малина. И хотеть от нее можно не более, чем от первой малины. Сейчас её удел — подключение древних принтеров к современным ПК и автоматика — за дверьми и пропусками следить
Как микроконтроллерщик с относительно небольшим стажем, все же могу уверенно сказать, что Pico — скорее плата, чем микроконтроллер. Даже скорее плата с микроконтроллером, во как
«Разработчики провели тестирование платы, подключив ее к 12 светодиодам Neopixel на полной яркости от источника питания 5В. В итоге потребляемый платой ток — всего 140 мА, с 0,7Вт.» недостаточно хорошо проведённое тестирование, неясно сколько будет потребление у платы на половинной яркости и на меньшем количестве _адресных_ светодиодов. Ну вы хоть внимательно перечитывайте, то что написали :-(:-(:-(:-(
У таких диодов питание отдельно от платы идёт. Плата только управляющий канал обслуживает. Так что 140мА, это ток потребления самой платы, не зависимо от исполняемой задачи.
Не мне это надо объяснять, а автору статьи. Что я и попытался сделать. Тем более что у данной платы потребление скорее всего будет одним и тем же что в простое, что в динамическом управлении линейкой из 12 светодиодов.
140 мА — потребление одной платой, не считая диодов??? Да ну нафиг такую прожорливую плату :))
Это получается что она греется как печка(0.7Вт по если мерили ток по 5V), так еще и потребляет как esp32 c включенным wifi
Может быть это все же вместе с 12 подключенными светодиодами? Иначе какой-то трэш получается.
Интересная штучка. Понятно что по характеристикам проигрывает ESP32. Но они могут взять поддержкой, документацией и своим комьюнити.
PIO — универсальный интерфейс, который можно использовать для создания таких интерфейсов, как I2C, SPI, I2S и даже VGA / DPI

Ну так мк ничем не отличается от любой ардуинки
На самом деле вот что:


PIO is programmable in the same sense as a processor. There are two PIO blocks with four state machines each, that can independently execute sequential programs to manipulate GPIOs and transfer data

https://datasheets.raspberrypi.org/rp2040/rp2040_datasheet.pdf, стр. 323


...When outputting DPI, PIO can sustain 360 Mb/s during the active scanline period when running from a 48 MHz system clock.

https://news.ycombinator.com/item?id=25856291

Я, как уже сформировавшийся железячник, перешёл с готовых микроконтроллеров (RPi pico, stm32 и т.д.) на свои собственные, сделанные на FPGA. Вот где огромная гибкость и мощь! Нужна специфичная периферия? Не беда! Verilog в зубы и вперёд! :)
Но там цена уже немного другая получается. В целом, если не специфика, конечно, дешевле выбрать подходящий готовый контроллер.
Ну, это верно. Просто у меня в последнее время было много «жирных» проектов,
где нужны были либо камни помощнее, либо послабее, но с кастомной периферией.
Решение на FPGA вышло сопоставимым по цене, однако гибкости стало намного больше.
Какие FPGA вы используете?
Статью бы про это. Лично мне надо прослойку между STM32 FSMC и внешним ОЗУ, чтобы внешняя память стала кольцевой. Довольно банальный сумматор входящего адреса 24 бита и внутреннего счетчика 24 бита, т.е. хватит кипича 32-48 ног, но он должен быть быстр. Но, с какой стороны подступиться — не знаю.
К то у FPGA является синей пилюлей?
Так вроде внешняя память и так получается кольцевой? Старшие биты адреса, не подключенные к внешней памяти, просто игнорятся и, скажем, если внешняя память имеет 10 бит адреса (адресация 0-1023), то при обращении через FSMC к адресу 1024 произойдет фактическое обращение к памяти по адресу 0.
Задача чуть хитрее. При поступлении данных с АЦП счетчик кольца увеличивается на 1.
Тактировать его вполне может тот же АЦП, рапортовав что данные готовы к чтению и отправив перепад, мол увеличьте кольцо на 1.
А какой тип памяти и какая частота поступления данных?
частота перестройки кольца — 48-256 кГц, а с частотой обращения к внешнему ОЗУ я немного плаваю, т.к. обходился встроенной в МК, эмулируя кольцо. Но, если притягивать за уши максимум, то кортекс 550МГц читает ОЗУ за 2 такта, соответственно, 275М обращений в секунду к ОЗУ в пике вполне может быть.
Понятное дело, что и компилятор оптимизирует чтение из ОЗУ и датакэш очень неплохой, но сотни мегагерц.
Хм… Но ведь FSMC вряд ли работает на такой частоте? А какую память предполагаете использовать? С такой частотой обращений, пожалуй, только DDR справится, и отделаться какой-нибудь мелкой FPGA уже не выйдет.
Я думал речь идет о единицах-десятках мегагерц, раз шла о приеме данных с АЦП. Или там и АЦП на сотни МГц?
Пока не нырял в железо, к сожалению. Больше по программированию.
Частота дискретизации — невысокая. Но, дальше идет обработка, моделирование и т.п., И оно довольно ресурсоемко.
Сложно что-то советовать по таким размытым вводным :)
Ну, примерная схема — ясна. 24 ноги на вход адреса (если он не половинками передается, как на 565ру5), 24 ноги на выход, 1 нога — вход счетчика кольца. Итого, корпус 64 ноги.

Счетчик до 24 бит и сумматор 24 бит. Примерно ясно сколько уйдет ячеек.
Остается определиться, что взять под тактовую, например, 20-60-100-200 МГц, какие в FPGA под это есть синие пилюли?
А как должен преобразовываться адрес внутри этих 24 бит? И Нашли ли Вы уже SRAM на нужную частоту объемом 16 МБ?
Может быть достаточно будет чего-то типа EPM240 — www.aliexpress.com/item/4000204544746.html
SRAM обычно смотрится какая «у всех», т.е. народная марка алиэкспресса, такая и ставится. Только начали присматриваться.
За ссылку — большое спасибо, посмотрю.
Боюсь, что «народную» асинхронную SRAM такого объема (24 бита адресация) не найдете :) Да и не народную тоже.
Ниже правильно написали, что совершенно непонятно что именно Вам нужно. А значит и непонятно что Вам советовать :)
Если четно, не понятно что вам нужно. В простейших микроконтроллерах ADC умеет делать одиночные измерения, либо производить оцифровку по таймеру с заданной частотой, в этом случае в прерывании нужно забирать полученное значение. У ADC в старших микроконтроллерах есть более производительные режимы. Вместе с ADC настраивается контроллер прямого доступа к памяти, выделяется блок памяти под оцифрованные значения. И АЦП автоматически заполняет этот блок измеренными с заданной частотой значениями. Обычно настраивают блок памяти из двух половин, когда одна половина заполнится значениями вызывается прерывание, АЦП продолжает заполнять вторую половину, а вы из первой выгружаете данные и обрабатываете. Когда вторая половина заполнится данными АЦП, так же вызывается обработчик прерывания, и АЦП начинает заполнять первую половину, а вы выгружаете и обрабатываете вторую половину буфера. Это штатный режим, специально предназначенный для потоковой обработки аналоговых данных, при чем выполняется этот режим аппаратно, без участия программы вплоть до выгрузки буфера.

У вас описание так выглядит, будь-то вы первый кто столкнулся с необходимостью обрабатывать поток данных с ацп.

Мне надо обрабатывать довольно много данных, разом. Для этого больше всего подходит кольцевая память, эмудяция которой на МК довольно ресурсоемкая, т.к. при любом чтении, или записи надо преобразовывать кольцевой адрес в реальный.
DSP могут в кольцевую память, но это +1 чип (цена, разводка и т.п.), + зависимость от поставщика из США. А РФ с США не особо дружит. Те же стм32 купить — подписи ставить, что не для военных целей.
К тому же, имитация кольцевой памяти штука довольно нетрудная. Смущает только скорость доступа.

Штатные АЦП могут от силы в 12 бит, мне надо 19.
У STM32F4 штатный АЦП можно довольно смело назвать «кошмар». В H7 с этим сильно лучше, не в последнюю очередь благодаря аппаратному оверсемпленгу + среднему арифметическому. Таким образом 12 бит получаются довольно стабильные.
Так у вас внешний АЦП?
так и не понял я вашу цель, какая постановка задачи

В любом микроконтроллере можно 12бит АЦП сделать кошмарным просто безграмотно сделав трассировку платы (в микроконтроллерах не делают разрядность АЦП больше 12 бит по технологическим причинам). Для внешнего измерительного АЦП с разрядностью более 19 бит требования к трассировке печатной платы становятся в разы сложней.
Оно хорошо дополняет большую малинку. GPIO большой не умеет работать с аналоговыми сигналами и довольно заметно грузился процессор при работе с ШИМ.

Сейчас выносим весь недостающий функционал на отдельную и пускай грузится специализированное ядро. Бонусом поддержка community

Смысл микроконтроллера в аппаратных блоках: таймеры, интерфейсы, ШИМ, ADC/DAC и прочее. Насколько они продуманы тут, несколько широк выбор? И зачем два ядра и куча памяти в МК, если у него не окажется нужного в очередном проекте модуля, например CAN? Если взять пример МК от ST, то один из жирных плюсов — огромный выбор разных комбинаций наборов модулей с параметрами ядра, размеров и корпусов. А тут получили очередной Arduino где основной плюс — низкий порог входа.

Ключевая интересная фича тут — PIO. Я пока не вчитывался в даташит, но поверхностно это выглядит как универсальная штука, позволяющая реализовать любой интересующий протокол/интерфейс при помощи низкоуровневого кода, выполняемого в специальном отдельном блоке. То есть в теории можно сделать и CAN.
А вот тот факт, что USB и на этом камне максимум full-speed потянет это печаль. Почему-то до сих пор никто не выпускает относительно дешевых камней с поддержкой high-speed.

Stm32 кроет эту плату как бык овцу, хотя бы богатой экосистемой с гуи

Но, скромно потупив глазки тырит библиотеки arduino / sparkfun для тех же дисплеев и датчиков.
Это горе-разработчики тырят ардуиновские библиотеки :)
Сами STM тоже непрочь увести кирпич у ARM или конкурентов, вроде NXP, обрезать, наделать багов. А если что-то с ноля пишут, то получается трэшачок.
И за разъяснениями или в дебуггер, или к превоистокам. На документирование они не особо тратятся.
Я про разработчиков STM ничего и не говорил, вряд ли же это про них шла речь в комментарии про библиотеки для датчиков и дисплеев :)
Куб конечно далеко не идеальный код генерирует, но до того треша, который в библиотеках ардуины встречается, ему далеко.
Куб генерирует ужас ужасатый, годный разве что лампочкой помигать.
Чего только стоит его обработчик прерываний, который пока «обработает» все, что мне не надо и вообще не используется в проекте, железка, которая отправляет данные в МК выдает ошибку рассинхрона.

Железо «забывают» стартовать, даже закомментированной строкой, чего им стоит написать в комментах, мол для старта «раскоментируйте это», а если нужно что-то позабористее, вроде I2S + DMA, то тут близко к импотенции.

Баги по году висят, мол, когда куб сможет в полный дуплекс i2s на H7?

Спасает только их LL, который мало чем по сути отличается от SPL. Чуть, более наглядный в плане наименований и более «атомарный», чем существенно помогает обойти кубовый колхоз.
Но, опять-таки, что-то глубинное, и бежать во все интернеты, в начале на сайт ARM, потом тех, кто серьезней относится к библиотекам и документации (NXP).
Дабы не быть субъективным, отмечу, что железо у STM — сильное. H750 — прям чудо за свои $5.

U8glib обычно для простеньких проектов

Прочитал, но так и не понял что в ней особенного и чем же эта пико лучше множества плат с stm32. Лучше бы сделали Pi Zero без HDMI но с эзернетом.
Так автор даже даташит на чип не смотрел :)
Скопировал часть того, что на сайте распберри описано и опубликовал
Хренак-хренак и в продакшен типичный.
Чип действительно уникален, ведь двухъядерных систем такой стоимости на рынке больше нет.

По-моему, нагло врут, 2-ядерный ESP32 стоит дешевле, характеристики похожи (минус USB, плюс Wi-Fi и BT).

Интересная платка. Но кмк esp32-s3 выглядит поинтересней

Какой-то мертворожденный проект.
Как много тех, кому зачем-то нужен очередной stm32 и esp32 только еще без wifi и bluetooth?

WiFi будет во второй версии. Подадут с большой помпой. Будет встречено бурными аплодисментами. Но чуть подороже станет…

А вообще, тут вся сила — в их громком имени, и огромном комьюнити под ним собранном. Микропитон должен получить их усилиями мощный толчок в развитии. И это хорошо для всех.
Незачет статье. Автор даже не заглянул в даташит по чипу, и совершенно зря. Там довольно много необычных, а иногда и уникальных возможностей, которые могут оказаться интересными для некоторых задач.
потребляемый платой ток — всего 140 мА…. Так что если проекту требуется минимальное энергопотребление — лучшего варианта, чем Pico, не найти.

Скорее худшего варианта не найти.
ESP8266 потребляет 80 мА. А чем эта новинка лучше ESP?
Это скорее микроконтроллер, чем одноплатный компьютер.

По-моему сейчас в микроконтроллеров не хватает возможности подключать мониторы большой диагонали. Часто задача принять от пользователя ввод с сенсорного монитора большой (15") диагонали и перекинуть по UART другому устройству, покрутить двигателем (вендинг) и др. Так вот тема подключения LVDS, MIDI DSI и др. сегодня не раскрыта, разработчики IP ядер MCU не считают её важной. Приглашаю всех к обсуждению https://forum.milandr.ru/viewtopic.php?f=15&t=4259

ESP32 + VGA: www.instructables.com/ESP32-Basic-PC-With-VGA-Output
AVR + RCA: www.youtube.com/watch?v=IEZcLRPu0Hg&t=1s
Да, возможности подключать дисплеи не хватает, но хотелось бы подключать какой нибудь дисплей от современного смартфона, а там в мк соответствующий мощности для отрисовки такого кол-ва точек хотя бы с 10fps, и нужные интерфейсы найдутся, и DMA. Тут уже проблема дисплей подключить да библиотеку найти)
Нормально к микроконтроллерам подключаются экраны, 240 х 160 легко. а больше уже непросто, у микроконтроллера типа платки в статье просто не достаточно для этого ресурсов.

Монитор и сенсорный экран это два разных прибора, и разные библиотеки и разные интерфейсы.

дружественный электронике C++
С++ как раз не дружественный к микроконтроллерам, по этому в микроконтроллерах применяется урезанный вариант — embedded C++

60° С это штатная температура работы кремниевой электроники

Ваша задача для вендинговых аппаратов это задача для более мощного железа, для Rasppberry Pi и подобных в самый раз. Если вас не устраивает линкус на плате, выбираете более мощную плату и ставите более привычный линукс.

Другими словами, вопросы, которые вы поднимаете, давно и успешно решены, достаточно подобрать инструмент под задачу
Нормально к микроконтроллерам подключаются экраны, 240 х 160 легко. а больше уже непросто

480х320 с тачем очень даже неплохо подключается к STM32F407 :)

Прошло два года и rp2040 рвет и атмеги и стм-ы

rp2040 за единицу на LCSC стоит доллар (правда к нему еще память нужна)

ATmega328 за единицу стоит от 5 долларов!

STM32 тоже неприлично дорогие

Зарегистрируйтесь на Хабре, чтобы оставить комментарий