Raspberry Pi Picoが届いたので、とりあえずMicroPythonをインストールして動かしてみました。
こんなリール型パッケージです。何かの都合か、それとも演出でしょうか。

MicroUSBコネクタの左側に小さなLED、その下にBOOTSELボタンがあります。

MicroPythonのファームウェアをダウンロードしてきます。
Getting Startedのページへ行き・・・

Getting Started with MicroPythonのタブを選択します。

Download UF2ファイルのリンクをクリックして、拡張子uf2のファイルを保存します。

MicroUSBケーブルを用意し、「BOOTSELボタンを押しながら」PicoをPCに接続します。

USBメモリとして認識されます。

ダウンロードしたUF2ファイルを、Picoのドライブにドラッグ&ドロップします。

するとファイルがコピーされた後、Picoは自動で再起動され、ドライブは見えなくなります。これでインストール完了です。
推奨のIDEはThonnyです。以前M5StickCで使う記事を書いたことがあります。
起動後、メニューのRun→Select Interpreter…でインタープリタをMicroPython(Raspberry Pi Pico)にしておきます。

あるいは、TeraTermなどのターミナルソフトで接続することができます。シリアルポートの設定は115200bps/8bitです。

現状では、ペーストモードなどのときに時々ハングアップするようなので、どちらかといえばThonnyの利用をお勧めします。
MicroPythonのPicoへの移植は、MicroPythonの開発者であるD.P.Georgeさんが自ら行われたようです。
内蔵のモジュールです。Pico関連の機能はrp2モジュールに入っています。
>>> help('modules')
__main__ framebuf uasyncio/__init__ uio
_boot gc uasyncio/core uos
_onewire machine uasyncio/event urandom
_rp2 math uasyncio/funcs uselect
_thread micropython uasyncio/lock ustruct
_uasyncio onewire uasyncio/stream usys
builtins rp2 ubinascii utime
ds18x20 uarray ucollections
Plus any modules on the filesystem
>>>
>>> help(rp2) objectis of type module Flash -- PIOASMEmit -- const -- asm_pio -- PIOASMError -- _pio_funcs -- {'in_': None, 'y_dec': 4, 'pin': 6, 'iffull': 64, 'gpio': 0, 'not_osre': 7, 'clear': 64, 'rel': at 0x200069d0>, 'wrap': None, 'x_not_y': 5, 'word': None, 'out': None, 'push': None, 'noblock': 1, 'pull': None, 'wrap_target': None, 'x_dec': 2, 'mov': None, 'irq': None, 'set': None, 'y': 2, 'x': 1, 'null': 3, 'pc': 5, 'invert': at 0x200066e0>, 'pins': 0, 'not_x': 1, 'not_y': 3, 'ifempty': 64, 'isr': 6, 'pindirs': 4, 'exec': 8, 'label': None, 'status': 5, 'nop': None, 'osr': 7, 'block': 33, 'reverse': at 0x200066f0>, 'jmp': None, 'wait': None} __name__ -- rp2 StateMachine -- asm_pio_encode -- PIO -- >>>
とりあえずLチカしてみます。使用するGPIOは25番です。

Pico Python SDKのマニュアルの3.8に、PWMを使ってLEDを光らせる例があります。
Thonnyを使う場合は、上のスクリプトをコピーしてThonnyのウインドウのスクリプトエリアに貼り付け、実行ボタン(緑のボタン)をクリックすると実行できます。(ファイルとしてPicoに転送するので、実行前にスクリプトをファイルを保存する必要があります。)
TeraTermを使う場合は、上のスクリプトをコピーし、TeraTermのウインドウでCtrl-Eを入力してからペーストして、Ctrl-Dで抜けると実行されます。
こんな感じで動きます。



コメント