Downlaod
git clone --recursive git@code.fbi.h-da.de:eingebettete-systeme/raspberry-pi-pico/ws2024.git
oder
git clone git@code.fbi.h-da.de:eingebettete-systeme/raspberry-pi-pico/ws2024.git
git submodule update --init --recursive
Wenn ihr eures eigenes git Benutzten wollt müsst ihr den .git
Ordner löschen.
rm -rf .git
git init
git add .
...
Entwicklungsumgebung
Im Rahmen des Praktikums kommen folgende Entwicklungstools zum Einsatz:
code (Visual Studio Code)
cmake
openocd
minicom
arm-none-eabi-binutils
arm-none-eabi-gcc
arm-none-eabi-gdb
arm-none-eabi-newlib
Für VSCode brauchen wir folgende Erweiterung:
Virtual Box
Ein aktualisiertes OVA Linux-Image für VirtualBox ist auf der Labor-Webseite verfügbar. Dieses Image enthält bereits alle erforderlichen Entwicklungstools vorinstalliert. Bitte beachten Sie, dass beim Einsatz von VirtualBox die notwendigen USB-Geräte entsprechend durchgereicht werden müssen.
Windows WSL
Eine detaillierte Installationsanleitung für WSL finden Sie auf der offiziellen Microsoft-Webseite. Um die Installation zu starten, führen Sie den folgenden Befehl in PowerShell aus:
wsl --install
Um USB-Geräte innerhalb von WSL verwenden zu können, nutzen wir USB/IP. Eine ausführliche Installationsanleitung dazu finden Sie hier. Installieren Sie USB/IP unter Windows mit dem folgenden PowerShell-Befehl:
winget install --exact dorssel.usbipd-win
Die angeschlossenen USB-Geräte können mit dem folgenden Befehl in PowerShell angezeigt werden:
usbipd list
Die Ausgabe des Befehls sollte in etwa folgendermaßen aussehen:
Connected:
BUSID VID:PID DEVICE STATE
10-1 2e8a:000c CMSIS-DAP v2 Interface, USB Serial Device (COM4) Not shared
Persisted:
GUID DEVICE
Bevor ein USB-Gerät an WSL angebunden werden kann, muss das Gerät für die Freigabe mittels des Befehls usbipd bind
vorbereitet werden. Dieser Schritt erfordert Administratorrechte. Nach der Bindung sollte der Status des Geräts auf "Shared" wechseln. Verwenden Sie den folgenden Befehl in PowerShell mit Administratorrechten, um das Gerät freizugeben:
usbipd bind -i 2e8a:000c
Das USB-Gerät kann mit dem folgenden Befehl an WSL angebunden werden. Dieser Schritt muss nach jedem Neustart des Computers wiederholt werden. Eine Automatisierung ist durch den Einsatz des Aufgabenplaners (taskschd.msc
) möglich:
usbipd attach -awi 2e8a:000c
Für die Installation der Tools innerhalb von WSL, beziehen Sie sich bitte auf die Ubuntu-Installationsanleitung.
Für die Entwicklung mit Visual Studio Code verwenden wir die WSL-Erweiterung, die eine nahtlose Integration von VSCode mit dem Windows Subsystem for Linux ermöglicht. Eine detaillierte Anleitung zur Einrichtung und Nutzung finden Sie hier.
In der Konfigurationsdatei .vscode/launch.json
muss der miDebuggerPath
auf gdb-multiarch
angepasst werden, um den entsprechenden Debugger für die Entwicklung zu spezifizieren. Der angepasste Teil der Konfiguration sollte wie folgt aussehen:
{
"configurations": [
{
"miDebuggerPath": "gdb-multiarch",
}
],
}
Ubuntu
sudo apt install make openocd minicom binutils-arm-none-eabi gcc-arm-none-eabi gdb-multiarch libnewlib-arm-none-eabi
Archlinux
btw
pacman -S make openocd minicom arm-none-eabi-binutils arm-none-eabi-gcc arm-none-eabi-gdb arm-none-eabi-newlib