※入門ガイドでは「XIAO MIDI シンセサイザー」を使用
参考サイト
回路図
M5Stack用MIDI音源ユニット(SAM2695)
接続図・回路図
ブレッドボード接続ケーブル
GROVE ケーブルと4ピンコネクタにジャンパー線をハンダ
スライドスイッチ
【SEPARATE】側XIAO ESP32C3
機能
・ESP32-C3、最大160MHzで動作する32ビットRISC-Vシングルコアプロセッサ
・Wi-Fiサブシステム: IEEE 802.11b/g/nプロトコルに準拠
・Bluetooth LEサブシステム: Bluetooth 5およびBluetoothメッシュの機能をサポート
・400KBのSRAMと4MBのオンボードフラッシュメモリ
・1xI2C、1xSPI、2xUART、11xGPIO(PWM)、4xADC、1xJTAG
ピン配置図
上記サイトseeed studio から抜粋
ボードマネージャ
追加のボードマネージャーURLの変更
【https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json】
【esp 32】
【バージョン3.2.0】インストール
ボード:"XIAO_ESP32C3"選択
ライブラリー
ライブラリーをダウンロードして
【Seeed_Arduino_MIDIMaster-main】
任意ライブラリー保存場所に貼付け
デモ プログラム
※XIAO MIDI シンセサイザーの入門ガイドのデモプログラムによる演奏
【デモ 1】基本的な MIDI ノート演奏
シリアル通信
SHOW_SERIAL.begin(USB_SERIAL_BAUD_RATE);
synth.begin(COM_SERIAL, MIDI_SERIAL_BAUD_RATE);
USBシリアル通信
MIDI通信の標準ボーレート(速度 31250)
チャンネル 0にグランドピアノの音色(GrandPiano_1)を設定
synth.setInstrument(0,CHANNEL_0,unit_synth_instrument_t::GrandPiano_1);
NOTE_E4 1 秒毎にON OFF
void loop()
{
synth.setNoteOn(CHANNEL_0,NOTE_E4,VELOCITY_DEFAULT);
delay(1000);
synth.setNoteOff(CHANNEL_0,NOTE_E4);
delay(1000);
}
【デモ 2】ボタン制御付きリズムシーケンサー
detectButtonEvents(BUTTON_A_PIN, btnA, shortPressFlag_A, longPressFlag_A, releaseFlag_A);
detectButtonEvents(BUTTON_B_PIN, btnB, shortPressFlag_B, longPressFlag_B, releaseFlag_B);
detectButtonEvents(BUTTON_C_PIN, btnC, shortPressFlag_C, longPressFlag_C, releaseFlag_C);
【ボタンA】リズムシーケンスの開始/停止
【ボタンB】テンポ増加
【ボタンC】テンポ減少
【デモ3】ボタン制御によるマルチトラックコード再生
【ボタンA】2ノートコードシーケンスの開始/停止
【ボタンB】4ノートコードシーケンスの開始/停止
【デモ4】完全なメロディーシーケンスの演奏

.png)
.png)
.png)
.png)
0 件のコメント:
コメントを投稿