ハードシーケンサ開発。(その3:ライブラリや開発環境選定)

開発環境

前述の通り、Arduino+RP2040環境を利用する。
言語はC言語。

earlephilhower/arduino-pico: Raspberry Pi Pico Arduino core, for all RP2040 boards (github.com)

割り込みも使用可能で結構な速度で動いてくれるので、環境整備されてるものを選ぶことにした。

利用ライブラリ

デバイス認識

adafruit/Adafruit_TinyUSB_Arduino: Arduino support for TinyUSB stack (github.com

サンプルもこれ使ってるし、このままでもMIDIデバイスとして認識されているので
このまま進んでみる。

画面(別途検証が必要)

以下ライブラリを使うことになりそうで、実際に装備して検証が必要。

Arduino上でのコントロールがNGならCircuitPythonからキー呼び出しだけにする。

モノクロ:
github.com/olikraus/u8g2

想定するピン出力の定義

とりあえず調べておいた。

U8G2_SSD1305_128X32_NONAME_1_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ 10, /* data=*/ 11, /* cs=*/ 9, /* dc=*/ 8, /* reset=*/ 12);

カラー(主にAdafruit製品か):
github.com/olikraus/U8g2_

MIDI命令

MIDI Library – Arduino Reference

メッセージ投げるだけだし、特段変わったライブラリ使うこともなかろうと。

割り込み

Raspberry Pi Pico SDK: repeating_timer

Arduino側に隠蔽されてるライブラリを使う。

PicoSDKの高レベルAPIという位置づけ。