Raspberry Pi Pico to małych rozmiarów zestaw uruchomieniowy zawierający mikrokontroler RP2040 fundacji Raspberry Pi o 32-bitowej magistrali danych i maksymalnej częstotliwości taktowania równej 133 MHz, który jest oparty o dwurdzeniową architekturę Cortex-M0+ firmy ARM i wspiera 2 tryby pracy: niskomocowy (ang. low-power mode) oraz uśpienia (ang. dormant mode). Zestaw ten obejmuje 40-pinowe złącze GPIO (niewlutowane), na które składa się: 26 wyprowadzeń cyfrowych, 3 wejścia analogowe i 16 kanałów PWM, a także dwie pamięci: SRAM o pojemności 264 KB (obecna w mikrokontrolerze) i Quad-SPI Flash o pojemności 2 MB (poza mikrokontrolerem). Jego interfejsami są: USB 1.1 (host i device), 12C, SPI i UART. Natomiast peryferiami: gniazdo microUSB, przycisk BOOTSEL (wymagany przy programowaniu zestawu), dioda LED o kolorze zielonym i złącze SWD (niewlutowane - do programowania zestawu i debugowania programu w nim działającego z użyciem zewnętrznego programatora). Dodatkowo występuje w nim przetwornik analogowo-cyfrowy o rozdzielczości 12 bitów i częstotliwości próbkowania równej 0,5 MSa/s, którego liczba kanałów wynosi cztery (do jednego z nich jest dołączony wbudowany czujnik temperatury), jak również kontroler DMA - oba pod zaawansowane rozwiązania. Programowanie zestawu odbywa się czworako: przez kabel USB dołączany do gniazda microUSB i użycie przycisku BOOTSEL (w tym względzie Raspberry Pi Pico jest traktowane jako pamięć masowa, do której należy wgrać stosowne pliki), złącze SWD i zewnętrzny programator, przez komputer Raspberry Pi 4 B lub przez komputer Raspberry Pi 400. Jego zasilanie jest z kolei podwójne: przez gniazdo microUSB (5V) lub złącze GPIO (zakres napięć: 1,8- 5,5V). Produkt niskobudżetowy dla wszystkich, w tym dla osób początkujących. Jest on dedykowany językom programowania: C, C++ oraz Python (wersja 3 w implementacji MicroPython), a także współpracuje z drugim zestawem Raspberry Pi Pico, komputerem Raspberry Pi 4 B i komputerem Raspberry Pi 400. Brak przy tym kabla USB i zasilacza zewnętrznego w zestawie. Niemniej jest możliwa współpraca z drugim zestawem Raspberry Pi Pico, który może pełnić rolę debuggera w oparciu o złącze SWD i narzędzie Picoprobe.
Specyfikacja produktu:
• Mikrokontroler RP2040 fundacji Raspberry Pi:
❖ Architektura: ARM Cortex-M0+
❖ Typ architektury: RISC
❖ Długość magistrali danych: 32 bity
❖ Standardowa (domyślna) częstotliwość taktowania: 48 MHz
❖ Maksymalna częstotliwość taktowania: 133 MHz
❖ Liczba rdzeni: 2
❖ Liczba wyprowadzeń I/O: 30
❖ Wbudowana pamięć SRAM o pojemności 264 KB
❖ Interfejsy:
o UART - w liczbie sztuk 2* (w ramach złącza GPIO)
o SPI - w liczbie sztuk 2* (w ramach złącza GPIO)
o I2C - w liczbie sztuk 2* (w ramach złącza GPIO)
o USB 1.1 - w liczbie sztuk 1 (host i device)
❖ Kontrolery:
o DMA
o PHY (warstwy fizycznej modelu sieciowego OSI)
❖ Przetwornik analogowo-cyfrowy:
o Liczba kanałów: 4 (jeden zarezerwowany pod wbudowany czujnik temperatury)
o Rozdzielczość: 12 bitów
o Częstotliwość próbkowania na kanał: 0,5 MSa/s
❖ Wbudowany czujnik temperatury (w przetworniku analogowo-cyfrowym)
❖ 2 pętle PLL (generacja zegarów dla mikrokontrolera oraz interfejsu USB)
❖ Programowalne źródło napięcia (dla rdzeni mikrokontrolera)
❖ 8 maszyn stanów PIO (odrębnych procesorów programowanych z użyciem asemblera)
❖ Zewnętrzne przerwania
❖ Tryby pracy:
o Niskomocowy (ang. low-power mode)
o Uśpienia (ang. dormant mode)
• Pamięć Quad-SPI Flash o pojemności 2 MB
• Wyprowadzenia (w ramach złącza GPIO) - niektóre z nich należy uprzednio skonfigurować:
❖ Cyfrowe:
o Dwukierunkowe (wejścia i wyjścia)
o W liczbie sztuk: 26
❖ PWM:
o Jednokierunkowe (wyjścia)
o W liczbie sztuk: 16
❖ Analogowe:
o Jednokierunkowe (wejścia)
o W liczbie sztuk: 3
• Peryferia:
❖ Złącze GPIO 40 pinów (bez wlutowanych wyprowadzeń) - rozstaw 0,1 cala
❖ Gniazdo microUSB
❖ Przycisk BOOTSEL (wymagane do zaprogramowania zestawu)
❖ Dioda LED o kolorze zielonym (dla użytkownika)
❖ Złącze SWD (do programowania zestawu i debugowania programu w nim działającego - w oparciu o zewnętrzny programator)
• 4 otwory montażowe
• Programowanie:
❖ przez kabel USB (gniazdo microUSB) i przycisk BOOTSEL:
o Zestaw jest traktowany jako pamięć masowa, do której należy wgrać stosowne pliki (wolumin RPI-RP2)
❖ przez złącze SWD i zewnętrzny programator
❖ przez komputer Raspberry Pi 4B
❖ przez komputer Raspberry Pi 400
• Zasilanie:
❖ Zewnętrzne:
o Przez kabel USB - gniazdo micro-USB (5V)
o Przez złącze GPIO (zakres napięć: 1,8-5,5V)
• Dedykowane języki programowania:
❖ C
❖ C++
❖ Python (wersja 3 w implementacji MicroPython)
• Dedykowane środowiska programistyczne - m.in.:
❖ Eclipse
❖ Thonny (tylko język Python)
• Współpraca z drugim zestawem Raspberry Pi Pico (drugi może pełnić rolę debuggera dla pierwszego w oparciu o złącze SWD i narzędzie Picoprobe)
• Opcja konwertera USB-SWD i USB-UART w oparciu o narzędzie Picroprobe
• Wymiary: 51 x 21 x 1 mm (długość x szerokość x wysokość)
Zestaw
Od lewego dolnego rogu zestawu, zgodnie z ruchem wskazówek zegara:
Opis złączy
Legenda (od lewej strony):
Narzędzia
Pozostała dokumentacja i pliki zestawu Raspberry Pi Pico, a także skrócone samouczki i opis zestawu: