記事担当:共立エレショップ
[ハンダ付け必要-非マイコン系]
今回の記事は、ソフト寄りな話になります。

これでファームウェアの書き込みが完了です!
(2)Thonny(ソニー)のインストール
Thonny(ソニー)とは、初心者用のPython IDE(統合開発環境)だそうです!
このThonny(ソニー)を使ってコードを書いたり、パイピコに書き込んだりするんだそうです。


2回目以降は、パイピコをマイクロUSBケーブルでPCにつなぐだけでOKです!
その後、Thonny(ソニー)を立ち上げればパイピコへコードを書き込んでいけるというわけです。
え、え、じゃあ、次は作った基板上のLED(赤・緑・青)を光らせたい!!
・・・・何をどう変えたらいいのかな?
=======================

・・・あれ??緑しか光らない・・・??
(記事:オカポン)
更新予定:毎週木曜日(次回は6月30日です!)
[ハンダ付け必要-非マイコン系]
先週は、デジットキットの★「ラズパイピコ 実験基板 / PICO-BOARD-V1」を作りました!

★「電工女子、デジットキットを作ります!(第6弾:ラズパイピコ 実験基板)★1」
キット自体は無事完成したのですが、実は未だにRaspberry Pi Pico(ラズパイピコ)(※以後、パイピコ)のことも、パイピコで何ができるのか、どうやって使うのかも全く分かっていません。
付け加えるなら、いわゆるプログラム言語的なものもよく分かっていません。
でも、せっかく作ったのだからこの基板を動かしたい!!!
と言う事で、とりあえず目標を「Lチカさせる!」にして頑張ってみたいと思います。

★「電工女子、デジットキットを作ります!(第6弾:ラズパイピコ 実験基板)★1」
キット自体は無事完成したのですが、実は未だにRaspberry Pi Pico(ラズパイピコ)(※以後、パイピコ)のことも、パイピコで何ができるのか、どうやって使うのかも全く分かっていません。
付け加えるなら、いわゆるプログラム言語的なものもよく分かっていません。
でも、せっかく作ったのだからこの基板を動かしたい!!!
と言う事で、とりあえず目標を「Lチカさせる!」にして頑張ってみたいと思います。
今回の記事は、ソフト寄りな話になります。
沢山の人がパイピコの使い方、コードの打ち方をアップしてくださっているので、それを参考に進めていこうと思います!
▼参考にさせて頂いたページ(Qiita)
Raspberry Pi Picoに実際に触れてみた
https://qiita.com/MiXMiX/items/99d0b5fc5e3e78b32ecc
まずは、パイピコのセットアップにチャレンジです!
▼参考にさせて頂いたページ(Qiita)
Raspberry Pi Picoに実際に触れてみた
https://qiita.com/MiXMiX/items/99d0b5fc5e3e78b32ecc
まずは、パイピコのセットアップにチャレンジです!
オカポンの環境は、Windows10です。
(1)ファームウェアの書き込み
パイピコの上にある白いボタンを押しながら、マイクロUSBケーブルを接続します。

セットアップが完了すると、ファイルエクスプローラーが立ち上がりました。
(1)ファームウェアの書き込み
パイピコの上にある白いボタンを押しながら、マイクロUSBケーブルを接続します。

セットアップが完了すると、ファイルエクスプローラーが立ち上がりました。
「RPI-RP2」というファイルが、今繋いだパイピコです。
そのパイピコ「RPI-RP2」を開いてみると、なにやらすでにファイルが入っていますね。
次にページ下部の「Download the MicroPython UF2 file.」をクリックします。(下右側の写真参照)


「Download the MicroPython UF2 file.」をクリックすると、ファイル(rp2-pico-20220618-v1.19.1.uf2)がダウンロードされるので、そのファイルを「RPI-RP2」(パイピコ)に入れます。


「Download the MicroPython UF2 file.」をクリックすると、ファイル(rp2-pico-20220618-v1.19.1.uf2)がダウンロードされるので、そのファイルを「RPI-RP2」(パイピコ)に入れます。
問題なくファイルが書き込まれると「デバイスとドライブ」から「RPI-RP2」がなくなります。

これでファームウェアの書き込みが完了です!
(2)Thonny(ソニー)のインストール
Thonny(ソニー)とは、初心者用のPython IDE(統合開発環境)だそうです!
このThonny(ソニー)を使ってコードを書いたり、パイピコに書き込んだりするんだそうです。
つまりこれが無いと先に進めないので、インストールします。
使用しているOSは「Windows10」なので「Windows」を選びます。下記画面が現れるので、どちらか選びます。
オカポンは「Install for me only」を選びました。
インストール完了すると、右のようなポップアップに変わります。

アプリを起動すると、下記ポップアップが出ます。
言語は「日本語」に変えておきましょう!Let’s go!

右下のバージョンをクリックして「MicroPython(Raspberry Pi Pico)」を選びます。

言語は「日本語」に変えておきましょう!Let’s go!

右下のバージョンをクリックして「MicroPython(Raspberry Pi Pico)」を選びます。

これでひとまず環境設定は完了。
わかりやすいファイル名を付けて保存しましょう。
これでパイピコに保存できました。
2回目以降は、パイピコをマイクロUSBケーブルでPCにつなぐだけでOKです!
その後、Thonny(ソニー)を立ち上げればパイピコへコードを書き込んでいけるというわけです。
が、オカポン改めてパイピコをPCにつないでThonny(ソニー)を立ち上げたら『最新ファームウェアにしてください』と言うメッセージが出てきまして。。。
なので最新ファームウェアをダウンロードしてインストールしてってやってもエラーが出て前に進まなくなってしまいました。
そこで共立内の詳しい人に相談したところ
「挿し込むUSBポートを変えてみたら?」
と。
そんなバカな(笑)と思ってつなぐUSBポートを変えてみると、普通に使えるようになりました...
・・・よくあること、らしいですよ!(゚Д゚;)
さーて、気を取り直してLチカのコードを入れましょう!!
って、何を入れたらわからないので参考にさせて頂いたページのコードをお借りしたいと思います。
「パイピコ Lチカ」で検索すると、似たようなコードが沢山出てくるので、それを試してみても良いと思います!
=======================
ふぉーー!!光った!!
パイピコ上にある小さなLEDがついたり消えたりしていますね!
プレイボタンですぐにコードが実行されるんですね!なんてお手軽。
・・・よくあること、らしいですよ!(゚Д゚;)
さーて、気を取り直してLチカのコードを入れましょう!!
って、何を入れたらわからないので参考にさせて頂いたページのコードをお借りしたいと思います。
「パイピコ Lチカ」で検索すると、似たようなコードが沢山出てくるので、それを試してみても良いと思います!
=======================
import machine
import utime
led = machine.Pin(25, machine.Pin.OUT)
while True:
led.value(1)
utime.sleep(2)
led.value(0)
utime.sleep(2)
=======================
↓
日本語訳にするとこんな感じ。
=======================
日本語訳にするとこんな感じ。
=======================
GPIOを使えるようにするよ(machine)
時間を管理するための命令をするよ(utime)
GPIO 25ピンを出力端子にするよ。名前は「led」ね
この中の命令を無限に繰り返して
LEDを1=ONして!
2秒待機
LEDを0=OFFして!
2秒待機
=======================
コードを打ち込んだりコピペしたら、Thonny(ソニー)ウィンドウの上の方にあるプレイボタン(緑丸に白三角のマーク。ビデオの再生ボタンみたいなの)をクリックしましょう。
すると・・・
ふぉーー!!光った!!
パイピコ上にある小さなLEDがついたり消えたりしていますね!
プレイボタンですぐにコードが実行されるんですね!なんてお手軽。
ちなみに実行しているコードを止めたいときは、プレイボタンの右にあるSTOPボタンをクリックしましょう。
え、え、じゃあ、次は作った基板上のLED(赤・緑・青)を光らせたい!!
・・・・何をどう変えたらいいのかな?
詳しい人に聞いてみたところ、『led = machine.Pin(25, machine.Pin.OUT)』部分の『25』と言う部分を、基板上のLEDのポート番号に変えればいいんだとか。
だからパイピコの上のLEDが光ったんですね。なるほど。
説明書をみていくと、「GP10:LED(赤)」「GP11:LED(緑)」「GP12:LED(青)」が、基板上のLEDのポート、ということが分かりました。
ということは。
『led = machine.Pin(25, machine.Pin.OUT)』の『25』を10~12にすれば基板上のLEDが光るってことなのかな!?
では、試しに青色LEDを光らせてみようと思います!
=======================

光った!!!!
青色が光った!!!
え、じゃあ、今光った青と緑を同時に光らせたい場合は…?
=======================
led = machine.Pin(25, machine.Pin.OUT)
=======================
↓
=======================
=======================
led = machine.Pin(12, machine.Pin.OUT)
=======================
書き換えたらプレイボタンを押して実行!

光った!!!!
青色が光った!!!
え、じゃあ、今光った青と緑を同時に光らせたい場合は…?
=======================
led = machine.Pin(12, machine.Pin.OUT)
=======================
↓
=======================
=======================
led = machine.Pin(12, machine.Pin.OUT)
led = machine.Pin(11, machine.Pin.OUT)
=======================
でいいのかな!?

・・・あれ??緑しか光らない・・・??
なんで~?
ってことで詳しい人に聞いてみたら、そもそもコードの書き方が間違っていたようです。
=======================
led = machine.Pin(12, machine.Pin.OUT)
led = machine.Pin(11, machine.Pin.OUT)
=======================って書くと、『=』の前(ledの部分)が同じになってるので、コードが実行された時『led』に1行目が読み込まれた後2行目に上書きされてしまうんだそうです。
なのでポート番号11の緑しか光らなかったんだそうです。
ということは、『=』の前に違いをつければ良いって事なのかな!?
仮説を立てたら検証です。
早速コードを修正するのですが、せっかくなのでコード自体も「3色同時に2秒光って、2秒後に消える」をループさせる、に変更して再チャレンジです!
まずはLEDの色ごとに名前をつけてあげないといけません。
自分が打ったコードが、実際に目で見えて反応返ってくるのが、たーのーしーいー!!!!
Pythonの勉強をしたらもっといろんなことが出来て、もっともっと楽しいんでしょうね。
今回のLEDもランダムにホワホワ光らせたりとか!出来るんでしょうね!!
早速コードを修正するのですが、せっかくなのでコード自体も「3色同時に2秒光って、2秒後に消える」をループさせる、に変更して再チャレンジです!
まずはLEDの色ごとに名前をつけてあげないといけません。
それぞれ『led_blue』『led_green』『led_red』としましょうか。
名前を付け終わったら、命令文でそれぞれ「青LED光らす」「緑LED光らす」「赤LED光らす」→2秒待つ→「青LED消す」「緑LED消す」「赤LED消す」→2秒待つ、とコードを書いてみます。
・・・すると。

ふぉぉぉぉぉ!!!!
光りました!!!!!
コードは、こんな感じ。
=======================
・・・すると。

ふぉぉぉぉぉ!!!!
光りました!!!!!
コードは、こんな感じ。
=======================
import machine
import utime
led_blue = machine.Pin(12, machine.Pin.OUT)
led_green = machine.Pin(11, machine.Pin.OUT)
led_red = machine.Pin(10, machine.Pin.OUT)
while True:
led_blue.value(1)
led_green.value(1)
led_red.value(1)
utime.sleep(2)
led_blue.value(0)
led_green.value(0)
led_red.value(0)
utime.sleep(2)
=======================
Pythonの勉強をしたらもっといろんなことが出来て、もっともっと楽しいんでしょうね。
今回のLEDもランダムにホワホワ光らせたりとか!出来るんでしょうね!!
ちなみに、この実験基板には「NeoPixel制御出力」や「Groveインターフェイス」なども載っているので、Lチカだけじゃなくもっと色んな事が出来るようです!
みなさんも是非、チャレンジしてみてくださいね♪
みなさんも是非、チャレンジしてみてくださいね♪
(記事:オカポン)
更新予定:毎週木曜日(次回は6月30日です!)