Moduł Raspberry Pi Pico 2 W
Nowoczesne mikrokontrolery z punktu widzenia hobbysty miały poważną wadę – trudno było je aplikować we własnych konstrukcjach. Ta bariera została przełamana, przemysł elektroniczny produkuje gotowe do użycia moduły z nowoczesnymi mikrokontrolerami.
Obecnie przemysł elektroniczny daje bardzo szeroką ofertę mikrokontrolerów, od najprostszych (jak choćby popularne AVR-y) do bardzo zaawansowanych, do których bez wątpienia należą ARM-y. Mikrokontrolery ARM (ang. Advanced RISC Machine) to rodzina architektur (modeli programowych) procesorów 32-bitowych oraz 64-bitowych, typu RISC (ang. reduced instruction set computing) – procesorów o zredukowanej liście instrukcji a jednocześnie o dużej wydajności przetwarzania. Procesory z architekturą ARM są jednymi z najczęściej stosowanych na świecie. Używa się ich między innymi w sprzęcie komputerowym, telefonach komórkowych, routerach, kalkulatorach. Obecnie wiele firm półprzewodnikowych produkuje te układy, należące do rodziny ARM, jako produkty licencyjne. Brytyjskie przedsiębiorstwo z siedzibą w Cambridge, ARM Holdings, zajmuje się projektowaniem mikroprocesorów. W przeciwieństwie do innych potentatów mikroprocesorowych (np. Intel), ARM Holdings sprzedaje jedynie licencje na zaprojektowane architektury, nie produkując swoich własnych. Warunki licencyjne oznaczają, że mają ujednoliconą architekturę bez względu na końcowego producenta.
Mikrokontroler RP2350
Jednym z oferentów procesorów ARM jest również brytyjska firma Raspberry Pi Ltd z siedzibą w Cambridge (ciekawa zbieżność), która zaprojektowała mikrokontroler RP2350. Z kilku względów jest to dosyć niezwykły układ. Mikrokontroler ten, zaprojektowany przez Raspberry Pi Ltd, zawiera w sobie dwie różne architektury sprzętowe jednocześnie: ma dwurdzeniowy procesor ARM Cortex-M33 (licencyjny z ARM Holdings) oraz, również dwurdzeniowy, procesor Hazard3 RISC-V (własne opracowanie jako rozwiązanie otwarte). Podczas uruchamiania urządzenia można wybrać, na których rdzeniach ma pracować mikrokontroler. Oznacza to, że układ może działać jako procesor ARM Cortex-M33, oferując pełne wsparcie standardowych narzędzi programistycznych ARM, a w razie potrzeby pozwala na przełączenie się na otwartą architekturę RISC-V.
Procesor dwurdzeniowy (ang. dual-core) to jeden układ scalony, który integruje w sobie dwa niezależne, fizyczne rdzenie przetwarzające instrukcje. Można to sobie wyobrazić jako jeden komputer, który posiada dwa osobne „mózgi”, pracujące jednocześnie nad powierzonymi zadaniami. System operacyjny kontrolujący pracę RP2350 może zlecić jednemu rdzeniowi obsługę programu (np. gry), a drugiemu procesy w tle (np. odtwarzanie muzyki). Innym wariantem jest praca zespołowa, gdzie oba rdzenie mogą współpracować nad jednym ciężkim zadaniem, dzieląc je na mniejsze części (tzw. wielowątkowość).
Wspomniany wyżej procesor ARM Cortex-M33 jest rozwinięciem wariantu Cortex-M4 (to 32-bitowy rdzeń procesora stworzony z myślą o wydajnym przetwarzaniu sygnałów w systemach wbudowanych o niskim poborze prądu, mający dużą wydajność w zakresie przetwarzania sygnałów DSP oraz obliczeń zmiennoprzecinkowych). Seria Cortex to grupa nowoczesnych rdzeni procesorów firmy ARM Holdings dzieląca się na trzy główne linie: A – aplikacyjne, R – czasu rzeczywistego oraz M – mikrokontrolery. M33 to oznaczenie konkretnego modelu rdzenia, bazującego na nowoczesnej architekturze ARMv8-M.
Skoro dwa rdzenie w mikrokontrolerze pracują jednocześnie (sięgają do pamięci z programem, pamięci operacyjnej RAM), musi istnieć jakiś arbiter synchronizujący ich pracę. Tę funkcję pełnią magistrala systemowa (Bus Matrix) i kontroler dostępu do pamięci (Memory Controller). W RP2350 pamięć RAM jest podzielona na banki, możliwy jest jednoczesny dostęp do różnych banków. Dodatkowo występuje tutaj pamięć typu Cache (szybka pamięć podręczna). Jest to niewielka pamięć wbudowana bezpośrednio w procesor. Jej główną rolą jest pośredniczenie między szybkim rdzeniem procesora a znacznie wolniejszą pamięcią główną (np. Flash) w celu likwidacji tzw. wąskiego gardła. Procesor wykonuje operacje w ułamkach nanosekund, podczas gdy pobranie danych z zewnętrznej pamięci Flash trwa wielokrotnie dłużej, więc rdzeń musiałby marnować czas na czekanie (tzw. cykle oczekiwania – wait states). Pamięć Cache przechowuje kopie najczęściej używanych danych i instrukcji.
Przyglądając się wewnętrznej strukturze mikrokontrolera (rysunek 1) można dostrzec, że nie zawiera on wewnętrznej pamięci Flash przeznaczonej generalnie do przechowywania kodu programu. To kolejna cecha, która odróżnia „malinkę” od wielu innych mikrokontrolerów (przykładowo AVR mają wewnętrzną pamięć Flash na kod programu).
Analizując różne rozwiązania przyłączenia pamięci Flash do procesorów, zwyczajowo stosowane są rozwiązania z interfejsem równoległym (przesyłane są jednocześnie wszystkie bity, przykładowo 8). W mikrokontrolerze RP2350 stosowana pamięć Flash jest rozwiązaniem szeregowym. Mikrokontroler komunikuje się z pamięcią za pomocą interfejsu QSPI (Quad SPI – czterobitowej szeregowej magistrali SPI). Pozwala to znacząco zredukować liczbę pinów do obsługi pamięci (magistrala QSPI potrzebuje 6 linii). Dzięki temu większość fizycznych pinów mikrokontrolera RP2350 pozostaje wolna do dyspozycji użytkownika. Choć wykorzystana jest pamięć szeregowa, tryb „Quad” pozwala na przesyłanie 4 bitów danych jednocześnie w każdym cyklu zegara, dodatkowo w połączeniu z technologią DDR (Double Data Rate – odczyt następuje na narastającym i opadającym zboczu sygnału zegarowego) zapewnia błyskawiczny dostęp do danych.
Wewnątrz mikrokontrolera RP2350 znajduje się dedykowany, sprzętowy kontroler XIP (Execute-in-Place) z dedykowaną pamięcią podręczną (Cache). Sprawia on, że z punktu widzenia rdzeni ARM czy RISC-V ta szeregowa pamięć Flash jest „widziana” tak, jakby była zwykłą, szybką, równoległą pamięcią wewnętrzną przypisaną do konkretnego adresu w przestrzeni adresowej procesora.
Moduł z mikrokontrolerem RP2350
Firma Raspberry Pi Ltd oferuje również moduł z wlutowanym mikrokontrolerem (właściwie serię modułów o różnym wyposażeniu) o ogólnej nazwieRaspberry Pi Pico 2. SeriaPico 2 nie jest jedyną, Raspberry Pi Ltd oferuje również inne, o bardziej lub mniej rozbudowanym wyposażeniu. Nawet krótkie przedstawienie wszystkich wykracza poza jeden artykuł.
Ograniczając się do seriiPico 2 – występuje tu kilka wariantów sprzętowych modułu. Popularnym wariantem jestPico 2 (fotografia 2, którą udostępnił Thomas Amberg).
Artykuł poświęcony jest wersjiPico 2 W, którą pokazuje fotografia tytułowa. Główna różnica między płytkamiRaspberry Pi Pico 2 a Raspberry Pi Pico 2 W sprowadza się do obecności modułu łączności bezprzewodowej (Wi-Fi oraz Bluetooth z układem Infineon CYW43439). (…)
——– ciach! ——–
To jest tylko fragment artykułu, którego pełna wersja ukazała się w październikowym numerze czasopisma Zrozumieć Elektronikę (ZE 10/2026). Pełną wersję czasopisma znajdziesz pod tym linkiem. Natomiast niepełna, okrojona wersja, pozwalająca zapoznać się z zawartością numeru ZE 10/2026 znajduje się tutaj.
Andrzej Pawluczuk
apawluczuk@vp.pl
Uwaga! Wskazówki, jak nabyć pełne wersje dowolnych numerów ZE znajdują się na stronie:
https://piotr-gorecki.pl/n11.

