Seeeduino XIAOでCircuitPythonを動作させます(基本編)
[Mu-導入編]
〔Seeeduino XIAOの使い方に戻る〕
前にXBee3の機能でMicroPythonを使ってみましたね。
CircuitPython(サーキットパイソン)は、マイクロコントローラーと呼ばれる小型で安価な
コンピューター向け用で、初心者向けのオープンソースバージョンのPythonでMicroPythonから
派生した物です。
MicroPythonは、SAMD21には対応していないらしくAdafruit社がCircuitPythonで
SAMD21(32ビットマイクロコントローラー)のハードウェアへ移行させ開発を行った物らしい。
《"Seeeduino XIAO"ボードにCircuitPythonをインストール》
@ Seeeduino XIAOのCircuitPythonブートローダーをダウンロードします。
"JAPANESE"を選択して[DOWNLOAD.UF2 NOW]ボタンをクリックします。
"adafruit-circuitpython-seeeduino_xiao-ja-6.0.1.uf2"ファイルを得ました。
(ファイル名は変わると思います、特に 6.0.1 辺り)
A "Seeeduino XIAO"をUSB Type-CケーブルでPCに差し込みます。
B ジャンパー線を使って、素早くRSTピンを2回ショート(ON/OFF)させリセットします。
電源LED(緑色)横のLED(黄色)が点灯してDFUブートローダーモードに入ります。
C エクスプローラーで見てみましょう、
"Seeeduino XIAO"に"Arduino(?)"のフォルダーが有るはずです。
このフォルダーに上記ダウンロードしたファイル
"adafruit-circuitpython-seeeduino_xiao-ja-6.0.1.uf2"をドラッグ&ドロップします。
(又は、コピー&貼り付けを行います)
するとぉ、"Seeeduino XIAO"は自動的に立ち上げ直されます、
LED(黄色)は消えてエクスプローラーも消えます。
D 再びエクスプローラーで見てみましょう、
"Seeeduino XIAO"に"CIRCUITPY(?)"のフォルダーが有るはずです。
CircuitPython用のフォルダーです。
このフォルダーに"main.py"等のパイソンプログラムファイルを書き込むだけです。
E 試しに下記ファイルを"main.py"で書き込んでみましょう。
---------------------------------------------------------------
import time
import board
from digitalio import DigitalInOut, Direction
led = DigitalInOut(board.D13)
led.direction = Direction.OUTPUT
while True:
led.value = True
time.sleep(1)
led.value = False
time.sleep(1)
---------------------------------------------------------------
書き込まれれば自動的に立ち上げ直され動作します。
"CIRCUITPY(?)"のフォルダーはプログラムメモリ領域に作成されるので、
プルグラムが書き込まれていた場合は消えます。
F LED(黄色)が1秒毎に点滅していると思います。
以降はPCにケーブルを接続すると、CircuitPython用のフォルダーで立ち上がります。
このモードで接続中は必ずケーブルを抜く場合、”取り出し”を操作してからケーブルを外しましょう。
でないとぉ、ファイルが壊れます。
壊れた場合は、"[取り出し]"の上項目にある”フォーマット(A)...”を行えば良いでしょう。
上の図でわかる通りファイルの書き込み容量は"47.0KB"までです、注意しましょう。
尚、元のC言語開発モードにする場合は、"Arduino IDE"で何かプログラムを書き込めば元に戻ります。
注意は、CircuitPython用のフォルダーから"Arduino IDE"で最初に書き込む場合のシリアルポートは
"USBシリアルデバイス用COMポート"が使われます、
その後はXIAOのデバイスドライバーをインストールした時のCOMポート
(通常)に変わるようです。
※ CircuitPython APIについてもっと知りたいなら、Adafruit用の公式サイト(英語)を参照ください。
【きむ茶工房ガレージハウス】
Copyright (C) 2006-2021 Shigehiro Kimura All Rights Reserved.