CircuitPythonとは?
CircuitPythonは、Adafruit社が開発した初心者向けのプログラミング言語です。マイクロコントローラー(マイコン)を、Pythonの文法で手軽に動かせるのが最大の特長です。
世界中で広く使われているPythonをベースにしているため、シンプルなコードで電子工作やハードウェアの操作ができます。
初心者に優しい3つの理由
- USBドライブとして認識 - マイコンを接続するだけでファイルが見える
- ドラッグ&ドロップで書き込み - 複雑なツールは不要
- 豊富なライブラリ - センサーやLEDを簡単に制御
参考: CircuitPythonとは?初心者向けマイクロコントローラープログラミングガイド
MicroPythonとの違い
CircuitPythonはMicroPythonから派生したものです。どちらもマイコンでPythonを動かせますが、目的が少し異なります。
| CircuitPython | MicroPython | |
|---|---|---|
| 設計思想 | 初心者向け・簡便さ重視 | 柔軟性・性能重視 |
| 対応ボード | 約600種類(厳選) | 非常に多数 |
| ライブラリ | Adafruit公式・統一 | コミュニティ主導 |
| USB機能 | USBドライブ自動認識 | 手動設定が必要 |
| 向いている人 | 初心者・教育用途 | 上級者・高度な制御 |
参考: CircuitPython vs MicroPython 初心者向け徹底比較ガイド
CircuitPythonでできること
1. LEDの制御
最も基本的な「Lチカ」(LEDを点滅させる)も、わずか数行で実現できます。
import time
import board
import digitalio
led = digitalio.DigitalInOut(board.LED)
led.direction = digitalio.Direction.OUTPUT
while True:
led.value = True # LED点灯
time.sleep(1)
led.value = False # LED消灯
time.sleep(1)参考: CircuitPython 10行プログラミング - Lチカ
2. センサーの読み取り
温度センサー、距離センサー、加速度センサーなど、様々なセンサーを簡単に使えます。
Adafruitのライブラリを使えば、複雑な計算は不要です。
3. LEDパネルの制御
RP2040用CircuitPythonにはrgbmatrixライブラリが組み込まれており、カラフルなLEDパネルも手軽にプログラミングできます。
参考: CircuitPythonでLEDパネルプログラミング
ライブラリの使い方
CircuitPythonの強みは、豊富な公式ライブラリです。センサーやディスプレイ、モーターなど、あらゆるハードウェアに対応しています。
ライブラリのインストール方法
- Adafruit公式サイトからライブラリバンドルをダウンロード
- 必要なライブラリファイル(.py または .mpy)を見つける
CIRCUITPYドライブのlibフォルダにコピー- コードで
importして使用
ポイント: ライブラリは使う分だけコピーしましょう。メモリ容量に限りがあるため、全部入れる必要はありません。
参考: CircuitPythonのライブラリ - STEAM Tokyo
開発の流れ
- マイコンをPCに接続 - USBドライブとして
CIRCUITPYが表示される - code.pyを編集 - テキストエディタで開いてコードを書く
- 保存 - ファイルを保存すると自動的に実行される
- デバッグ - シリアルモニターでエラーを確認
Arduino IDEとの比較
CircuitPythonはコンパイル不要。コードを保存するだけで即座に動作します。開発サイクルが速く、試行錯誤がしやすいのが特徴です。
学習リソース
- CircuitPython入門ガイド - しんすーブログ
- CircuitPythonの便利なコードサンプル集
- CircuitPython 10行プログラミング
- CircuitPythonをつかってみた - HomeMadeGarbage
まとめ
CircuitPythonは、初心者が電子工作を始めるのに最適な環境です。
- 面倒なセットアップ不要
- Pythonの知識がそのまま使える
- 豊富なライブラリで何でもできる
- 活発なコミュニティとドキュメント
まずは簡単なLチカから始めて、センサーやディスプレイに挑戦してみましょう!