Das Raspberry Pi Pico SDK (deshalb des SDK) bietet die Header, Bibliotheken und Build-Systeme, die erforderlich sind, um Programme für die RP-Serie-Microcontroller-basierten Geräte wie die Raspberry Pi Pico oder Raspberry Pi Pico 2 in C, C ++ oder Assemblersprache zu schreiben.
Das SDK ist so konzipiert, dass es eine API- und Programmierumgebung bietet, die sowohl nicht eingebetteten C-Entwicklern als auch eingebetteten C-Entwicklern gleichermaßen bekannt ist. Ein einzelnes Programm läuft gleichzeitig auf dem Gerät und beginnt mit einer herkömmlichen main()
-Methode. Standard-C/C ++-Bibliotheken werden zusammen mit Bibliotheken/APIs auf C-Ebene unterstützt, um auf alle Hardware des RP-Serien-Mikrocontrollers einschließlich PIO (programmierbarer IO) zuzugreifen.
Darüber hinaus bietet der SDK Bibliotheken auf höherer Ebene für den Umgang mit Timern, Synchronisation, Wi-Fi und Bluetooth-Networking, USB- und Multicore-Programmierung. Diese Bibliotheken sollten so umfassend sein, dass Ihr Anwendungscode selten, wenn überhaupt, direkt zugreifen muss. Wenn Sie jedoch die RAW-Hardware-Register benötigen oder bevorzugen, finden Sie auch vollständige und vollständige Registrierungsdefinitionsheader im SDK. Es müssen keine Adressen im Datenblatt nachschlagen.
Mit dem SDK kann alles von einfachen Anwendungen, vollwertigen Laufzeitumgebungen wie Micropython bis hin zu Software mit niedrigem Niveau wie dem RP-Serie-Mikrocontroller-Bootrom selbst erstellt werden.
Das Designziel für das gesamte SDK ist es, einfach, aber mächtig zu sein.
Zusätzliche Bibliotheken/APIs, die noch nicht zur Aufnahme in das SDK bereit sind, finden Sie in Pico-Extras.
Erste Schritte mit der Raspberry Pi Pico-Serie, um Informationen zum Einrichten Ihrer Hardware, Ihrer IDE/Umgebung und zum Erstellen und Debuggen von Software für die Raspberry Pi Pico und andere Microcontroller-Basis von RP-Serien zu erstellen und zu debuggen.
In der Verbindung mit dem Internet mit Raspberry Pi Pico W finden Sie mehr über das Schreiben von Anwendungen für Ihre Raspberry Pi Pico W, die eine Verbindung zum Internet herstellen.
Siehe C/C ++ SDK von Raspberry Pi Pico-Serie, um mehr über die Programmierung mithilfe des SDK zu erfahren, fortgeschrittenere Funktionen zu erkunden und eine vollständige PDF-basierte API-Dokumentation zu erhalten.
Siehe Online-Raspberry Pi Pico SDK-API-Dokumente für HTML-basierte API-Dokumentation.
Siehe Pico-Examples zum Beispiel Code, den Sie erstellen können.
Der Master-Zweig von pico-sdk
auf GitHub enthält die neueste stabile Veröffentlichung des SDK. Wenn Sie bevorstehende Funktionen benötigen oder testen möchten, können Sie stattdessen die Entwicklungszweig ausprobieren.
Sie können die Raspberry Pi Pico Visual Studio -Code -Erweiterung in VS -Code installieren.
Diese Anweisungen sind extrem knapp und nur Linux-basiert. Ausführliche Schritte, Anweisungen für andere Plattformen und im Allgemeinen empfehlen wir Ihnen, die C/C ++ SDK von Raspberry Pi Pico-Serie zu sehen
Installieren Sie CMake (mindestens Version 3.13) und einen GCC -Cross -Compiler
sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib
Richten Sie Ihr Projekt so ein, dass Sie den Raspberry Pi Pico SDK verwenden können
Entweder durch Klonen des SDK lokal (am häufigsten):
git clone
Dieses Raspberry Pi Pico SDK -Repository
Kopieren Sie pico_sdk_import.cmake aus dem SDK in Ihr Projektverzeichnis
Setzen Sie PICO_SDK_PATH
auf den SDK -Standort in Ihrer Umgebung oder übergeben Sie sie später ( -DPICO_SDK_PATH=
) an CMAKE.
Richten Sie einen CMakeLists.txt
ein.
cmake_minimum_required ( VERSION 3.13...3.27)
# initialize the SDK based on PICO_SDK_PATH
# note: this must happen before project()
include (pico_sdk_import.cmake)
project (my_project)
# initialize the Raspberry Pi Pico SDK
pico_sdk_init()
# rest of your project
Oder mit dem Raspberry Pi Pico SDK als Submodul:
Klonen Sie das SDK als Submodul namens pico-sdk
Richten Sie einen CMakeLists.txt
ein.
cmake_minimum_required ( VERSION 3.13...3.27)
# initialize pico-sdk from submodule
# note: this must happen before project()
include (pico-sdk/pico_sdk_init.cmake)
project (my_project)
# initialize the Raspberry Pi Pico SDK
pico_sdk_init()
# rest of your project
Oder mit automatischem Download von GitHub:
Kopieren Sie pico_sdk_import.cmake aus dem SDK in Ihr Projektverzeichnis
Richten Sie einen CMakeLists.txt
ein.
cmake_minimum_required ( VERSION 3.13)
# initialize pico-sdk from GIT
# (note this can come from environment, CMake cache etc)
set (PICO_SDK_FETCH_FROM_GIT on)
# pico_sdk_import.cmake is a single file copied from this SDK
# note: this must happen before project()
include (pico_sdk_import.cmake)
project (my_project)
# initialize the Raspberry Pi Pico SDK
pico_sdk_init()
# rest of your project
Oder durch Klonen des SDK lokal, ohne jedoch pico_sdk_import.cmake
zu kopieren:
git clone
Dieses Raspberry Pi Pico SDK -Repository
Richten Sie einen CMakeLists.txt
ein.
cmake_minimum_required ( VERSION 3.13)
# initialize the SDK directly
include (/path/to/pico-sdk/pico_sdk_init.cmake)
project (my_project)
# initialize the Raspberry Pi Pico SDK
pico_sdk_init()
# rest of your project
Schreiben Sie Ihren Code (siehe Pico-Examples oder die C/C ++ SDK-Dokumentation von Raspberry Pi Pico-Serie, um weitere Informationen zu erhalten)
Über das einfachste, was Sie tun können, ist eine einzelne Quelldatei (z. B. hello_world.c)
#include <stdio.h>
#include "pico/stdlib.h"
int main () {
stdio_init_all ();
printf ( "Hello, world!n" );
return 0 ;
}
Und fügen Sie Ihren CMakeLists.txt
Folgendes hinzu.
add_executable (hello_world
hello_world.c
)
# Add pico_stdlib library which aggregates commonly used features
target_link_libraries (hello_world pico_stdlib)
# create map/bin/hex/uf2 file in addition to ELF.
pico_add_extra_outputs(hello_world)
Beachten Sie, dass dieses Beispiel die Standard -UART für StDout verwendet. Wenn Sie das Standard-USB-Beispiel verwenden möchten, sehen Sie das Beispiel des Hello-USB.
Richten Sie ein CMake -Build -Verzeichnis ein. Zum Beispiel, wenn Sie keine IDE verwenden:
$ mkdir build
$ cd build
$ cmake ..
Wenn Sie für ein anderes Board als den Raspberry Pi Pico bauen, sollten Sie -DPICO_BOARD=board_name
an den obigen cmake
-Befehl übergeben cmake -DPICO_BOARD=pico_w ..
z cmake -DPICO_BOARD=pico2 ..
dieser bestimmte Vorstand.
Angeben von PICO_BOARD=<booardname>
Legt verschiedene Compiler Defines (z PICO_BOARD=pico_w
Board, das die erforderliche Hardwarefunktionalität bietet.
Eine Liste von Boards, die im SDK selbst definiert sind, schauen Sie in diesem Verzeichnis mit einem Kopfball für jedes benannte Board.
Machen Sie Ihr Ziel aus dem von Ihnen erstellten Build -Verzeichnis.
$ make hello_world
Sie haben jetzt hello_world.elf
über einen Debugger oder hello_world.uf2
, der installiert und auf Ihrem Raspberry Pi Pico-Series-Gerät über Drag & Drop ausgeführt werden kann.
Informationen zum Einrichten einer Build-Umgebung für RISC-V unter RP2350 finden Sie im Raspberry Pi Pico-Serie C/C ++ SDK.