Pico Windows(Visual Studio Code)開発環境設定(C/C++言語)その2

その2では、サンプルプログラムのビルドと、
自作プログラムのビルドを行ってみます。

サンプルプログラムは、その1のインストール時に設定した、
ファルダ内の "pico-examples" にあります。
 ※私の場合
  "C:\Users\USER\Documents\Pico\pico-examples"

その1から続き、Visual Studio Codeは起動している前提です。
※起動は、Developer Command Prompt for VS 2019 画面から起動します。

1.サンプルフォルダを指定します。
 メニュー「ファイル (F)」→「フォルダを開く (Ctrl+k+Ctrl+O)」
 を選択します。

ビルド対象フォルダの選択1
ビルド対象フォルダの選択1
ビルド対象フォルダの選択2
ビルド対象フォルダの選択2

 表示されたフォルダを開く画面から、
 サンプルファルダ"pico-examples"を選択して、
 「フォルダの選択」をクリックします。

ビルド対象フォルダの選択3
ビルド対象フォルダの選択3

 この時、このフォルダの作成者の信頼確認が表示されますので、
 「はい、作成者を信頼します」をクリックします。

信頼確認画面
信頼確認画面

2.各プロジェクト確認が完了すると、
 コンパイラ(kit)の選択画面、
 "select a kit for ….."が表示され、その中より、
 "GCC 10.2.1 am-none-eabi …."を選択します。

kitの選択1
kitの選択1

 表示されない場合、Visual Studio Codeの一番下の
 青いライン上に、工具のマーク("Click to chage the active kit")
 をクリックして、コンパイラ(kit)の選択画面を表示させることができます。

kitの選択2
kitの選択2

 この部分に、現在選択されている、コンパイラ(kit)名が表示されています。

選択キットの確認
選択キットの確認

3. 青いライン上の 「Build」をクリックし、ビルドします。
 Visual Studio Codeの一番下の
 青いライン上に、歯車のマーク("Build selected target: [all]")
 をクリックします。

ビルド指示
ビルド指示

 ビルドが開始され、出力画面に進行状況が表示されます。
 エラー表示がなく、
  [build] Scanning dependencies of target hello_watchdog
  [build] Consolidate compiler generated dependencies of target hello_watchdog
  [build] [100%] Built target hello_watchdog
  [build] Build finished with exit code 0
 などと表示されればビルドは完了です。

ビルと進行状況表示
ビルと進行状況表示

4.ファイルの確認
 "pico-examples"フォルダ内を確認すると、
"build"フォルダが生成され、その中にビルド済みファイルが
 格納されています。
 ※"build"フォルダ内の"blink"フォルダを確認してみると、
  "blink.uf2"というファイルが生成されています。

ビルド完了後のフォルダ確認1
ビルド完了後のフォルダ確認1
ビルド完了後のフォルダ確認2
ビルド完了後のフォルダ確認2
ビルド完了後のフォルダ確認3
ビルド完了後のフォルダ確認3

これで、ビルドは完了です。

実行確認ですが、サンプルのビルド処理で確認した
"blink"プログラム(Picoの基板にあるLEDを点滅させるもの)
を転送して確認してみます。

1.Picoの基板上にある、BOOTSELボタンを押しながら、
 PCと接続します。
 ※Picoは、ストレージ表示(RPI-RP2(E)など)になっています。

uf2ファイルの転送準備1
uf2ファイルの転送準備1
uf2ファイルの転送準備2
uf2ファイルの転送準備2

2."pico-examples" フォルダ →
 "build" フォルダ → "blink" フォルダ内の
 "blink.uf2" ファイルを、Picoのストレージ(RPI-RP2(E)など)へ
 転送(コピー)します。

uf2ファイルの転送
uf2ファイルの転送

転送が完了すると、ストレージ表示が消え、
Picoの基板上にある、LEDが点滅しはじめます。

LEDの点滅確認
LEDの点滅確認

これで、開発環境、動作確認も完了です。

続いてプログラムを自作してビルドする方法です。

1.フォルダを作成します。
 例として、
  ・保存フォルダ:"C:\Users\USER\Documents\Progm2"
 とします。

2.Make設定ファイル(CMakeLists.txt)を作成し、
 保存フォルダに保存します。

Make設定ファイル(CMakeLists.txt)の作成
Make設定ファイル(CMakeLists.txt)の作成

 サンプルの
 "C:\Users\USER\Documents\Pico\pico-examples"
 より、CMakeListsを"Prog2m"フォルダにコピーして
 プログラム内容に合わせて修正します。

 修正した CMakeLists.txt ファイル例です。

# CMakeの最低Version設定
# Set the mimum required version of CMake
cmake_minimum_required(VERSION 3.12)

# Pico用SDKのInclude指示
# Pull in SDK (must be before project)
include(pico_sdk_import.cmake)

# Project名の指定とC,C++のVersion設定
# Set the project name, the programming language
project(pico_programs C CXX ASM)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_STANDARD 17)

# Pico環境設定
# Initialize the SDK
pico_sdk_init()

# 生成Executable file名と対象Source file名の指定
# Add an executable target to be build from the source files
add_executable(test2 test2.c )

# Library fileのlink指示
# Pull in our pico_stdlib which pulls in commonly used features
target_link_libraries(test2 pico_stdlib)

# Standard I/O (USB Or UART)有効・無効設定
# USB output Enable
#pico_enable_stdio_usb(test2 1)
# UART output disable
#pico_enable_stdio_uart(test2 0)

# Pico転送用file生成指示
# create map/bin/hex file etc.
pico_add_extra_outputs(test2)

# プログラム内容によってCompile時に必要なるOption群指定
# add_compile_options parameter
#add_compile_options(-Wall
#        -Wno-format          # int != int32_t as far as the compiler is concerned because gcc has int32_t as long int
#        -Wno-unused-function # we have some for the docs that aren't called
#        -Wno-maybe-uninitialized
#        )

 ・"test2.c" をビルドして "test.uf2" を生成するものとして
  記述してあります。
  ※各 プログラムで使用する CMakeLists.txt は、
   最低この部分の修正(置換)が必要になります。
 ・CMakeListsでは、その行の#以降がコメント扱いとなります。
  各行の設定説明を記述してみました。
 ・作成したプログラムの内容によっては、オプション指定など
  記述の修正や追加が必要になります。

3.インポート設定ファイル"pico_sdk_import.cmake"を作成します。
 サンプルの
 "C:\Users\USER\Documents\Pico\pico-examples"
 より、"pico_sdk_import.cmake"を"Progm2"フォルダに
 コピーします。
 ※このファイルの内容は基本、変更の必要はありません。

"pico_sdk_import.cmake"の作成
"pico_sdk_import.cmake"の作成

4.Visual Studio Codeを起動します。
 起動は、Developer Command Prompt for VS 2019 画面から起動します。
 メニュー「ファイル (F)」→「フォルダを開く (Ctrl+k+Ctrl+O)」
 を選択します。

Visual Studio Codeの起動
Visual Studio Codの起動

 フォルダを開く画面が表示され、
 1.で作成したフォルダ"C:\Users\USER\Documents\Progm2"を
 選択して、「フォルダの選択」をクリックします。

対象フォルダを開く
対象フォルダを開く

 この時、このフォルダの作成者の信頼確認が表示されますので、
 「はい、作成者を信頼します」をクリックします。

信頼確認画面
信頼確認画面

5.コンパイラ(kit)の選択画面、
 "select a kit for ….."が表示され、その中より、
 "GCC 10.2.1 am-none-eabi …."を選択します。

コンパイラ(kit)の選択画面1
コンパイラ(kit)の選択画面1

 選択画面が表示されない場合、Visual Studio Codeの一番下の
 青いライン上に、工具のマーク("Click to chage the active kit")
 をクリックして、コンパイラ(kit)の選択画面を表示させることができます。
 この部分に、現在選択されている、コンパイラ(kit)名が表示されています。

コンパイラ(kit)の選択画面2
コンパイラ(kit)の選択画面2

6.プログラミングし、保存します。
 メニュー「ファイル (F)」→「新規ファイル (Ctrl+N)」を選択します。

新規ファイルの作成
新規ファイルの作成

 開いたプログラムシート(Untitled-1)にプログラムします。
 ※画像のtest2プロクラムは、pico-examplesフォルダ内、
  blinkフォルダのBlink.cをコピーさせて頂きました。

プログラミング
プログラミング

 プログラミングが完了したら保存します。
 メニュー「ファイル (F)」→「名前を付けて保存 (Ctrl+Shift+S)」を選択し、
 開いた、名前を付けて保存画面に、
  ・保存先:"C:\Users\USER\Documents\Progm2"
  ・ファイル名:"test2"
  ・ファイルの種類:C
 を設定し[保存]ボタンを押し保存します。

作成プログラムファイルの保存
作成プログラムファイルの保存

7.「Build」をクリックし、ビルドします。
 Visual Studio Codeの一番下の
 青いライン上に、歯車のマーク「Build」("Build selected target: [all]")
 をクリックします。
 ※青いライン上に、工具のマーク("Click to chage the active kit")項目に
  "[GCC 10.2.1 am-none-eabi] が選択されていることを確認します。
  選択されていない場合は、クリックしてSelect画面より選択します。

ビルド指示
ビルド指示

 出力窓に、
  [build] Scanning dependencies of target test2
  [build] Consolidate compiler generated dependencies of target test2
  [build] [100%] Built target test2
  [build] Build finished with exit code 0 
 と表示され、ビルドは完了です。

ビルドの進捗結果表示
ビルドの進捗結果表示

 保存フォルダ "C:\Users\USER\Documents\Progm2" 内の、
 "build" フォルダに "test2.uf2" ファイルが生成されています。

ビルド完了後のフォルダ確認
ビルド完了後のフォルダ確認

これで、自作プログラムのビルドは完了です。
あとは、Picoに転送して実行確認します。
※サンプルのblink.cと同様のプログラムではありますが、
 ビルドテストのため点滅タイミングを変更しました。

LEDの点滅確認
LEDの点滅確認

最後に、
インストールされたソフトのアンインストール(削除)方法ですが、
 1.スクリプトソフトでインストールされたソフトの内容は、
  インストール時に指定したフォルダ内の、
   ※私の場合:"C:\Users\USER\Documents\Pico" です。
  "ReadMe.txt" に記載されています。
   ・CMake
   ・Pytho
   ・Visual Studio Code
   ・--- その他ソフト群 ---
  など、これらのソフトは、Windowsの "アプリと機能" から
  アンインストール(削除)します。
 2.インストール時に指定したフォルダを削除します。
   ※私の場合:"C:\Users\USER\Documents\Pico" です。
これでアンインストール(削除)は完了です。