Das Ziel ist die Hardware eines Pico-Eval-Board mit den C++ Beispielen zu Testen.
Die Infos zu dem Board und die Beispiel Dateien für Python und C++ sind unter Resources hier zu finden.
https://www.waveshare.com/wiki/Pico-Eval-Board
Das Pico-Eval-Board ist eine umfassende Evaluierungslösung für den Raspberry Pi Pico.
Mit einem 3,5-Zoll-65K-LCD-Display und diversen hilfreichen Onboard-Komponenten ermöglicht dieses Evaluation-Board das
Ausprobieren fast aller On-Chip-Peripheriegeräte des RP2040, ohne dass eine umständliche Verkabelung erforderlich ist.
Es ist die ideale Wahl für Benutzer, die schnell mit dem Raspberry Pi Pico und dem RP2040-Chip beginnen möchten.
Ab hier der Weg um auf dem Raspberry Pi die C++ Dateien aus dem Paket Pico-Eval-Board-Code Übersetzen zu können.
Step 1: Zuerst wird der Ist Zustand auf dem Raspberry Pi abgefragt.
uname -a
sudo apt install lshw
sudo lshw --> product: Raspberry Pi Model B Plus Rev 1.2
less /etc/os-release --> PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
Step 2: Der Raspberry Pi wird auf den Aktuellen Software Stand gebracht, dann die unbedingt benötigten Pakete Installiert.
sudo apt update
sudo apt upgrade
sudo reboot
uname -a
sudo apt install cmake
sudo apt install gcc-arm-none-eabi
Step 3: Zum Übersetzen aller C++ Dateien wird das "pico-sdk" benötigt und von github geclont.
mkdir pico_new
cd pico_new/
git clone https://github.com/raspberrypi/pico-sdk
cd /home/pi/pico_new/pico-sdk
git submodule update --init
Step 4: Der einfachste Test nur die grüne OnBoard LED des Pico soll blinken.
mkdir pico --> Nun mit Filezilla die Datei Pico-Eval-Board-Code.zip nach pico kopieren.
cd pico
unzip Pico-Eval-Board-Code.zip
Step 5: Der Hersteller des Boards liefert Steuerdateien mit, diese müssen auf den Pfad des "pico-sdk" angepasst werden.
cd /home/pi/pico/c/01_GPIO/
mv pico_sdk_import.cmake old_pico_sdk_import.cmake
cd /home/pi/pico_new/pico-sdk/external/
cp pico_sdk_import.cmake /home/pi/pico/c/01_GPIO/
cd /home/pi/pico/c/01_GPIO/
nano pico_sdk_import.cmake --> set(PICO_SDK_PATH "${PICO_SDK_PATH}" CACHE PATH "/home/pi/pico_new/pico-sdk/")
nano CMakeLists.txt --> set(PICO_SDK_PATH "/home/pi/pico_new/pico-sdk/")
cd /home/pi/pico/c/01_GPIO/build
cmake ..
make
ls -la --> -rw-r--r-- 1 pi pi 18944 Nov 18 20:37 GPIO.uf2
Alles anzeigen
Step 6: Nur wenn die Bootsel Taste auf dem Pico beim Verbinden des Pico mit dem Raspberry gedrückt ist kommt die Verbindung zustande.
lsusb --> Bus 001 Device 005: ID 2e8a:0003 # Der Pico
df -Th --> /dev/sda1 vfat 128M 8,0K 128M 1% /media/pi/RPI-RP2 # Der Pico
mount --> /dev/sda1 on /media/pi/RPI-RP2 type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
ls -la /media/pi/RPI-RP2
-r--r--r-- 1 pi pi 241 Sep 5 2008 INDEX.HTM
-r--r--r-- 1 pi pi 62 Sep 5 2008 INFO_UF2.TXT
Step 7: Die fertige *.uf2 Datei wird auf den Pico kopiert, danach ist ein Zugriff auf den Pico nicht mehr möglich: Datei oder Verzeichnis nicht gefunden