2021年3月6日土曜日

今更ながらRaspberry Pi Picoを触ってみる(環境構築)

Raspberry Pi は前から触っていたのですが、Raspberry Pi Picoが出たというニュースを見た時も、どうせZeroみたいに小さくなっただけでしょと思い込んであまり興味がありませんでした。

よくよく調べてみると、これまでのRaspberry Piとは異なりベアメタルで使用することが前提ということが分かり、マイコン好きとしては断然興味が湧いてきました。



 ということでまずは開発環境の構築をしてみます。


Windows10での環境構築手順

今回は公式のドキュメントを参考にしていきます。

Getting started with Raspberry Pi Pico

公式のドキュメントはRaspberry Pi でRaspberry Pi Picoの開発を行うことが前提になっているようですが、私はWindows環境で開発環境を構築するため、公式ドキュメントの9章にいきなり飛びます。

まずは以下のツールを用意します。

ARM GCC compiler
CMake
Build Tools for Visual Studio 2019
Python 3.9
Git

ARM GCC compiler

まずはARM GCC compilerです。この記事を書いている段階では以下のファイルがWindows向けの最新でしたのでダウンロードしてインストーラを起動します。
gcc-arm-none-eabi-10-2020-q4-major-win32.exe

デフォルトの設定のままインストールします。
最後に「Add path to environment variable」にチェックを付けて環境変数にパスを追加しておきます。
その他はチェックを付けていなくてもOKです。


CMake

次にCMakeをインストールします。公式のドキュメントを見るとCMake 3.20のRCバージョンにはバグがあるとのことですので、3.19をインストールします。
私の環境はWindowsの64bit環境ですので、cmake-3.19.6-win64-x64.msiをダウンロードしてインストーラを起動します。

途中でPathを追加するか聞かれます。デフォルトでは一番上の追加しない選択肢が選択されていますが、all users または current user に追加するようにします。

上記以外はデフォルトでOKです。

Build Tools for Visual Studio 2019

次はBuild Tools for Visual Studio 2019 です。

上のリンク先を開いて、「Visual Studio 2019のツール」と記載されているところを展開すると「Buiild Tools for Visual Studio 2019」がありますので、ダウンロードします。



ダウンロードしたらインストーラを起動してインストールします。

起動すると何をインストールしたいか聞かれますので、上図のように「C++ Build Tools」にチェックを入れてインストールします。

インストールが終わると再起動を促されるので再起動します。

Python 3.9

次に Python 3.9 をインストールします。

今回はWindows64bit版の python-3.9.2-amd64.exe をインストールしました。

基本はデフォルトですが、最後に下図のような画面になりますので、「Disable path length limit」を選択しておきます。


Git

最後は Git です。

これも基本はデフォルトでOKです。マニュアルにはデフォルトエディターを選択する画面が出たときはエディタを選んでねという記載がありましたが、私の場合には特に表示されませんでした。

以上で必要なツールのインストールは終わりです。


サンプルプログラムとSDKのダウンロード・ビルド

次にサンプルプログラムをダウンロードしてみます。

コマンドプロンプトで適当なフォルダに入って、以下を実行します。
以下で作られるpico-sdkフォルダがSDKが格納されるフォルダになります。

git clone -b master https://github.com/raspberrypi/pico-sdk.git
cd pico-sdk
git submodule update --init
cd ..
git clone -b master https://github.com/raspberrypi/pico-examples.git 

Hello Worldをコマンドプロンプトでビルドしてみます。

Windowsキーを押してスタートメニューを開き、Visual Studio 2019→Developer Command Prompt を開きます。

Command Promptが開くので先ほどのサンプルプログラムをダウンロードしたフォルダに移動して、以下を実行します。

setx PICO_SDK_PATH "..\..\pico-sdk"

うまくいくと「成功:指定した値は保存されました。」と表示されるはずです。これで環境変数が設定されます。

うまくいったらいったんコマンドプロンプトのウィンドウを閉じてもう一度Developer Command Promptを開きます。

先ほどgit clone を実行したフォルダに入って以下を実行します。

cd pico-examples
mkdir build
cd build
cmake -G "NMake Makefiles" ..
nmake 

それなりに時間がかかります。

ビルドが完了すると、pico-examples\build\hello_worldのserialとusbの中に.elf, .bin, .uf2 などのファイルが作成されているはずです。

Raspberry Pi Picoへの書き込み

早速ビルドしたサンプルファイルをRaspberry Pi Picoに書き込んでみます。書き込み手順は以下の通りです。

1. Raspberry Pi Picoの基板上のBOOTSELスイッチを押しっぱなしでPCにUSB接続する
2. Raspberry Pi PicoがUSBマスストレージとしてPCから認識される
3. USBマスストレージとして認識されたRaspberry Pi Picoに.uf2ファイルをコピーする
4. Raspberry Pi Picoが再起動してプログラムが実行される


Raspberry Pi Picoを2の手順まで実行すると上図のようにマスストレージデバイスとして認識されており、2つのファイルが入っています。ここに pico-samples\build\hello_world\usb に作成されたhello_usb.uf2 をコピーしてきます。

コピーするとマスストレージデバイスとして認識されていたRaspberry Pi Picoが消えます。その代わりにUSBシリアルデバイスとして認識されます。

ターミナルソフトでこのシリアルデバイスを確認してみます。今回はTeratermを使用しました。


こんな感じで1秒間隔で「Hello, world!」が出力されていることが確認できると思います。

以上でサンプルプログラムの確認ができました。

Visual Studio Code でビルドできるようにする

統合開発環境である Visual Studio Code でビルドできるようにします。あらかじめ Visual Studio Codeをダウンロードしておきます。

 Download Visual Studio Code 

ダウンロードしてインストールしたら以下の方法でVisual Studio Codeを開きます。
 1. Windowsキーを押してスタートメニューから Visual Studio 2019 → Developer Command Prompt を選択してコマンドプロンプトのウィンドウを開く
 2. プロンプトで 「code」と入力してエンターを押す

上記の方法ではなく、直接スタートメニューやデスクトップアイコンなどからVisual Studio Code を立ち上げる方法もありますが、環境変数が設定されていないのでこの方法で立ち上げているようです。ちょっとめんどくさいですが、とりあえず公式のマニュアルに従います。

CMake Toolsの拡張機能がインストールされていないので、左のツールバーから拡張機能のアイコンを選択します。


検索するところが出てきますので、「CMake Tools」と入力しCMake Toolsを探して「Install」を選択してCMake Toolsをインストールします。

インストールしたらCMake Toolsの設定をします。

CMake Toolsの歯車アイコンを押して「Extension Settings」を選択します。



設定画面が出るので、スクロールして「CMake: Environment」を探します。
「Add Item」を押して Item: PICO_SDK_PATH, Values: ..\..\pico-sdk を追加します。

また、その下にある「CMake: Generator」のテキストボックス内に「NMake Makefiles」を入力します。



これで準備ができましたので、サンプルプログラムを開いてビルドしてみます。

まずは「File」→「Open Folder...」を選択し、pico-examplesのフォルダを選択します。

フォルダを開いた後、右下に「プロジェクト 'pico-examples'を構築しますか?」というメッセージが表示されるので、「はい」を選択します。


ウィンドウの上の方に「pico-examplesのキットを選択してください」と表示されますので、「GCC-for-arm-none-eabi」を選択します。


ウィンドウ下の「ビルド」ボタンをクリックするとビルドが始まります。

以上でVisual Studio Codeでビルドする環境が整いました。

とりあえず動く環境ができたっぽい

とりあえずWindows環境でRaspberry Pi Picoで Hello Worldするまでの道のりを公式ドキュメントに従ってやってみました。
公式ドキュメントも割と丁寧に書かれていてマイコンで一番大変といわれる開発環境づくりは割と楽にできた印象でした。

0 件のコメント:

コメントを投稿