2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

「Raspberry Pi Pico W」のC/C++開発環境で最低限必要なモノ(Windows)

Posted at

「Raspberry Pi Pico W」のC/C++開発環境を作る時、ここの"getting started"を見ながら構築していくと思う。
「Chapter 9. Building on other platforms」の「9.2. Building on MS Windows」に、「Windows Pico Installer」が準備され、とても環境構築が楽になったのだが、VS codeを立ち上げるのも、Raspberry Pi Pico SDK から立ち上げなければならなかったり、なんとなく不満。

さらに、「Pico W」だと、「-DPICO_BOARD=pico_w」をつけてcmakeしなければならないのだが、VS Codeでポチっとやりたいのに、そうもいかない。(やり方あるのかもしれないが、、、)
そもそも、「Pico W」は付いているLEDのポートが「Pico」と違うので、最初のLチカでつまずいた。。orz

さらに、「pico-examples」がやたらと大きい。いろんなものがパッケージ化されているからなのだが、じゃあ独自のプロジェクトを作る時はどうすればいいんだよ!って。

そんな、しょうもない不満を持っている方に向けて本記事を書いてみた。
ゴールとしては、「VS Codeを立ち上げてコンパイルできる、最低限(?)必要な組み合わせを提供する」ことである。

インストール

"getting started"の「Chapter 9. Building on other platforms」の「9.2. Building on MS Windows」に従い、「Windows Pico Installer」をインストールする。

サンプルプロジェクト

「pico-examples」の中にある、「pico w」向けLチカコードをコンパイルするプロジェクトを作成してみる。フォルダやファイルは以下のように配置していることを想定。Githubに自分が作ったものを置いておく。

フォルダ構造
pico_w-example-blink/
├─ CMakeLists.txt
├─ pico_sdk_import.cmake
└─ src/
    ├─ CMakeLists.txt
    └─ picow_blink.c
pico-sdk/

CMakeLists

「-DPICO_BOARD=pico_w」やら、「setx PICO_SDK_PATH "....\pico-sdk"」は、CMakeListsでsetを使って定義すれば解決できることが分かった。
ぶっちゃけ、設定で特筆すべきことはこれだけ。

pico_w-example-blink/CMakeLists.txt
cmake_minimum_required(VERSION 3.12)

# ここがポイント
set(PICO_SDK_PATH "C:/Program Files/Raspberry Pi/Pico SDK v1.5.0/pico-sdk")
set(PICO_BOARD "pico_w")

# Pull in SDK (must be before project)
include(pico_sdk_import.cmake)

# set the project name
project(picow_blink)

set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)

# Initialize the SDK
pico_sdk_init()

# Subdirectory
add_subdirectory(src)
pico_w-example-blink/src/CMakeLists.txt
add_executable(picow_blink
        picow_blink.c
)

target_link_libraries(picow_blink
        pico_stdlib # for core functionality
        pico_cyw43_arch_none # we need Wifi to access the GPIO, but we don't need anything else
)

# enable usb output, disable uart output
pico_enable_stdio_usb(picow_blink 1)
pico_enable_stdio_uart(picow_blink 0)

# create map/bin/hex file etc.
pico_add_extra_outputs(picow_blink)

コンパイル

VS CodeのExtensionsで、「CMake」あたりをインストールしてあれば、VS Codeの下のバーがこんな感じになっていると思われる。
image.png
「スパナマーク(?)」を押して、使うコンパイラを設定する。「GCC 10.3.1 arm-none-eabi」を設定する。「Scan for kits」をすれば出てくるはず。
コンパイルするには、その横にある「ギア(?)Build」を押せばOK。

まとめ

CMAKEファイルに、

set(PICO_SDK_PATH "C:/Program Files/Raspberry Pi/Pico SDK v1.5.0/pico-sdk")
set(PICO_BOARD "pico_w")

を書いてあげると、マニュアルに書いてある「Pico - Visual Studio Code」ショートカットをでVScodeを立ち上げなくてもコンパイルできた。
満足

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?