【電子工作】Raspberry Pi Pico(ラズパイピコ)で遊んでみる(#01 環境構築、Lチカ)
どうもこんにちは、
自作ロボットを作った時に、モータードライバー用基盤としてRaspberry Pi Pico(ラズパイピコ)を使っていますが、
基盤がちょうど余っていたので、Raspberry Pi Picoを使って何か電子工作をしてみたいと思います。
とりあえず、今回は定番のLチカをやってみようと思います。
目次
Raspberry Pi Pico(ラズパイピコ)
Raspberry Pi Pico(ラズパイピコ)は、以下のように非常に小さく、低価格なマイコンボードです。
マイコンは、RP2040(ARM Cortex-M0+ マイコン (@133MHz))、2MBの高速なFlashメモリーを搭載しています。
Pythonで動かすことが出来ます。

以下、公式ショップサイトからの引用です。
Raspberry Pi財団より、ハイ コスト パフォーマンスで使い易い、シンプルな32bitマイコン ボードが登場!
Raspberry Pi Picoは、Raspberry Pi財団が新たに開発したマイコン 「RP2040(ARM Cortex-M0+ デュアル コア @ 133MHz)」を搭載し、 Pythonで動かせるマイコン ボードです。
学習・ホビー用途はもちろん、組込み用途などへの応用も考慮して設計されています。
Raspberry Pi Pico(ラズパイピコ)セットアップ
MicroPython用ファームウェアをラズパイピコにインストール
ラズパイピコは、Pythonでプログラミングしていきます。
以下サイトから、MicroPython用のファームウェアをダウンロードします。
Download the correct MicroPython UF2 file for your board:のRaspberry Pi Picoをクリックし、uf2ファイルをダウンロードします。

ラズパイピコの「BOOTSEL」ボタンを押しながらUSBケーブルをPCに接続します。
すると、ラズパイピコは、BOOTSELモードとして起動します。
このモードでは、PC上からラズパイピコのフォルダを見ることができます。
先ほどダウンロードしたuf2ファイルをRPI-RP2フォルダ内にドラッグしてコピーします。

コピーが終わると、勝手にBOOTSELモードは終了するようです。
一旦USBを抜いておきます。
これで、MicroPython用ファームウェアをラズパイピコにインストールできました。
開発環境Thonny(トニー)をPCにインストール
Pythonの開発環境Thonny(トニー)をインストールします。
以下のサイトから、インストーラーをダウンロードしPCにインストールします。
ダウンロードしたインストーラーを起動します。
手順に従って、インストールします。

以下の画面では、Language:日本語、Initial settings:Standardにして、Let’s go!を押します。

Thonnyが起動したら、右下のThonnyのPythonと書かれた部分をクリックします。

MicroPython(Raspberry Pi Pico)を選択、
ポートは、自分のPCが認識しているポートを選択しOKを押します。

次に表示メニューから「ファイル」にチェックを入れます。これで左側メニューにラズパイピコに保存しているファイルが見れるようになります。

これでプログラムを書く準備が整いました。
簡単なPythonコードを書いてみます。
|
1 2 3 4 5 6 7 8 |
from machine import Pin import utime led = machine.Pin("LED", machine.Pin.OUT) led.value(1) utime.sleep(3) led.value(0) |
基盤上のLEDを3秒間点灯、消灯するプログラムです。
プログラムを書いたら、保存ボタンを押します。

どこに保存しますか?画面になるので、Raspberry Pi Picoを選択します。

今回は、testLED.pyという名前をつけて保存しました。

プログラムを実行してみます。
上のメニューにある実行アイコンをクリックしましょう。

これでプログラムが実行されます。基盤上のLEDが点灯したら成功です。
※なお、ファイル名を
またシェルの部分には、printで表示させた文字列を出すこともできます。

外部LEDを点灯させる
次に、外部LEDを点灯させるプログラムを組んでみました。
配線
配線は、ピン21(GP16)を出力ピンにして、LEDのアノード(+)(※長い方)につなぎます。直接つなぐと、過電流が流れて壊れる可能性があるので、間に200オームの抵抗をつなぎました。
あとはピン23(GND)をLEDのカソード(-)(※短い方)につなぎます。
ラズパイピコの配線図は以下に掲載されています。
Raspberry-Pi-Pico
プログラム
今回は、ボタンを押すごとに、点灯モードが消灯→点灯→点滅に切り替わるプログラムを組んでみました。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
from machine import Pin from time import sleep_ms import rp2 led = Pin(16, Pin.OUT) led_mode = 0 #mode 0:off, 1:on, 2:blinking while True: if rp2.bootsel_button() == 1: led_mode+=1 print(led_mode) if led_mode>2: led_mode=0 sleep_ms(300) # mode judge if led_mode == 0: print("led off") led.off() elif led_mode == 1: print("led on") led.on() elif led_mode == 2: print("led blinking") led.on() sleep_ms(100) led.off() sleep_ms(100) |
5行目の設定で、GPIO16を出力ピンに設定しています。
11行目〜16行目で、ラズパイピコ上のBOOTSELボタンを検知して、led_modeを切り替える処理です。
19行目〜29行目で、led_modeの値に応じて、LED消灯、点灯、点滅処理を実行します。
最後に
今回はラズパイピコの環境構築と簡単なLチカプログラムを組んでみました。
他にも色々遊べそうなので、また何か作ったら記事を書こうと思います。
それでは!
スポンサーリンク








