少しずつではあるけど、前に進んでいる。
今回は、ソーラーパネルを入力装置にした。
いつものごとく、LEDライトを入射させた。
定常ノイズがあるけど、それも綺麗なノイズに置き換わった。
アイドリングストップの実験でやったように、入力がないときは入力を遮断するのがいいかもしれない。
Dfu-programmerとmocalufaがこんなに便利。
RaspberryPiとArduinoをUSBで接続するだけ。
勝手にPCが認識してくれる。
実験の内容の動画。
ArduinoにA0~A5まで6本の入力があるけど、これ全部使ってもいいかな。
一つのアンプにつき一個のアナログ入力。
計6本。
問題は、Arduinoの処理速度。
追っつくかなあ。
6個の入力を音程ごとにふるいにかけて、MIDI出力。
ダメなら、RaspberryPiに直接、処理させるしかない。
とりあえずのスケッチ。
青字のところはコメントアウト文。
なくていい。
次の実験の準備をしていて、ノイズの入力の大きさを見るために書いておいた。
赤字のところもいらないが、時間がなくて省くのを忘れていた。
ブログ上でプログラムを改変するとコンパイルでエラー吐くといけないのでそのまま載せた。
あと、変数の定義についても、省略できるところがある。
いい加減だが、動くには動いた。
#include <MIDI.h>MIDI_CREATE_DEFAULT_INSTANCE();int notenumber[8]={60, 62, 64, 65, 67, 69, 71, 72};int i;const int analogInPin = A0;const int analogOutPin = 13;int sensorValue = 0;int outputValue = 0;void setup(){MIDI.begin();// Serial.begin(9600);}void loop() {sensorValue = analogRead(analogInPin);outputValue = map(sensorValue, 0, 1023, 0, 63);// Serial.print("sensor = " );// Serial.print(sensorValue);// Serial.print(" output = ");// Serial.println(outputValue);// for(i=0; i<8; i++){MIDI.sendNoteOn(outputValue, 100, 1);delay(50);MIDI.sendNoteOff(outputValue, 100, 1);// }}https://ameblo.jp/math-physics/entry-12728093312.html