Новый чип означает новые возможности, и Raspberry Pi RP2040 не является исключением. Когда мы увидели этот чип, мы подумали: "Этот чип будет потрясающим, если мы обработаем его как следует", - и мы так и сделали! В этом Itsy представлен RP2040 и все тонкости, которые вы знаете и любите о семействе ItsyBitsy Что может быть меньше перышка, но больше безделушки? Это Adafruit ItsyBitsy RP2040 с Raspberry Pi RP2040! Маленькая, мощная, со сверхбыстрым процессором dual Cortex M0+, работающим на частоте 125 МГц - эта плата микроконтроллера идеально подходит, когда вам нужно что-то очень компактное, с большим количеством лошадиных сил и множеством контактов. Этот Itsy обладает скоростью спортивного автомобиля, но вместительностью внедорожника благодаря 8 МБ флэш-памяти и 264 КБ SRAM. ItsyBitsy RP2040 имеет длину всего 1,4 дюйма и ширину 0,7 дюйма, но имеет 6 выводов питания, 23 цифровых вывода GPIO (4 из которых могут быть аналоговыми, а 16 - ШИМ-выходами). Это тот же чип, что и в Feather RP2040 и Raspberry Pi Pico, но на самом деле очень маленький. Так что это здорово, когда вы закончили работу над прототипом и хотите сделать проект намного меньше. Он даже поставляется со встроенным 8 МБ SPI Flash для регистрации данных, хранения файлов или кода CircuitPython / MicroPython Тот же размер и форм-фактор, что и у остальных представителей семейства ItsyBitsy, и почти идентичная распиновка Размеры 1,4 "x 0,7" x 0,2" (36 мм x 18 мм x 4 мм) без припаянных коллекторов RP2040 32-разрядный двухъядерный процессор Cortex M0+, работающий на частоте ~ 125 МГц при 3,3 В логики и питании 264 КБ оперативной памяти Флэш-чип SPI объемом 8 МБ для хранения файлов и CircuitPython/MicroPython code storage. Нет EEPROM Тонны GPIO! 23 x выводов GPIO со следующими возможностями: Четыре 12-разрядных АЦП (на один больше, чем Pico) Два периферийных устройства I2C, два SPI и два UART, мы обозначаем одно как "основной" интерфейс в стандартных местах расположения ItsyBitsy 16 x ШИМ-выходов - для сервоприводов, светодиодов и т.д 10 цифровых "не-АЦП/непериферийных" GPIO расположены последовательно для максимальной совместимости с PIO Вывод #13 мигающий красный светодиод общего назначения RGB NeoPixel с выводом питания на GPIO, чтобы вы могли отключить его при использовании с низким энергопотреблением. Как кнопка сброса, так и кнопка выбора загрузчика для быстрого перезапуска (без отключения-повторное подключение для перезапуска кода) Регулятор 3,3 В с пиковым выходным током 500 мА Вывод питания 3,3 В/включения Питание осуществляется либо с помощью USB, либо с помощью внешнего выхода (например, от аккумулятора) - он автоматически переключится Выломанные контакты SWD для доступа к отладке Кристалл с частотой 12 МГц обеспечивает идеальную синхронизацию. Специальный выходной вывод Vhigh обеспечивает более высокое напряжение от VBAT или VUSB для управления неопикселями, сервоприводами и другими устройствами с логикой 5 В. Цифровой выход со сдвигом на 5 уровней для вывода логического уровня высокого напряжения. Разъем USB Micro B позволяет получить доступ к встроенному в ПЗУ USB-загрузчику и отладке последовательного порта Внутри RP2040 находится загрузчик USB UF2 с "постоянным ПЗУ". Это означает, что когда вы хотите запрограммировать новую прошивку, вы можете удерживать нажатой кнопку BOOTSEL, подключая ее к USB (или опуская контакт ЗАПУСКА / сброса на землю), и она появится в виде USB-накопителя, на который вы можете перетащить прошивку. Люди, которые пользовались продуктами Adafruit, найдут это очень знакомым - мы используем эту технологию на всех наших платах с встроенным USB. Просто обратите внимание, что вы не нажимаете дважды reset, вместо этого удерживайте BOOTSEL во время загрузки, чтобы войти в загрузчик! RP2040 - это мощный чип, который имеет тактовую частоту нашего M4 (SAMD51) и два ядра, эквивалентных нашему M0 (SAMD21). Поскольку это чип M0, у него нет модуля с плавающей запятой или аппаратной поддержки DSP - так что, если вы делаете что-то с тяжелой математикой с плавающей запятой, это будет сделано программно и, следовательно, не так быстро, как M4. Для многих других вычислительных задач вы будете близки к-Скорости М4! Для периферийных устройств есть два контроллера I2C, два контроллера SPI и два UART, которые мультиплексируются через GPIO - проверьте распиновку, на какие контакты можно установить значение. Имеется 16 ШИМ-каналов, у каждого вывода есть канал, на который он может быть настроен (то же самое на распиновке). Вы заметите, что здесь нет ни периферийного устройства I2S, ни SDIO, ни камеры, что с этим не так? Что ж, вместо специальной аппаратной поддержки периферийных устройств, подобных этим, RP2040 поставляется с системой PIO state machine, которая представляет собой уникальный и мощный способ создания пользовательской аппаратной логики и блоков обработки данных, которые работают сами по себе, не занимая центрального процессора. Например, NeoPixels - часто мы немного изменяем протокол синхронизации для этих светодиодов. Для RP2040 мы вместо этого используем объект PIO, который считывает данные из буфера данных и синхронизирует правильный битовый поток с идеальной точностью. То же самое с аудиовходом или выходом I2S, дисплеями со светодиодной матрицей, 8-битными TFT-дисплеями на базе SPI или даже VGA! В MicroPython и CircuitPython вы можете создавать команды управления PIO для написания сценария периферийного устройства и загрузки его во время выполнения. Есть 2 периферийных устройства PIO с 4 конечными автоматами в каждом. На момент запуска эта плата не поддерживалась ядром Arduino core. Существует отличная поддержка C / C++, официальный порт MicroPython и порт CircuitPython! Мы, конечно, рекомендуем CircuitPython, потому что считаем, что это самый простой способ начать работу, и он поддерживается большинством наших драйверов, дисплеев, датчиков и многого другого, которые поддерживаются "из коробки", так что вы можете ознакомиться с нашими проектами и руководствами по CircuitPython. Этот Itsy поставляется со свободными 0,1-дюймовыми разъемами, которые вы можете припаять для использования на макетной плате! Несмотря на то, что RP2040 имеет большой объем встроенной оперативной памяти (264 КБ), у него нет встроенной флэш-памяти. Вместо этого это обеспечивается внешним флэш-чипом QSPI. На этой плате имеется 8 МБ, которые распределяются между запущенной программой и любым файловым хранилищем, используемым MicroPython или CircuitPython. При использовании C/C++ вы получаете всю флэш-память целиком, при использовании Python у вас останется около 7 МБ для кода, файлов, изображений, шрифтов и т.д.
| Пин | Тип | Описание |
|---|---|---|
| VBAT | male | — |
| VBUS | male | — |
| VHI | male | — |
| +3V3 | male | — |
| +3V3 | male | — |
| !RESET | male | — |
| A0 | male | — |
| A1 | male | — |
| A2 | male | — |
| A3 | male | — |
| D24 | male | — |
| D25 | male | — |
| SCK | male | — |
| MOSI | male | — |
| MISO | male | — |
| D2 | male | — |
| EN | male | — |
| SWDIO | male | — |
| SWCLK | male | — |
| D13 | male | — |
| D12 | male | — |
| D11 | male | — |
| D10 | male | — |
| D9 | male | — |
| D7 | male | — |
| D5_5V | male | — |
| SCL | male | — |
| SDA | male | — |
| TX | male | — |
| RX | male | — |
| D4 | male | — |
| D3 | male | — |
| GND | male | — |