0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MicroPython/CircuitPythonAdvent Calendar 2024

Day 20

Raspberry Pi Pico - Python SDK のドキュメントを読む②

Posted at

第2章 REPL

今回は第2章を読んでいく。

ところで REPL のことを「レプル」と読んでいたのですが、このドキュメントによると「リップル」(ripple)が正しいらしい。

2.1 USB経由でのREPL利用

定番のUSB経由でのREPL利用について記載されている。

このドキュメントでは minicom というシリアル通信ソフトウェアで REPL を使います。

今となってはMiroPythonが提供している mpremote を使うほうが楽だろうなという気がする。シリアルポートも自動で探してくれるし。

mpremote のインストールは PyPI から pip でインストールできる。

$ pip install mpremote

REPLに繋ぐには、たいていは mpremote を打つだけで、シリアルポートも自動で探して繋いでくれる。

$ mpremote

何らかの理由で mpremote がシリアルポートを探せないときは明示することもできる。

$ mpremote connect シリアルポート

mpremote でのREPL接続から抜けるには Ctrl-] とする。

2.2 UARTピン経由でのREPL利用

USB経由ではなくて、UART のピンを使って REPL に繋ぐ方法について記載されている。

ダウンロードできるビルド済ファームウェアでは無効になっているので、もし使う必要があるなら、github からソースコードをもってきて、ports/rp2/mpconfigport.h の中の MICROPY_HW_ENABLE_UART_REPL を 1 に変更して、ビルドしなければならない。

ラズパイから使う場合は、ラズパイ側の UART も raspi-congig で有効にしておくことを忘れずに。

やや敷居の高いところではなるが、Pico 自体を USB デバイスとしてプログラミングするのでなければ、ほとんど使うことはないであろう。

2.3 Mac での接続方法

なぜか、Mac だけ特別に接続を説明した章がある。たぶん、シリアルポートの名前が一意に示せないせいだとは思うが、それにしては説明が不足している。どちらにしても mpremote を使う限りはシリアルポートで悩むことはほとんどない。

あと、Mac よりも特殊と思われる Windows の章がないのはなぜだろう。

2.4 Hello World

REPL の手始めとして Hello, Pico を表示する方法が記載されている。

print()関数を使うだけ。

2.5 LED の点灯と消灯

続いて、内蔵 LED の点灯と消灯について。

Pico や Pico 2 で内蔵 LED はピン 25 番に接続されているので、すなおに25番のPinオプジェクトを作れば LED にアクセスできる。

>>> from machine import Pin
>>> led = Pin(25, Pin.OUT)
>>> led.value(1)  # 点灯
>>> led.value(0)  # 消灯

Pico W では LED が無線チップ経由で接続されているので、25番ピンは使えない。なので、このドキュメントではよりPicoシリーズ間で互換性の高い "LED" 文字列の使用を推奨している。

>>> from machine import Pin
>>> led = Pin("LED", Pin.OUT)
>>> led.value(1)  # 点灯
>>> led.value(0)  # 消灯

ちなみに、value() 以外にも on()off() が使える。

>>> from machine import Pin
>>> led = Pin("LED", Pin.OUT)
>>> led.on()  # 点灯
>>> led.off()  # 消灯

ついでに言及しておくと、Pin は予め LED の Pin オブジェクトを持っている。

Pin.board.LED

2.6 次章予告

第3章でプログラミングを扱うことが示されている。

このドキュメントは作成したスクリプトをPicoに転送する方法についてはIDEまかせのようである。初期にはよくあったことだが、スクリプトをPico本体に置いてスタンドアローンで動かすことができないと勘違いされていたことがある。

IDEについては第4章で扱ってはいるのだが、順序を逆にしたほうがよいように思える。ついでに mpremote も扱ってほしい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?