Raspberry Pi разрабатывает собственный MCU вместе с платой за 4 доллара
Raspberry Pi разработал собственный микроконтроллер (MCU), RP2040, и выпустил новую плату за 4 доллара на основе нового MCU, Raspberry Pi Pico, программируемого на C и MicroPython.
RP2040 оснащен двухъядерным процессором Arm Cortex-M0 + с внутренней оперативной памятью 264 КБ и поддержкой до 16 МБ внешней флэш-памяти. Широкий спектр гибких вариантов ввода / вывода включает I2C, SPI, а также программируемый ввод / вывод (PIO). Главный операционный директор Raspberry Pi Джеймс Адамс сказал в блоге:«У нас были три основные цели при разработке RP2040:высокая производительность, особенно для целочисленных рабочих нагрузок; гибкий ввод-вывод, позволяющий общаться практически с любым внешним устройством; и, конечно же, низкая стоимость, чтобы исключить входные барьеры. В итоге мы получили невероятно мощный маленький чип, втиснув все это в корпус QFN-56 размером 7 × 7 мм, содержащий всего два квадратных миллиметра 40-нм кремния ».
Он добавил, что с шестью независимыми банками ОЗУ и полностью подключенным коммутатором в основе его структуры шин легко организовать параллельную работу ядер и механизмов прямого доступа к памяти без конкуренции. Кроме того, поскольку в Cortex-M0 + отсутствует модуль с плавающей запятой, Raspberry Pi заказал оптимизированные функции с плавающей запятой от Марка Оуэна, автора библиотек Qfplib; они значительно быстрее, чем их эквиваленты в библиотеке GCC, и лицензированы для использования с любым продуктом на основе RP2040.
Адамс сказал:«Благодаря двум быстрым ядрам и большому объему встроенной оперативной памяти RP2040 является отличной платформой для приложений машинного обучения. Для опытных пользователей мы предоставляем полный SDK для C, набор инструментов на основе GCC и интеграцию с Visual Studio Code. Для новичков и других пользователей, которые предпочитают языки высокого уровня, мы работали с Дэмиеном Джорджем, создателем MicroPython, над созданием совершенного порта для RP2040; он раскрывает все аппаратные функции чипа, включая нашу инновационную подсистему PIO. А наш друг Айвар Аннамаа добавил поддержку MicroPython RP2040 в популярную среду разработки Thonny ».
В своем блоге Адамс объяснил причины производства собственного кремния. Он сказал, что Raspberry Pi оказался весьма успешным в деле объединения миров программного и аппаратного обеспечения, и в результате на сегодняшний день было продано 37 миллионов устройств. Однако он сказал, что существующие платы имеют ограничения - например, Raspberry Pi Zero потребляет порядка 100 мВт; Сам по себе Raspberry Pi не поддерживает аналоговый ввод; и хотя на Raspberry Pi можно запускать «голое железо» программное обеспечение, программное обеспечение, работающее под универсальной операционной системой, такой как Linux, не очень хорошо подходит для управления отдельными выводами ввода-вывода с малой задержкой.
Он добавил, что многие приложения, как правило, объединяют свой Raspberry Pi с микроконтроллером. В то время как Raspberry Pi может выполнять вычисления, доступ к сети и хранение, микроконтроллер обрабатывает аналоговый ввод и ввод-вывод с малой задержкой.
Следовательно, создавая собственный кремний, он может улучшить производительность, ввод-вывод и стоимость. По его словам, при разработке RP2040 они извлекли уроки из использования других микроконтроллеров в продуктах Raspberry Pi.
В дополнение к микроконтроллеру и плате Raspberry Pi заявила, что также работает с различными партнерами над созданием множества других плат на основе кремниевой платформы RP2040, а также аксессуаров для Raspberry Pi Pico. Эти партнеры включают Adafruit, Arduino, Pimoroni и Sparkfun.
Основные характеристики RP2040
- Двухъядерный Arm Cortex-M0 + @ 133 МГц
- 264 КБ (помните килобайты?) встроенной оперативной памяти
- Поддержка до 16 МБ внешней флэш-памяти через выделенную шину QSPI.
- Контроллер DMA
- Интерполятор и периферийные устройства целочисленного делителя
- 30 контактов GPIO, 4 из которых могут использоваться как аналоговые входы.
- 2 × UART, 2 × контроллера SPI и 2 × контроллера I2C
- 16 каналов ШИМ
- 1 контроллер USB 1.1 и физический уровень с поддержкой хоста и устройства.
- 8 конечных автоматов программируемого ввода-вывода (PIO) Raspberry Pi
- Режим загрузки USB-накопителя с поддержкой UF2 для программирования с помощью перетаскивания.
Доска за 4 доллара
Наряду с новым микроконтроллером компания также представила плату Raspberry Pi Pico за 4 доллара. Это объединяет RP2040 с 2 МБ флэш-памяти и микросхемой источника питания, поддерживающей входное напряжение от 1,8 до 5,5 В. Это позволяет питать Pico от самых разных источников, в том числе от двух или трех последовательно соединенных элементов AA или от одного литий-ионного элемента.
На плате Pico имеется одна кнопка, которую можно использовать для входа в режим USB-накопителя во время загрузки, а также в качестве общего входа и один светодиод. Он открывает 26 из 30 контактов GPIO на RP2040, включая три из четырех аналоговых входов, для контактных площадок с шагом 0,1 дюйма; к этим контактным площадкам можно припаять разъемы или их зубчатые края позволяют припаять Pico непосредственно к несущей плате. Крупные клиенты смогут покупать предварительно намотанные единицы Pico. Компоновка печатной платы Pico была разработана совместно с кремнием RP2040 и корпусом:двухслойная печатная плата с твердой заземляющей пластиной и разъемом GPIO, который, по словам Адамса, «просто работает».
Полные технические характеристики RP2040, Raspberry Pi Pico и комплекта разработки программного обеспечения (SDK) для C / C ++ или MicroPython доступны здесь.
Встроенный
- Считать температуру с помощью DS18B20 | Raspberry Pi 2
- Измерение температуры с помощью RASPBERRY PI
- Мониторинг температуры с помощью Raspberry Pi
- Обнаружение молний с помощью Raspberry Pi
- Сигнализация о воде Raspberry Pi 2 с t сапожником плюс
- Монитор температуры ThingSpeak с Raspberry Pi
- Использование ИК-пульта дистанционного управления с Raspberry Pi без LIRC
- Малина с кулачком в скворечнике
- Raspberry Pi 4 как веб-сервер [Создать собственный веб-сайт]
- Создание роботов с Raspberry Pi и Python