
Raspberry Pi Pico Arduino core, per tutte le schede RP2040 e RP2350
Core Arduino per Raspberry Pi Pico, per tutte le schede RP2040 e RP2350
Questo è un porting di Arduino per RP2040 (processore Raspberry Pi Pico) e RP2350 (processore Raspberry Pi Pico 2). Utilizza il bare Raspberry Pi Pico SDK e una toolchain personalizzata GCC 14.3/Newlib 4.5 e supporta core ARM e RISC-V.
Vedi https://arduino-pico.readthedocs.io/en/latest/ insieme agli esempi per informazioni più dettagliate sull'uso.
Leggi la Guida per contribuire per maggiori informazioni su come inviare pull request e portare librerie o sketch su questo core.
Le macchine a stati PIO (SM) dell'RP2040 sono utilizzate per generare senza jitter:
Si prega di non utilizzare la versione di Windows Store dell'applicazione Arduino perché ha problemi nel rilevare le schede Pico collegate. Utilizzare il download "Windows ZIP" o l'eseguibile "Windows" (EXE) direttamente da https://arduino.cc e consentire l'installazione di eventuali driver di dispositivo suggeriti. Altrimenti la scheda Pico potrebbe non essere rilevata. Inoltre, se si prova la beta 2.0 di Arduino, installare prima la versione 1.8 per garantire la presenza dei driver di dispositivo necessari. (Vedere #20 per maggiori dettagli.)
Installare Arduino tramite flatpak (spesso usato dagli 'App Store' in varie distribuzioni Linux) significa che avrà accesso limitato all'host. Questo potrebbe causare il fallimento dei caricamenti con messaggi di errore come il seguente:
Scanning for RP2040 devices
...
No drive to deploy.
Se si verifica questo, è necessario installare Arduino in modo diverso, oppure sovrascrivere la funzione di sandboxing flatpak utilizzando il seguente comando, quindi riavviare Arduino.
flatpak override --user --filesystem=host:ro cc.arduino.IDE2
Apri l'IDE Arduino e vai su File->Preferenze.
Nella finestra di dialogo che appare, inserisci il seguente URL nel campo 'URL aggiuntivi per il Boards Manager':
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json

Premi OK per chiudere la finestra.
Vai su Strumenti->Scheda->Board Manager nell'IDE
Digita "pico" nella casella di ricerca e seleziona "Aggiungi":

Utenti Windows: Prima di installare tramite git su Windows, leggi e segui le istruzioni in
questo link.
Se i percorsi lunghi Win32 non sono abilitati e git non è configurato per usarli, potrebbero verificarsi errori durante il tentativo di clonare i sottomoduli.
Per installare tramite GIT (per le versioni più recenti e migliori) su Linux o Mac:
mkdir -p ~/Arduino/hardware/pico
git clone https://github.com/earlephilhower/arduino-pico.git ~/Arduino/hardware/pico/rp2040
cd ~/Arduino/hardware/pico/rp2040
git submodule update --init --recursive
cd tools
python3 ./get.py
Per Windows, è necessario avere Python già installato e clonare git in un percorso diverso:
mkdir %USERPROFILE%\Documents\Arduino\hardware\pico
git clone https://github.com/earlephilhower/arduino-pico.git %USERPROFILE%\Documents\Arduino\hardware\pico\rp2040
cd %USERPROFILE%\Documents\Arduino\hardware\pico\rp2040
git submodule update --init --recursive
cd tools
python .\get.py
Per caricare il tuo primo sketch, dovrai tenere premuto il pulsante BOOTSEL mentre colleghi il Pico al computer. Quindi premi il pulsante di caricamento e lo sketch dovrebbe essere trasferito e iniziare a funzionare.
Dopo il primo caricamento, questo non dovrebbe essere necessario poiché il core arduino-pico ha il supporto per il reset automatico.
Seleziona una volta la porta seriale appropriata mostrata nel menu Arduino Strumenti->Porta->Porta Seriale (questa impostazione rimarrà e non dovrà essere toccata per caricamenti multipli). Questa selezione consente allo strumento di reset automatico di identificare il dispositivo corretto da resettare.
Quindi premi il pulsante di caricamento e il tuo sketch dovrebbe caricarsi ed eseguirsi.
In alcuni casi il Pico potrebbe bloccarsi e la sua porta USB non risponderà alla richiesta di reset automatico. Se ciò accade, segui la procedura iniziale tenendo premuto il pulsante BOOTSEL mentre colleghi il Pico per entrare nel bootloader ROM.
Il filesystem flash di bordo per il Pico, LittleFS, consente di caricare un'immagine del filesystem dalla directory dello sketch per l'uso da parte dello sketch. Scarica il plugin necessario da
Per installare, segui le istruzioni in
Per informazioni dettagliate sull'uso, controlla la documentazione del repository ESP8266 (ignora le note relative a SPIFFS) disponibile su
Se hai costruito un Raspberry Pi Picoprobe, puoi utilizzare OpenOCD per gestire i caricamenti degli sketch e per il debugging con GDB.
Su Windows un utente amministratore locale dovrebbe essere in grado di accedere automaticamente alla porta Picoprobe, ma su Linux è necessario informare udev del dispositivo e consentire l'accesso agli utenti normali.
Per configurare l'accesso a livello utente ai Picoprobes su Ubuntu (e altri sistemi operativi che usano udev):
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="0004", MODE="660", GROUP-"plugdev"' | sudo tee -a /etc/udev/rules.d/98-PicoProbe.rules
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="000a", MODE="660", GROUP="plugdev"' | sudo tee -a /etc/udev/rules.d/98-PicoProbe.rules
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="2e8a", ATTRS{idProduct}=="000f", MODE="660", GROUP="plugdev"' | sudo tee -a /etc/udev/rules.d/98-PicoProbe.rules
sudo udevadm control --reload
sudo udevadm trigger -w -s usb
La prima riga crea un file di dispositivo in /dev corrispondente al vendor USB e al product ID del Picoprobe, e abilita i permessi globali di lettura+scrittura. La seconda riga fa sì che udev carichi questa nuova regola. La terza riga richiede al kernel di generare eventi 'device change' che faranno eseguire la nostra nuova regola udev.
Se per qualche motivo il file di dispositivo non appare, scollega e ricollega manualmente la connessione USB e ricontrolla. L'output di dmesg può rivelare diagnostica utile se il file di dispositivo rimane assente.
Una volta impostati correttamente i permessi Picoprobe, seleziona la scheda 'Raspberry Pi Pico (Picoprobe)' nel menu Strumenti e carica come di consueto.
Gli strumenti installati includono una versione di OpenOCD (nella directory pqt-openocd) e GDB (nella directory pqt-gcc). Questi possono essere utilizzati per eseguire GDB in una finestra interattiva come documentato nei manuali Pico Getting Started della Raspberry Pi Foundation. Utilizza la riga di comando ./system/openocd/bin/openocd -f ./lib/rp2040/picoprobe_cmsis_dap.tcl o ./system/openocd/bin/openocd -f ./lib/rp2350/picoprobe_cmsis_dap.tcl dalla directory di installazione git.
-Earle F. Philhower, III
[email protected]