Raspberry Pi Pico SDK (selanjutnya SDK) menyediakan header, perpustakaan, dan sistem pembangunan yang diperlukan untuk menulis program untuk perangkat berbasis mikrokontroler seri-RP seperti Raspberry Pi Pico atau Raspberry Pi Pico 2 dalam C, C ++ atau bahasa perakitan.
SDK dirancang untuk menyediakan API dan lingkungan pemrograman yang akrab baik bagi pengembang C yang tidak tertanam maupun pengembang C tertanam. Sebuah program tunggal berjalan pada perangkat pada satu waktu dan dimulai dengan metode main()
konvensional. Perpustakaan C/C ++ standar didukung bersama dengan perpustakaan/API tingkat C untuk mengakses semua perangkat keras mikrokontroler seri RP termasuk PIO (IO yang dapat diprogram).
Selain itu, SDK menyediakan perpustakaan tingkat yang lebih tinggi untuk menangani timer, sinkronisasi, jaringan Wi-Fi dan Bluetooth, pemrograman USB dan multicore. Perpustakaan ini harus cukup komprehensif sehingga kode aplikasi Anda jarang, jika sama sekali, perlu mengakses register perangkat keras secara langsung. Namun, jika Anda membutuhkan atau lebih suka mengakses register perangkat keras mentah, Anda juga akan menemukan header definisi register yang lengkap dan lengkap di SDK. Tidak perlu mencari alamat di lembar data.
SDK dapat digunakan untuk membangun apa pun dari aplikasi sederhana, lingkungan runtime lengkap seperti Micropython, hingga perangkat lunak tingkat rendah seperti bootrom on-chip mikrokontroler RP itu sendiri.
Tujuan desain untuk seluruh SDK adalah menjadi sederhana tetapi kuat.
Perpustakaan/API tambahan yang belum siap untuk dimasukkan dalam SDK dapat ditemukan di Pico-Extras.
Lihat Memulai dengan Raspberry Pi Pico-Series untuk informasi tentang cara mengatur perangkat keras, IDE/Lingkungan Anda dan cara membangun dan men-debug perangkat lunak untuk Raspberry Pi PICO dan perangkat berbasis mikrokontroler seri RP lainnya.
Lihat Menghubungkan ke Internet dengan Raspberry Pi Pico W untuk mempelajari lebih lanjut tentang menulis aplikasi untuk Raspberry Pi Pico W yang terhubung ke Internet.
Lihat Raspberry Pi Pico-Series C/C ++ SDK untuk mempelajari lebih lanjut tentang pemrograman menggunakan SDK, untuk menjelajahi fitur yang lebih canggih, dan untuk dokumentasi API berbasis PDF lengkap.
Lihat Raspberry Online Pi Pico SDK API Docs untuk dokumentasi API berbasis HTML.
Lihat Pico-Examples misalnya kode yang dapat Anda bangun.
Cabang utama pico-sdk
di GitHub berisi rilis stabil SDK terbaru . Jika Anda membutuhkan atau ingin menguji fitur yang akan datang, Anda dapat mencoba cabang yang dikembangkan sebagai gantinya.
Anda dapat menginstal ekstensi kode Studio Visual Raspberry Pi PICO dalam kode VS.
Instruksi ini sangat singkat, dan hanya berbasis Linux. Untuk langkah-langkah terperinci, instruksi untuk platform lain, dan secara umum, kami sarankan Anda melihat Raspberry Pi Pico-Series C/C ++ SDK
Instal CMake (setidaknya versi 3.13), dan kompiler silang GCC
sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib
Siapkan proyek Anda untuk menunjuk untuk menggunakan Raspberry Pi Pico SDK
Baik dengan mengkloning SDK secara lokal (paling umum):
git clone
Repositori Raspberry Pi Pico SDK ini
Salin pico_sdk_import.cmake dari SDK ke direktori proyek Anda
Atur PICO_SDK_PATH
ke lokasi SDK di lingkungan Anda, atau lewati ( -DPICO_SDK_PATH=
) untuk cmake nanti.
Siapkan CMakeLists.txt
seperti:
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
Atau dengan Raspberry Pi Pico SDK sebagai submodule:
Klon SDK sebagai submodule yang disebut pico-sdk
Siapkan CMakeLists.txt
seperti:
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
Atau dengan unduhan otomatis dari github:
Salin pico_sdk_import.cmake dari SDK ke direktori proyek Anda
Siapkan CMakeLists.txt
seperti:
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
Atau dengan mengkloning SDK secara lokal, tetapi tanpa menyalin pico_sdk_import.cmake
:
git clone
Repositori Raspberry Pi Pico SDK ini
Siapkan CMakeLists.txt
seperti:
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
Tulis Kode Anda (lihat Pico-Apple atau Raspberry Pi Pico-Series C/C ++ Dokumentasi SDK untuk informasi lebih lanjut)
Tentang yang paling sederhana yang dapat Anda lakukan adalah satu file sumber (misalnya hello_world.c)
#include <stdio.h>
#include "pico/stdlib.h"
int main () {
stdio_init_all ();
printf ( "Hello, world!n" );
return 0 ;
}
Dan tambahkan yang berikut ini ke CMakeLists.txt
Anda. TXT:
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)
CATATAN Contoh ini menggunakan UART default untuk stdout ; Jika Anda ingin menggunakan USB default, lihat contoh Hello-USB.
Siapkan direktori build cmake. Misalnya, jika tidak menggunakan IDE:
$ mkdir build
$ cd build
$ cmake ..
Saat membangun papan selain raspberry pi pico, Anda harus lulus -DPICO_BOARD=board_name
cmake -DPICO_BOARD=pico_w ..
perintah cmake
di atas, mis cmake -DPICO_BOARD=pico2 ..
Dewan khusus itu.
Menentukan PICO_BOARD=<booardname>
Mengatur berbagai definisi kompiler (misalnya nomor pin default untuk UART dan perangkat keras lainnya) dan dalam kasus tertentu juga memungkinkan penggunaan pustaka tambahan (misalnya dukungan nirkabel saat membangun untuk PICO_BOARD=pico_w
) yang tidak dapat dibangun tanpa a Papan yang menyediakan fungsionalitas perangkat keras yang diperlukan.
Untuk daftar papan yang ditentukan dalam SDK itu sendiri, lihat di direktori ini yang memiliki header untuk setiap papan bernama.
Buat target Anda dari direktori build yang Anda buat.
$ make hello_world
Anda sekarang memiliki hello_world.elf
untuk dimuat melalui debugger, atau hello_world.uf2
yang dapat diinstal dan dijalankan pada perangkat raspberry pi pico-series Anda melalui drag and drop.
Lihat Raspberry Pi Pico-Series C/C ++ SDK Untuk informasi tentang pengaturan lingkungan build untuk RISC-V di RP2350.