電子工作メモ
Freenove というところのRaspi Pico 用のアルティメットスターター キットを買ったので、少しずつ電子工作の勉強をする。
Picoについて
※TODO:完全ガイドでまとめておく
-
電源
-
pico(RP2040) は 3.3v で動作する。
-
給電方法
- USBに給電 : 自動的に5Vで給電
- VBUSは直結されているので5Vが出る
- VSYSも5Vがでる
- VBUSに給電: 5Vを給電する
- ※USB端子と直結されているので電流がUSBに逆流する可能性があり、PC等を壊す可能性があるのでUSBを使う場合はVSYSを使うこと。
- VSYSに給電: 1.8~5.5Vで給電する(コンバータが内蔵されているため)
- USBを同時に使用するときに注意。USBからも給電されるため、VSYS側の電源に電流が流れるため、VSYS電源を切っておくこと
- VSYSはpico動作用の電圧3.3Vしか生成しないので、VBUSに5Vが出力されないことに注意
- USBに給電 : 自動的に5Vで給電
-
VBUS: USB端子とつながっているので、USB給電の場合に5Vが出る。
-
VSYS: USB端子との間にダイオードが入っており、USBに電流が逆流しないようになっている。
-
3V3 : 3.3V が供給される端子
-
-
機能
- ADC : アナログ信号
- PWM : パルス幅変調信号
- UART: シリアル通信
- SPI : シリアル通信
- I2C : シリアル通信
参照
MicroPython
メモ
まずはMicroPythonで始める。
-
StartHere を読む
- 3種類の言語で試せる
- C: IDEとして Arduino IDE を使う
- Processing
- MicroPython: IDEとして Thony を使う
- 3種類の言語で試せる
-
開発環境構築
-
Thonyインストール
-
「実行」-「インタプリタ設定」
- インタプリタ「MicroPython(Raspberry Pi Pico)」を選ぶ
- ポートは pico を認識しているCOMポートか自動検出を選ぶ
-
特にエラーが出てなければOK
// シェルに以下を記述して動作すればOK print("Hello World!")
-
-
MicroPythonのファームウェアをpicoに書き込む
-
uf2 ファイルをダウンロードする。
bootselボタンを押しながらpicoを起動すると、USBメモリのように見えるので、エクスプローラでuf2ファイルをコピーするだけ。
※参照 -
Thonyでインストール
「実行」-「インタプリタ設定」から"Install or update MicroPython" を起動。
bootselボタンを押しながらpicoを起動する。
Target volume に pico のドライブを指定し、MicroPython variant に "Raspberry Pi・Pico/Pico H" を選択。バージョンは最新を選択。
-
-
実行
- pico の ルートに、"main.py" というファイルを保存すると起動時に実行される。
-
その他
- 74HC595 8ビットシフトレジスタ
- 7セグメントLED
- MicroPython
- 74HC4511 7セグLED用デコーダIC
- フリップフロップ
- 74HC193 同期型 Up-Down カウンター
- IC555
動作確認
00.1_main/main.py
これを pico のトップフォルダにおいておけば、トップフォルダの py ファイルを実行してくれる。
import uos as os
import uerrno as errno
iter = os.ilistdir()
IS_DIR = 0x4000
IS_REGULAR = 0x8000
index = 0
try:
while True:
# トップフォルダのファイルとディレクトリを調べる
entry = next(iter)
filename = entry[0]
file_type = entry[1]
# 自分は無視
if filename == 'main.py':
continue
else:
# ディレクトリは無視
if file_type == IS_DIR:
continue
# ファイルの場合は実行する
else:
exec(open(filename).read(), globals())
# 100回まで実行する
if index == 100:
break
index += 1
except StopIteration:
pass