그거임마 피에조


int no2 = 0;
int piezoPin = A7; // 피에조 인풋 핀          
int piezoVal; // 피에조 전압값을 담는 변수          
int piezoThreshold = 100; //문턱 기준값... 문턱을 넘어야 처리하도록 할 때...          
long piezoNoteOnTime=0; // long은 int보다 큰 수를 담는 박스 32bit(4byte)          
void setup()          
{Serial.begin(9600);}          
void loop()          
{          
  piezoVal = analogRead(piezoPin); // 피에조 인풋핀으로부터 읽은 값을 변수에 담는다          
  if ( piezoVal > piezoThreshold && piezoNoteOnTime ==0 )// 문턱값을 넘고 노트온 상태가 아닐 경우          
 {          
   piezoVal = (piezoVal/8)-1; // "="표시는 "같다"라는 의미가 아니라 왼쪽에 오른쪽 값을 넣어라. 피에조에서 받은 아날로그값은 0~1023이지만 벨로서티 값은 0~127이므로 나누어 줌          
   usbMIDI.sendNoteOn(60,piezoVal,1); // 60번 노트를 piezoVal 만큼의 벨로서티로 1번 채널로 노트온..           
   piezoNoteOnTime =millis();// 현재 시간          
   Serial.println(piezoVal);// 디버그          
 }          
 if(piezoVal < 1 && piezoNoteOnTime !=0 && millis()-piezoNoteOnTime > (piezoVal/2)+50 )           
 { // 노트오프 처리          
   usbMIDI.sendNoteOff(60,piezoVal,1);          
   piezoNoteOnTime =0;            
      Serial.println(piezoVal);          
 }          
}          

소리임마

int analogPin = A8;     // 볼륨의 가운데와 A8번핀을 연결해라. 양쪽은   ground and +5Vint analogPin1= A4;     // 센성의 4번핀과 A8번핀을 연결해라.int val = 0;   &nb... » 내용보기

틴지 내부소리

#define NOTE_B0  31          #define NOTE_C1  33          #define NOTE_CS1 35  ... » 내용보기

텐시

http://soundartlab.wordpress.com/2011/09/11/diymidiworkshop/ » 내용보기

[beat] 이제...가라

go by cleverdog이제...  가라 produce by Celver.D » 내용보기