2016年1月4日 星期一

第七組期末demo_banaba piano_0260350 喻婉晴






processing:


import processing.serial.*;
import ddf.minim.*;
char val='Z';
Minim minim;
AudioPlayer pianoA, pianoB, pianoC, pianoD, pianoE, pianoF ,pianoG;
Serial myPort;
void setup()
{
    String portName = Serial.list()[0];
  myPort = new Serial(this, "COM3", 9600);
  minim = new Minim(this);
  pianoA=minim.loadFile("C.MP3");
  pianoB=minim.loadFile("D.MP3");
  pianoC=minim.loadFile("E.MP3");
  pianoD=minim.loadFile("F.MP3");
  pianoE=minim.loadFile("G.MP3");
  pianoF=minim.loadFile("A.MP3");
  pianoG=minim.loadFile("B.MP3");
 }
  
void draw()
{
  if ( myPort.available() > 0) {  // If data is available,
    val = myPort.readChar();         // read it and store it in val
  } else {
    val = 'Z';
  }
  if(val=='C'){pianoA.rewind();pianoA.play();}
  if(val=='D'){pianoB.rewind();pianoB.play();}
  if(val=='E'){pianoC.rewind();pianoC.play();}
  if(val=='F'){pianoD.rewind();pianoD.play();}
  if(val=='G'){pianoE.rewind();pianoE.play();}
  if(val=='A'){pianoF.rewind();pianoF.play();}
  if(val=='B'){pianoG.rewind();pianoG.play();}


}

Arduino:

#include <CapacitiveSensor.h>



CapacitiveSensor   cs_4_2 = CapacitiveSensor(4,2);        // 10M resistor between pins 4 & 2, pin 2 is sensor pin, add a wire and or foil if desired
CapacitiveSensor   cs_4_6 = CapacitiveSensor(4,6);        // 10M resistor between pins 4 & 6, pin 6 is sensor pin, add a wire and or foil
CapacitiveSensor   cs_4_8 = CapacitiveSensor(4,8);        // 10M resistor between pins 4 & 8, pin 8 is sensor pin, add a wire and or foil
CapacitiveSensor   cs_4_9 = CapacitiveSensor(4,9); 
CapacitiveSensor   cs_13_10 = CapacitiveSensor(13,10); 
CapacitiveSensor   cs_13_11 = CapacitiveSensor(13,11); 
CapacitiveSensor   cs_13_12 = CapacitiveSensor(13,12); 


int push=0;
long total1old=100;
void setup()                    
{
   cs_4_2.set_CS_AutocaL_Millis(0xFFFFFFFF);     // turn off autocalibrate on channel 1 - just as an example
   Serial.begin(9600);
}

void loop()                    
{
    long start = millis();
    long total1 =  cs_4_2.capacitiveSensor(30);
    long total2 =  cs_4_6.capacitiveSensor(30);
    long total3 =  cs_4_8.capacitiveSensor(30);
    long total4 =  cs_4_9.capacitiveSensor(30);
    long total5 =  cs_13_10.capacitiveSensor(30);
    long total6 =  cs_13_11.capacitiveSensor(30);
    long total7 =  cs_13_12.capacitiveSensor(30);

  if(total1>3000) Serial.print("C");
  if(total2>3000) Serial.print("D");
  if(total3>3000) Serial.print("E");
  if(total4>3000) Serial.print("F");
 if(total5>3000) Serial.print("G");
  if(total6>3000) Serial.print("A");
   if(total7>3000) Serial.print("B");
}



沒有留言:

張貼留言