LINUX.ORG.RU

Raspberry Pi Pico

 , ,

Raspberry Pi Pico

2

4

Команда Raspberry Pi выпустила плату на кристалле RP2040 с 40-нм архитектурой: Raspberry Pi Pico.

Спецификация RP2040:

  • Двухядерный Arm Cortex-M0+ @ 133МГц
  • 264Кб RAM
  • Поддержка до 16МбFlash памяти через выделенную шину QSPI
  • DMA контроллер
  • 30 GPIO пинов, 4 из которых могут быть использованы как аналоговые входы
  • 2 UART, 2 SPI и 2 I2C контроллера
  • 16 ШИМ каналов
  • USB 1.1 контроллер с поддержкой host-режима
  • 8 Raspberry Pi I/O (PIO) программируемых конечных автоматов
  • Режим USB mass-storage boot с поддержкой прошивки через UF2

Raspberry Pi Pico разработана как оригинальная, недорогая (цена всего 4$) плата для RP2040. Она содержит RP2040 с 2 Мб флэш-памяти и микросхемой блока питания, поддерживающего входное напряжение от 1,8 до 5,5 В. Это позволяет питать Pico от различных источников, включая две или три AA батареи последовательно или от одного литий-ионного аккумулятора.

На базе чипа RP2040 так же скоро будут доступны платы от сторонних производителей:

Adafruit ItsyBitsy RP2040

Adafruit Feather RP2040

SparkFun Thing Plus - RP2040

Документация

>>> Подробности

★★★★☆

Проверено: Shaman007 ()
Последнее исправление: atsym (всего исправлений: 5)

Ответ на: Во! Круто! от Moisha_Liberman

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

Кенвуд стоит, а не китайское что-то, из-за каких-никаких претензий на хороший звук. Работает на онтопике, кстати. Он, Кенвуд, поддерживает iDataLink, который умеет таскать информацию по ОБД, но мне ОБД мало.

Питание на ОБД идёт через предохранитель. КАН-шина идёт отдельным каналом, через центральный «мост», поэтому остальной машине пофиг, если трансивер этого канала сгорит.

Для чтения ошибок и воздействия на них нужен вольвовский софт + сканер (или совместимый), у них по сети свой протокол, и по ОБДшным пидам там процентов 10, наверное, от общей массы есть. Приходится возить ноутбук. Обычно даже не открываю, впрочем.

Проводка тоже сохнет и крошится от жары времени, но всё это фигня, т.к. полгода назад двигатель на марше таки прожёг выпускной клапан =) Вот, только пару недель назад докапиталил. Хорошо, что под боком, 400 км от дома, а не 4000, как часто бывает.

mv ★★★★★
()
Ответ на: комментарий от windows10

и нашел на плате atmega 368p в qfp

а что ты там ожидал найти

Harald ★★★★★
()
Ответ на: комментарий от fernandos

Что интересно перешел на магазины US - $5, Germany - 5E. У нас 1300 как с куста!!! Жлобы в Амперке работают!!!!

dumauz ★★
()
Ответ на: комментарий от kirill_rrr

Зависит от задач, конечно.

Там у Вас 2 ядра на 133MHz, многого ждать не стоит. Хотя, наверное (я в этом слабо разбираюсь, скажу честно), если у Вас есть некая логическая схема, делающая вывод и далее передающая этот «вывод» на схему исполнительного механизма, управляющую конкретным приводом, то вот такое управление приводом (конечным механизмом) наверное можно сделать. Если без каких-то сложных расчётов и отслеживания обратных связей, конечно. Но и то я бы тут (как и писал выше) сразу и навсегда забыл бы об операционной системе. Не тот вариант.

А с реальным миром оно как может взимодействовать? Допустим считать напряжения с датчиков понятно, а какое нибудь реле оно может дёргать?

Ну, в принципе, да. Может. Но опять же – скорость и объём собираемых/обрабатываемых данных. Вот в чём вопрос. Сложную схему управления роботом вряд ли. А вот отдельные подсистемы – только в путь. У Вас же есть, судя по изначальному постингу:

30 GPIO пинов, 4 из которых могут быть использованы как аналоговые входы

2 UART, 2 SPI и 2 I2C контроллера

16 ШИМ каналов

USB 1.1 контроллер с поддержкой host-режима

8 Raspberry Pi I/O (PIO) программируемых конечных автоматов

Тут уже как схемоту построите, так и будет. В принципе, можно из нескольких таких платок собрать более сложные схему, важно их только грамотно увязать и по софту и по железу. Например, в самом простецком случае, реализовав схему master-slave. Когда у Вас есть один master, определяющий общую логику работы комплекса и slaves, каждый из которых реализован как полу-независимый конечный автомат. Т.е., выполняющий более-менее самостоятельно какую-то часть работы, но при этом «докладывающий» мастеру о происходящем, но при этом следует разделять платы, производящие анализ окружающей ситуации (например, определяющие наличие препятствия) и платы, управляющие движками (получили сигнал о препятствии, значит, стоп). Ну, понятно что пример так… «умозрительный».

Контроллер векторного электропривода на такой плате может быть реализован, или не вывезет столько каналов на достаточной скорости обрабатывать?

Будет зависеть от логики работы, боюсь соврать, но в принципе, примерно как оно должно будет получиться, я выше написал. Плюс-минус, как-то вот так.

Moisha_Liberman ★★
()
Ответ на: комментарий от kirill_rrr

Это любой M0 вывезет. Там АЦП и 3-канальный ШИМ аппаратные, а самих вычислений относительно мало.

Но… скажем так, если ты не делаешь массовый продукт, я не вижу смысла уродоваться с фиксированной точкой и т.п. Если много вычислений, проще взять хотя бы M3 и не париться.

Vit ★★★★★
()

264Кб RAM

Не нужно. Вот если бы было 640…

buddhist ★★★★★
()
Ответ на: комментарий от fehhner

Затем. Скажу сразу.

Зачем придумывать, почему нельзя просто прочитать по ссылке? Берёшь, пишешь простейший код на си в обычном ардуино иде, заливаешь туда и оно мигает твоими лампочками.

Вот именно потому, что из опыта то, что получается в Arduino IDE, то разве что и годно на то, чтобы лампочками мигать. ;) Всё остальное – тулчейн в зубы и rock’nd’roll… =)

Хотя, замечу что тут (на мой взгляд) имеет разок одолеть этот самый пресловутый «порог вхождения» и дальше уже всё будет намного проще. Потратить время, но раз. Но по-взрослому. =)

А эта поделка ещё и питон поддерживает.

Угу. Но только учитывая даже микропитон, она только разве что лампочками мигать и будет. Больше ресурсов не хватит, скорее всего, практически ни на что. =) /* Что-то мне сердце-вещун именно это и подсказывает. */

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)

А зачем нужен именно двухядерный M0?

mike666
()
Ответ на: комментарий от mv

А! Да! Я пропустил...

Вольвушка же, там да, там подкапотное пространство сделано по-людски. Это у нас, на «тихих атомных ракетных крейсерах» всё довольно по-спартански и из электроники по-дефолту самое сложное, это управление Common Rail от Bosh. И то отдельный блок, под капотом стоит.

Кенвуд стоит, а не китайское что-то, из-за каких-никаких претензий на хороший звук. Работает на онтопике, кстати. Он, Кенвуд, поддерживает iDataLink, который умеет таскать информацию по ОБД, но мне ОБД мало.

Повезло. У меня звук деревянный по дефолту. С матюгами выкинул штатную магнитолу и динамики из передних дверей. Ещё и ногой напиннул. =) На фиг мне был бы в наши времена радиоприёмник и CD-changer, я так и не понял. Видимо, японцы не стали мудровать, а взяли стандартную Ford Ranger’вскую «музыку». Видимо, на пикапах меломанов немного из-за условий эксплуатации. =)))

Питание на ОБД идёт через предохранитель. КАН-шина идёт отдельным каналом, через центральный «мост», поэтому остальной машине пофиг, если трансивер этого канала сгорит.

Разумно. Но у меня, чесслово, очко едва не перекусило лом в какой-то момент времени… И мне развязать сложнее, т.к. плата монолит. Впрочем, за идею спасибо. Теперь у меня есть мысль и я её думаю. =)))

Для чтения ошибок и воздействия на них нужен вольвовский софт + сканер (или совместимый), у них по сети свой протокол, и по ОБДшным пидам там процентов 10, наверное, от общей массы есть. Приходится возить ноутбук. Обычно даже не открываю, впрочем.

Тут мне повезло чуток больше. Но я при написании софта сознательно себя ограничил. Просто потому, что видел вживую как по дури перепрошили голову, ликвидировав небольшую просадку на малых оборотах. Ликвидировали, ага. Вот только агрегат стал чего-то сильно жрать горючее. Ощутимо. А чувак за рулём этого агрегата преимущественно по подмосковным и московским пробкам торчит, так что малые обороты там сплошь и рядом. И даже этот «соколиный глаз» заметил неладное. Так что, только съём только необходимых данных и отображение состояния. Тех же ошибок. Если ошибка есть, то жопу в горсть и в сервис. Ну его на фиг, себе дороже.

Проводка тоже сохнет и крошится от жары времени, но всё это фигня, т.к. полгода назад двигатель на марше таки прожёг выпускной клапан =) Вот, только пару недель назад докапиталил. Хорошо, что под боком, 400 км от дома, а не 4000, как часто бывает.

Ну да, так оно и бывает как правило. «Если неприятность может случиться, то она случается в самый неподходящий для этого момент», ага. =)

Moisha_Liberman ★★
()
Ответ на: Затем. Скажу сразу. от Moisha_Liberman

Порог вхождения заключается в уродском коде инициализации. Я до сих пор для stm32 через stm32cubemx генерю и не парюсь.

Учить все это через reference manual - дело довольно бесполезное, если не варишься в теме постоянно. Просто угробишь кучу времени, и все быстро забудешь. Или оно окажется бесполезно для другого проца.

Vit ★★★★★
()
Последнее исправление: Vit (всего исправлений: 1)
Ответ на: комментарий от Vit

окажется бесполезно для другого проца.

Во-во. Поэтому на Ардуине, которое уродство, но времени жалко.

mv ★★★★★
()
Ответ на: комментарий от Vit

Отчасти соглашусь.

Но если человек планирует в дальнейшем развлекаться с эмбеддингом, то лучше бы ему сразу приучиться «заниматься любовью» как большому. Чтобы потом не погружаться в мир взрослого секса с переучиваниями и стонами про то, что вот в Arduino IDE всё было так просто и незатейливо… =)

Moisha_Liberman ★★
()
Ответ на: комментарий от mv

Если рассматривать ардуину как библиотеку периферии - не вижу проблем, вполне рациональный подход.

Но есть нюанс - с таким подходом ты можешь сразу юзать stm32cubemx + HAL напрямую, и ардуина становится тоже не нужна.

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

Vit ★★★★★
()
Ответ на: Отчасти соглашусь. от Moisha_Liberman

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

Открой для себя мир platformio, и как на нем можно лепить удобные проекты: https://github.com/speedcontrols/ac_sc_grinder

Vit ★★★★★
()
Ответ на: комментарий от Vit

Простите что вмешиваюсь...

Но изо всего, что я видел, самое человеческое это cc1310/cc1350/cc1352 от TI. Там и среда разработки, хоть и на Eclipse (Code Composer Studio), но более-менее и сама по себе TI-RTOS вполне-вполне с человеческим лицом. Правда, в самих cc13* там два с половиной процессора (M3 для общей логики прошивки, М0 для связи и пол проца на всякие входы-выходы, а их там дохрена), но зато и радиоинтерфейс и BLE отдельно и софт писать не так грустно и уныло. Хотя, я бы рекомендовал посмотреть TI-RTOS, т.к. она только заявлено что POSIX-compat., но если захочется использовать те же pthreads, например, то лучше всё-таки использовать внутреннюю сущность TI-RTOS под названием Task. С++ в принципе, тоже есть, но так… Проще на С.

Но да, это уже M3. M0 там есть только для радио и его мы не имеем возможности программировать напрямую. Хотя, с внешней антенной, 3dBi, на открытом пространстве, может долбить на 20км., на скорости примерно 60-70 байт в секунду в диапазоне 868MHz. Это я сам проверял. Работает. Как будет жрать батарейку? Понятно что хорошо, но тут уже сами видели во что ввязываетесь. Если расстояние в сотнях метров исчисляется, то тогда и скоростёнка повыше в разы.

Китайцы сейчас на 868MHz модулей напаяли, как говна за баней. Стоил модуль где-то $5-7, размеры ЕМНИП, 2-1.4 см. Модуль впаивается в девайс, прошивается, пигтейл, антеннка и поехали. Кстати, поддержка AES для того, чтобы закрыть радиоканал там есть.

В общем, весчь. Рекомендую, если что. Единственное что подбешивает – там можно спроектировать свой радиопротокол. Вот только софтина для этого написана с Qt, но чисто под офтопик. Как запускать, так материться, нет, под wine она не ходит. Только в qemu.

Ну вот, в принципе, пример реального промышленного решения. А эти поделки… Ну да, хорошо что есть. Светодиодом моргает и то слава Богу. =)

P.S. Китайцы напаяли модулей и под 915MHz, но тут не особо диапазон выгоден, хотя и свободный, как и 868MHz. И они же напаяли под 433MHz (то же в теории свободный диапазон), это самый выгодный изо всех трёх. Но в этот диапазон сердечно не рекомендую лезть, если не хочется познакомиться с экипажем пативэна. Так что, 868 это самое оно. Физические размеры и цены не отличаются.

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)
Ответ на: комментарий от Vit

Мой коммент чуть выше этого. =)

Открой для себя мир platformio

Да не. Я открыл уже. И сразу закрыл. =)))

P.S. https://github.com/speedcontrols/ac_sc_grinder Круто, кстати. Мои поздравления. =)

Moisha_Liberman ★★
()
Последнее исправление: Moisha_Liberman (всего исправлений: 1)
Ответ на: комментарий от Legioner

какие-то сопроцессоры

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

Ну кто-то должен был запостить этот баян.

Binkledum
()
Ответ на: Мой коммент чуть выше этого. =) от Moisha_Liberman

Ты проработай product life cycle целиком. От покупки деталей и заказа плат, до заливки прошивки. А потом скажи тулчейн и детальки, чтобы любой сантехник смог повторить. Причем на любой оси. Ну и программистам чтобы не западло было (ардуиноиде не надо).

Vit ★★★★★
()

А оно зачем, линукс на плате хорош когда есть сеть, а 2 UART, 2 SPI и 2 I2C контроллера и так окучить можно.

ilovewindows ★★★★★
()

Да ну, фигня неинтересная. Двухядерный блюпилл на недокортексе, лол. Лучше бы что-то аналогичное F1C100s налепили. Вот тогда реально тема была бы.

Slavik763
()
Ответ на: Всё... "просто". =) от Moisha_Liberman

Там ещё будет хренова гора тонкостей. Но путь эмбеддера, это Вам не на пистончике отступы считать, тут… «работа тонкая, понимать надобно». =)))

Поэтому у этих плат и не получается отжать рынок у avr’ок. Т.к. там студия, где все сразу: документация, примеры, редактор кода, симулятор, отладчик и морда к программатору.

anonymous
()
Ответ на: комментарий от leave

При чём тут производитель? Я спрашиваю, где купить по этой цене. Из той же России я могу заказать за разумные деньги, но в нескольких российских магазинах цены тоже не соответствуют заявленным.

PS вообще да, это проблема производителя. Какой-нибудь Apple или HP я могу купить в местных магазинах без кратной наценки. Но я понимаю, что производитель крохотный и такие проблемы решать не в силах.

Legioner ★★★★★
()
Ответ на: комментарий от cocucka

Тогда вопрос чего в ней интересного увеличивается.

ilovewindows ★★★★★
()
Ответ на: комментарий от Legioner

в нескольких российских магазинах цены тоже не соответствуют заявленным.

Потому что в РФ и Казахстан эта плата официально не поставляется.

где купить по этой цене.

У официального реселлера, список есть на сайте.

cocucka ★★★★☆
() автор топика
Ответ на: комментарий от bhfq

Через QSPI можно использовать дополнительную память до 16Мб.

cocucka ★★★★☆
() автор топика

а для чего его можно использовать?

zgen ★★★★★
()

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

Все сравнивают с продуктами уже на рынке. Открою секрет - до того как они появились на рынке, обычно выпускается 2-3 (а иногда больше) таких вот тестовых чипов. RPi просто используют их как средство финансирования.

Это тоже самое что SiFive сделал с FE310. Тоже абсолютно бесполезный чип, но привлек достаточно денег для второй ревизии.

Выпустить чип убийцу лидеров рынка с первой попытки не так просто.

alexru ★★★★
()
Ответ на: комментарий от t184256

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

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от voltmod

Я заказал несколько штук - $4 + налог. Посмотрим как оно на деле работает.

Я не совсем понимаю почему люди ожидают от нового продукта быть сразу дешевле и лучше существующих. Это повторение истории со SpaceX. Со временем будет и лучше и дешевле.

alexru ★★★★
()
Ответ на: комментарий от quickquest

Все бы хорошо, но простенькая апельсина - 500 руб при несравненно больших ттх.

pihter ★★★★★
()
Ответ на: комментарий от cocucka

В линукс есть ssh, framebuffer, интерпритаторы и компилятор всего на свете, сотня готового софта в том числе консольного, который умеет тоже все на свете, сотня драйверов под все на свете. В линукс я воткнул юсб-изернет и он завёлся, что придётся сделать, чтоб такое завести без ос - подумать страшно)

pihter ★★★★★
()
Ответ на: комментарий от pihter

Сабж - плата отладочная. Цену самого МК никто еще не называл. Но если они ее не в себе убыток продают за $4, то МК должен не больше $1 быть.

alexru ★★★★
()
Ответ на: комментарий от anonymous

АВРы давно уже дороже СТМ32

Тем не менее - дешевле сабжа)

Для штучной домашней поделки нет разницы за 150 руб мк или за 20. Поэтому часто юзаю авр, он ламповый, к нему душа лежит

pihter ★★★★★
()
Ответ на: комментарий от KillTheCat

Похоже, эту Пипису придумали для популяризации применений в условиях радиации: АЭС, космические орбиты. Маленькие характеристики, меньше вероятность уязвимостей от ионизирующих излучений.

Infra_HDC ★★★★★
()
Ответ на: Во! Круто! от Moisha_Liberman

Всю жизнь мечтал нечто подобное сгородить… Надо собраться и сколхозить свободный комп в машину для всех. Хотя бы и на базе малины..

pihter ★★★★★
()
Ответ на: комментарий от pihter

Да, в этом и новость. Они сделали свой собственный МК. Абсолютно новый и независимый от существующих производителей.

alexru ★★★★
()
Ответ на: комментарий от alexru

Ого. А ребята-то растут! Этак они нам и полноценную открытую линуксозапускалку для десктопа изобретут лет за 20

pihter ★★★★★
()
Ответ на: комментарий от pihter

Только этот МК не открытый ни разу. Ядра от ARM, часть периферии от ARM и Synopsis.

В документации рядом с некоторыми секциями «Synopsys Proprietary. Used with permission.»

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

alexru ★★★★
()
Ответ на: комментарий от Harald

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

Infra_HDC ★★★★★
()

А чего они ее не забабахали сверху на обычную rpi? тогда можно было бы наконец нормально моторчиками крутить и при этом иметь человеческий интерфейс к этому

slapin ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.