2020年11月30日 星期一

喵~傳輸~小鋼琴~

Arduino連接Processing(傳輸)

  • 滑鼠點擊發出聲音
    • Arduino
      • #define C 523
      • #define D 587
      • #define E 659
      • void setup() {
      •   Serial.begin(9600);
      •   pinMode(2, INPUT_PULLUP);
      •   pinMode(8, OUTPUT);
      •   tone(8,C);
      •   delay(100);
      •   tone(8,D);
      •   delay(100);
      •   noTone(8);
      • }
      • void loop() {
      •   while(Serial.available()>0){
      •     Serial.read();
      •     tone(8,E,100);
      •   }
      • }
    • Processing(範例裡的)
      • import processing.serial.*;//外掛
      • Serial myPort;
      • void setup() 
      • {
      •   size(200, 200);
      •   myPort = new Serial(this,"COM4",9600);
      • }
      • void draw() {}
      • void mousePressed(){
      •   myPort.write("1");
      • }
  • 加上鍵盤,按下數字鍵發出聲音
    • Arduino
      • #define C 523
      • #define D 587
      • #define E 659
      • void setup() {
      •   Serial.begin(9600);
      •   pinMode(2, INPUT_PULLUP);
      •   pinMode(8, OUTPUT);
      •   tone(8,C);
      •   delay(100);
      •   tone(8,D);
      •   delay(100);
      •   noTone(8);
      • }
      • void loop() {
      •   while(Serial.available()>0){
      •     int now=Serial.read();
      •     if(now=='1') tone(8,C,100);
      •     if(now=='2') tone(8,D,100);
      •     if(now=='3') tone(8,E,100);
      •   }
      • }
    • Processing
      • import processing.serial.*;
      • Serial myPort;
      • void setup() 
      • {
      •   size(200, 200);
      •   myPort = new Serial(this,"COM4",9600);
      • }
      • void draw() {}
      • void keyPressed(){
      •   if(key=='1') myPort.write("1");
      •   if(key=='2') myPort.write("2");
      •   if(key=='3') myPort.write("3");
      • }
      • void mousePressed(){
      •   myPort.write("1");
      • }
  • 小鋼琴
    • Arduino
      • #define C 523
      • #define D 587
      • #define E 659
      • #define F 698
      • #define G 784
      • #define A 880
      • #define B 988
      • void setup() {
      •   Serial.begin(9600);
      •   pinMode(2, INPUT_PULLUP);
      •   pinMode(8, OUTPUT);
      •   tone(8,C);
      •   delay(100);
      •   tone(8,D);
      •   delay(100);
      •   noTone(8);
      • }

      • void loop() {
      •   while(Serial.available()>0){
      •     int now=Serial.read();
      •     if(now=='1') tone(8,C);
      •     if(now=='2') tone(8,D);
      •     if(now=='3') tone(8,E);
      •     if(now=='4') tone(8,F);
      •     if(now=='5') tone(8,G);
      •     if(now=='6') tone(8,A);
      •     if(now=='7') tone(8,B);
      •     if(now=='0') noTone(8);//放開要靜音
      •   }
      • }
    • Processing
      • import processing.serial.*;
      • Serial myPort;
      • void setup() 
      • {
      •   size(200, 200);
      •   myPort = new Serial(this,"COM4",9600);
      • }
      • void draw() {}
      • void keyPressed(){
      •   if(key=='1') myPort.write("1");
      •   if(key=='2') myPort.write("2");
      •   if(key=='3') myPort.write("3");
      •   if(key=='4') myPort.write("4");
      •   if(key=='5') myPort.write("5");
      •   if(key=='6') myPort.write("6");
      •   if(key=='7') myPort.write("7");
      • }
      • void keyReleased(){//鍵盤放開要回傳0(靜音)
      •   myPort.write("0");
      • }
      • void mousePressed(){
      •   myPort.write("1");
      • }

                                                                                                                                                                            沒有留言:

                                                                                                                                                                            張貼留言