Raspberry Pi Picoの始め方

 Raspberry Pi Pico





Raspberry Pi Picoはイギリスの非営利団体Raspberry Pi Foundationが製造しているマイコンです。2022年7月28日現在、秋月電子で単体600円(税込み)で販売されています。

Raspberry Pi Pico ラズベリーパイピコ: マイコン関連 秋月電子通商-電子部品・ネット通販 (akizukidenshi.com)

無線LAN機能を搭載したRaspberry Pi Pico Wが技適認証され次第販売されるようです。
Bluetoothも搭載されてますが、発売時点では使用できないようです。

昔はArduinoを使ってましたが、C言語の面倒くささや、中華製の故障率が嫌になって、私はPCと接続しないで独立して使う機器はこれ一択で使ってます。
製造が怪しい格安Arduinoより正規品が600円で購入できるのは安心です。

Raspberry Piシリーズは他にも4やzeroなどあり、これらはLinux OSで動作しますが、Raspberry Pi PicoはOSの無いマイコンで、プログラムを直接書き込み動作させます。
プログラム言語はC、C++、MicroPythonが使用できますが、私は複雑なものは作らないので読み書きしやすいMicroPythonを使用してます。

機能は、デジタルIO、アナログ入力、シリアル通信、PWMとテンコ盛りなので単体でも無線通信以外はなんでもできるようです。

MicroPythonでプログラムするには”Thonny”(ソニー)という開発環境を使用します。

Thonny, Python IDE for beginners

右上のダウンロードから使用するOSのファイルをインストールしてください。

次にRaspberry Pi Picoにファームウェアをインストールします。
新品のRaspberry Pi PicoをPCにUSBで接続してThonnyを起動させると、勝手にインストール画面が出ますのでインストールします。


shellに以下の文が出れば使えます。

インストール画面が出ない場合は、下記から設定ファイルをダウンロードしてUSBモードで設定ファイルを書き込んでください。書き込まれるとウィンドウが消えて勝手に再起動します。

Picoの[BOOTSEL]ボタンを押しながら,パソコンにUSBケーブルを接続すると,PicoはBOOTSELモードで起動します。



次に使用するインタプリタを変更します。
ツール→Thonnyオプション→インタプリタの使用するコードを、『MicroPython (Raspberry Pi Pico)』に変更します。



これで書いたプログラムを使えるようになります。




とりあえずLチカ

下記はマイクロ秒入力で1秒毎にLEDを点滅させるプログラムです。

imprt machineimport timeはプログラムで使用するモジュール(API?)の宣言です。
まあ、この機能を使いたいので読み込んでくださいという意味です。
3行目はledという変数にmachine.Pin(25,machine.Pin.OUT)を代入して使わせろという意味です。
わかりやすくledにしましたが、変数なのでaでもtest123でもxでもbakaでもOKです。
その場合は8行目と10行目のledも同じ変数名にしないと動きません。
machine.Pin(25,machine.Pin.OUT)で基板上のLEDを出力に設定します。
5行名のwaitは変数でon時間とoff時間を1か所で変更できるようにしています。
変数を使わずに9行目と11行名の()内に直接数字を入れてもOKです。
8行名のvalue(1)がonで、10行名のvalue(0)がoffです。
これをwhileでループ(電源が切れるかstopを押すまで永遠に)で動作させています。

因みに、sleepで秒、sleep_msでミリ秒、sleep_usでマイクロ秒の入力が可能です。

点滅時間を変えてますが、下記の書き方でもOKです。





アクセス拒否とか接続できなくて動かなくなった場合


上記のようなアクセス拒否が出た場合は、USBを接続し直してください。
また、30番ピンののRUNとGNDを接触させてもリセットできます。

ピン配置図

接続エラーで何をしても復帰できない場合は、USBモードで接続して初期化ファイルを書き込むことで初期化できます。
下記ページの

UF2 fileをクリックしてファイルをダウンロードして書き込めと、picoが再起動します。



youtubeにも作品や使い方を公開していますので、宜しければご覧ください。
ついでにチャンネル登録をして頂けたら嬉しいです。













コメント